大家好,又见面了,我是你们的朋友全栈君。
1. 自然连接(*natural join)*
自然连接不用指定连接列,也不能使用ON语句,它默认比较两张表里相同的列,
显示结果如下:
2. 内连接(inner join) 和自然连接区别之处在于内连接可以自定义两张表的不同列字段。 内连接有两种形式:显式和隐式。 例:以下语句执行结果相同。
①隐式的内连接,没有INNER JOIN,形成的中间表为两个表的笛卡尔积。
namecodecodecode
② 显示的内连接,一般称为内连接,有INNER JOIN,形成的中间表为两个表经过ON条件过滤后的笛卡尔积。
namecodecodecode
3.外连接(outer join) ①左外连接(left outer join):返回指定左表的全部行+右表对应的行,如果左表中在右表中没有与其相匹配的行,则在查询结果集中显示为空值。 例:namecodecodecode 查询结果如下:
②右外连接(right outer join):与左外连接类似,是左外连接的反向连接。
namecodecodecode
②全外连接(full outer join):把左右两表进行自然连接,左表在右表没有的显示NULL,右表在左表没有的显示NULL。(MYSQL不支持全外连接,适用于Oracle和DB2。)
在MySQL中,可通过求左外连接与右外连接的合集来实现全外连接。 例:
namecode codecodenamecode codecode
4.交叉连接(cross join):相当与笛卡尔积,左表和右表组合。 SELECT student.,score. FROM student CROSS JOIN score ON score.=student.;
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/178803.html原文链接:https://javaforall.cn
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.mushiming.com/mjsbk/10669.html