mysql常用连接查询
连接数据库PDO
$user = "root"; //数据库连接账号 $pass = "root"; //数据库连接密码 $dbname = "test"; //数据库名 try {
$db = new PDO("mysql:host=localhost;dbname=$dbname", $user, $pass); //连接数据库
echo "数据库连接成功";
} catch (PDOException $e) {
echo "数据库连接失败";
}
表一:user表
id | name 姓名 | sex 性别 | age 年龄 |
---|---|---|---|
1 | fan | 0 | 18 |
2 | jack | 0 | 25 |
3 | xiaoming | 0 | 33 |
4 | laowang | 1 | 50 |
5 | julia | 0 | 22 |
6 | pangda | 1 |
53 |
表二:user_Identity表
id | identity_number 身份号码 |
---|---|
1 | 111 |
2 | 222 |
3 | 3 |
4 | 444 |
5 | 555 |
6 | 666 |
1、内连接(Inner Join)
$sql = "select * from user as a inner join user_identity as b on a.id = b.identity_number"; //内连接user和user_identity表,as 起别名:user代表a,user_identity代表b //$sql = "select * from user inner join user_identity on user.id = user_identity.id"; // 效果同上 //$sql = "select a.id,a.name,b.identity_number from user as a inner join user_identity as b on a.id = b.id"; //select 和 from 之间的意思是 - 输出a表的id字段,输出a表的name字段,输出b表的identity_number; $data = $db->query($sql)->fetchAll(PDO::FETCH_ASSOC); print_r ($data);
输出:
Array
(
[0] => Array
(
[id] => 3
[name] => xiaoming
[sex] => 0
[age] => 33
[identity_number] => 3
) )
2、左连接 (Left Join)
$sql = "select * from user as a left join user_identity as b on a.id = b.identity_number"; $data = $db->query($sql)->fetchAll(PDO::FETCH_ASSOC); print_r($data);
输出:
Array
(
[0] => Array
(
[id] => null
[name] => fan
[sex] => 0
[age] => 18
[identity_number] => null
) [1] => Array
(
[id] => null
[name] => jack
[sex] => 0
[age] => 25
[identity_number] => null
) [2] => Array
(
[id] => 3
[name] => xiaoming
[sex] => 0
[age] => 33
[identity_number] => 3
) [3] => Array
(
[id] => null
[name] => laowang
[sex] => 1
[age] => 50
[identity_number] => null
) [4] => Array
(
[id] => null
[name] => julia
[sex] => 0
[age] => 22
[identity_number] => null
) [5] => Array
(
[id] => null
[name] => pangda
[sex] => 1
[age] => 53
[identity_number] => null
) )
3、右连接 (Right Join)
$sql = "select * from user as a right join user_identity as b on a.id = b.identity_number"; $data = $db->query($sql)->fetchAll(PDO::FETCH_ASSOC); print_r($data);
输出:
Array
(
[0] => Array
(
[id] => 1
[name] => null
[sex] => null
[age] => null
[identity_number] => 111
) [1] => Array
(
[id] => 2
[name] => null
[sex] => null
[age] => null
[identity_number] => 222
) [2] => Array
(
[id] => 3
[name] => xiaoming
[sex] => 0
[age] => 33
[identity_number] => 3
) [3] => Array
(
[id] => 4
[name] => null
[sex] => null
[age] => null
[identity_number] => 444
) [4] => Array
(
[id] => 5
[name] => null
[sex] => null
[age] => null
[identity_number] => 555
) [5] => Array
(
[id] => 6
[name] => null
[sex] => null
[age] => null
[identity_number] => 666
) )
4、其他连接-省略。。。
mysql常用连接查询的更多相关文章
- MySql的连接查询
类似于oracle的连接查询,mysql连接查询也有左外连接.右外连接.内连接查询.但是,不同的是没有直接 的全外连接查询. 这里介绍MySql的连接查询: 这里已两张表为例:STUDENT 表 和 ...
- MySQL查询优化:连接查询排序limit
MySQL查询优化:连接查询排序limit(join.order by.limit语句) 2013-02-27 个评论 收藏 我要投稿 MySQL查询优化:连接查询排序 ...
- MySQL常用的查询命令
MySQL常用的查询命令 author: headsen chen 2017-10-19 10:15:25 个人原创.转载请注明作者,出处,否则依法追究法律责任 1,查询现在的时间:mysql& ...
- mysql常用快速查询修改操作
mysql常用快速查询修改操作 一.查找并修改非innodb引擎为innodb引擎 # 通用操作 mysql> select concat('alter table ',table_schema ...
- 【杂记】mysql 左右连接查询中的NULL的数据筛选问题,查询NULL设置默认值,DATE_FORMAT函数
MySQL左右连接查询中的NULL的数据筛选问题 xpression 为 Null,则 IsNull 将返回 True:否则 IsNull 将返回 False. 如果 expression 由多个变量 ...
- Mysql表连接查询
原文地址: https://www.cnblogs.com/qiuqiuqiu/p/6442791.html 1.内联接(典型的联接运算,使用像 = 或 <> 之类的比较运算符).包括相等 ...
- MySQL常见连接查询
在实际应用中,由于不同的业务需求,一般的select查询语句无法满足要求.所以就需要了解一些MySQL的高级查询方式 内连接 inner join 典型的连接查询,有相等(=)连接和不等(<&g ...
- 【mysql】连接查询
- MySQL之连接查询
主要是多表查询和连接查询
随机推荐
- tp5 (layui )excel导入
1.composer安装PHPExcel 下载安装composer 其次 cmd切换到项目根目录 运行命令:composer require phpoffice/phpexcel 注意: 1.运行可能 ...
- Java 学习 UUID 与 时间格式化、时间操作
UUID : UUID 是 通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分.其目的,是让分 ...
- ubuntu搭建php开发环境记录
这两天自己在阿里云上面买了一个ecs,系统选的是ubuntu16.04,第一件事就是先搭环境,这次准备使用lamp组合. Apache安装 首先安装apache服务器,ubuntu下面使用apt-ge ...
- C#与Excel的交互示例
//这里加添加一个Excel对象的包装器.就是添加一个引用 using System; using System.Drawing; using System.Collections; using Sy ...
- leetcode78
本题是回溯法的基本应用,深度优先遍历,使用递归实现. class Solution { public: ]; vector<vector<int>> R; int n; //t ...
- django毕设之路1.0
Django的核心理念 1.更python化 2.DRY:(don't repeat yourself),不做重复的工作 3.松耦合和灵活 4.快速开发 2.Django的MTV概 M:Model模型 ...
- Rabbitmq(5) 路由模式
设置路由键 发送者 package com.aynu.bootamqp.service; import com.aynu.bootamqp.commons.utils.Amqp; import com ...
- PropTypes验证器
PropTypes用于对类型的验证,从而更加容易捕获bug.在React v15.5之前,它内置React.PropTypes函数帮助解决,之后放弃支持,采用prop-types库定义. import ...
- i386 x86_64 armv7 arm64
arm7: Used in the oldest iOS 7-supporting devices arm7s: As used in iPhone 5 and 5C arm64: For the 6 ...
- 用java语言构建一个网络服务器,实现客户端和服务器之间通信,实现客户端拥有独立线程,互不干扰
服务器: 1.与客户端的交流手段多是I/O流的方式 2.对接的方式是Socket套接字,套接字通过IP地址和端口号来建立连接 3.(曾经十分影响理解的点)服务器发出的输出流的所有信息都会成为客户端的输 ...