本文摘自PHP中文网,作者(*-*)浩,侵删。
数据库的四种连接方式分别是:1、inner join内连接;2、outer join外连接;3、cross join交叉连接;4、natural join自然连接。
内连接
内连接 ---拼接查询结果 内部有联系,使用内连接 格式: [inner] join ----inner可省
结果: 从左表中取出每一条记录,去右表中与所有的记录进行匹配; 匹配必须是某个条件是左表中与右表中相同,才会保留结果,否则不保留;
基本语法: 左表 [inner] join 右表 on 左表.字段 = 右表.字段;
注意事项:
1、on 表示连接条件;条件字段代表相同的业务含义 (如 stu.cid 和 cla.id) 学生stu表中的班级cid 和 班级cla表中的id
2、内连接可以没有连接条件,没有on之后的内容, 这时候系统会保留所有结果(笛卡尔集)
3、内连接可以使用where 代替 on 通常不用where,因为where没有on效率高 on指匹配到第一条成功的就结束,其他不匹配; 若没有,不进行匹配 而where会一直匹配,进行判断
4、通常使用字段别名 表别名 在查询数据的时候,不同表有同名字段, 这时候需要加上表名才能区分, 而若表名太长,使用表别名 若不想使用默认的字段名 可以通过[as] 设置字段别名 。
外连接
外连接 --以某一张表为基表 进行相关查询 outer join
结果:以某张表为主,取出里面的所有记录, 然后每条与另外一张表进行连接, 不管能不能匹配上条件,最终都会保留, 能匹配,正确保留; 不能匹配其他表的字段都置空null
相关阅读 >>
更多相关阅读请进入《数据库》频道 >>

数据库系统概念 第6版
本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。