MySQL多表操作

1、联合查询
联合查询:union,是指将多个查询结果合并成一个结果显示,联合查询是针对查询结果的合并(多条select 语句合并)

基本语法
select 查询 [决定字段名称]
union 查询选项
select 查询

联合查询要求
1)联合查询时结果联合显示
2)多个联合查询的字段结果数据一致
3)联合查询的字段来源于第一个查询语句的字段
4)查询选项:all(保留所有记录),distinct
注意:联合查询不要求字段类型一致,只对数量要求一致,而且字段于第一条查询语句相关
联合查询排序:针对联合查询的结果进行排序
order by本身对内部结果进行排序,union的优先级高于order by,所以 order by 默认是对union结果进行排序
如果想要对单独select 的结果进行排序,需要两个步骤
   将需要排序的select指令进行括号包裹(括号里使用order by)
   order by 必须配合limit才能生效(limit是一个足够大的数据即可)
2、连接查询
连接查询有三种类型:1)交叉连接 2)内连接 3)外连接

1)交叉连接:cross join,不需要连接条件的连接
交叉连接产生的结果就是笛卡尔积
左表的每一条记录都会与右表的所有记录连接并保留
select * from t1 cross join t2(t1,t2)

2)内连接:[inner] join,将两张表根据指定的条件连接起来,严格连接
基本语法:右表 join 右表 on 连接条件
内连接匹配规则就是必须保证左表和右表同时存储连接关系,这样的数据才会保留

3)外连接:outer join,是一种不严格的连接方式
外连接分为两种
左外连接(左连接):left join
右外连接(右连接):right join
外连接有主表和从表之分
左连接:左表为主表
右连接:右表为主表
外连接是将主表的记录去匹配从表的记录
匹配成功保留
匹配失败(全表):也保留,只是从表字段位置空

4、自然连接
自然连接:natural join,是一种自动寻找连接条件的连接查询
自然连接不是一种特殊的连接方式,而是一种自动匹配条件的连接
自然连接包含自然内连接和自然外连接
    自然内连接:natural join 
    自然外连接:natural left/right join
自然连接匹配模式:自动寻找想通过字段名作为连接条件(字段名相同)
5、using关键字:连接查询时如果是同名字段作为连接条件,using可以代替on出现(比on更好) 5、using关键字:连接查询时如果是同名字段作为连接条件,using可以代替on出现(比on更好)

原文地址:http://www.cnblogs.com/lil4257/p/16901311.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性