连接查询详解
来源:互联网 发布:1024邀请码淘宝怎么搜 编辑:程序博客网 时间:2024/06/11 16:35
连接查询:
以一个共同的字段,求两张表当中符合条件的并集。 通过共同字段把这两张表连接起来。
常用的连接:
内连接:根据表中的共同字段进行匹配
外连接分两种:左外连接、右外链接。
1内连接 语法:
select 字段 from 表1 inner join 表2 on 表1.字段=表2.字段
2 内连接:根据表中的共同字段进行匹配
create table student(
sid int(4) primary key auto_increment,
name varchar(50)
);
mysql> insert into student values(1,'张三'),(2,'mk'),(3,'jack'),(4,'tom');
创建年级表:grade
create table grade(
id int(4) primary key auto_increment,
score varchar(20),
sid int(4)
);
mysql> insert into grade (score,sid) values ('1231',3),('1231',4),('1231',5),('1231',6);
查询有的成绩的人的信息.
mysql> select student.*,grade.* from student,grade where student.sid=grade.sid;
或:
或:
mysql> select student.*,grade.* from student inner join grade on student.sid=grade.sid;
或:
mysql> select student.*,grade.* from student join grade on student.sid=grade.sid;
使用表别名,简写SQL语句
mysql> select s.*,g.* from student as s inner join grade as g on s.sid=g.sid;
3 外连接:现实某数据表的全部记录和另外表中符合连接条件的记录。
左连接: select 字段 from a表 left join b表 on 连接条件
a表是主表,都显示。
b表从表
主表内容全都有,从表内没有的现实null。
mysql> select * from student as s left join grade as g on s.sid=g.sid;
右连接:
select 字段 from a表 right join b表 on 条件
a表是从表,都显示。
b表主表
select * from student as s right join grade as g on s.sid=g.sid;
grade表为主表,全部记录显示出来,student为从表。不匹配的地方以NULL显示
右连接,可以多表连接
注意:有连接多表连接 是 前两个表连接后 成为从表 ,在和第三个表连接。
本文出自 “xinsz08の平行时空” 博客,请务必保留此出处http://xinsz08.blog.51cto.com/10565212/1915911
- 连接查询详解
- 连接查询详解
- SQL连接查询详解
- oracle连接查询详解
- Oracle连接查询详解
- 连接查询详解
- 连接查询详解
- SQL各种连接查询详解
- SQL各种连接查询详解
- SQL各种连接查询详解
- SQL各种连接查询详解
- mysql 查询 表连接详解
- SQL各种连接查询详解
- SQL各种连接查询详解(左连接、右连接..)
- SQL各种连接查询详解(左连接、右连接..)
- SQL各种连接查询详解(左连接、右连接..)
- SQL各种连接查询详解(左连接、右连接..)
- SQL各种连接查询详解(左连接、右连接..)
- Mysql多实例运行
- Mysql Cluster7.4.6安装与配置
- MySIAM与Innodb引擎
- mysql报错序号对应的错误
- mysql日常维护
- 连接查询详解
- Construct a Matrix FZU
- raid5故障回放
- Vim的使用提高篇
- 生产环境下搭建 nagios+nconf+cacti+npc的整合
- 使用函数封装-公司自动化处理文件备份管理脚本
- web安全的学习路线
- 域名过期提前通知脚本
- linux 系统被入侵之后你要做什么