什么是内连接、外连接、交叉连接、笛卡尔积

时间回到 2 02 3 年,我的朋友在学习 SQL 时,对 join 方法有点困惑。
他说,债券主要分为三种类型:外部债券、内部债券和交叉债券。

上周,他问我外连接有三种类型,左外连接、右外连接和全外连接。
左外连接是指显示左表的数据,如果右表不匹配则显示NULL。
正确的外部链接则恰恰相反。
将显示右表中的所有数据,如果左表不匹配,则显示 NULL。
然而,不幸的是,MySQL 不支持完全外部联接。

朋友说,内联就是在两个表中找到相同的字段,然后返回字段匹配的记录。

交叉连接,他说,就是两个表的笛卡尔积,以CROSSJOIN为代表。
但如果表中的字段太多,交叉链接的效率就会很低。

全连接,朋友又问了,MySQL不支持,但是可以用UNION和UNIONALL来模拟。
他说使用UNION和UNIONALL的时候要注意。
UNION 将删除重复项,但 UNIONALL 不会。

我只是想到了别的事。
他说,如果链接表很大,记得优化SQL语句,提高效率。
但那是另一个故事了。
忘记它,你明白了。

sql语句中join ,left join ,right join有什么区别

左连接:左边的表完整,右边的表匹配。
右连接:右表完整,左表匹配。
内连接:仅匹配。
外连接:全左和全右。
交叉连接:任何时候,任何时候。

sql中的左联接和右链接有什么区别

SQLServer2 000...那个时代的回忆...内部线路,外部连接...相当复杂。

内线...我只给匹配的...不匹配的?忽略它即可。
比如...我2 02 2 年在北京做了一个项目...两张表...一张员工表...一张工资表...用内线...只能看到已经发工资的员工...而不是只看到没有发工资的员工。

外连...不一样...无与伦比的也给你保留...左边的外面...左边桌子上的所有东西...右边的桌子不匹配...我也给你带来了...我有一个朋友...2 02 2 年上海...与客户订购...客户桌子上有一个老客户...没有订单...使用左外钩...客户尚未订购...它客户仍然可见...另一种方式是...所有东西都在桌子右侧...左侧表中还给出了不匹配的内容...例如...检查订单和产品...有一个尚未制造的产品表...使用正确的外连接...您还可以看到该未制造的产品。

完全联接...这意味着两个表...匹配...不匹配...给你所有...例如...我想看到所有客户...所有订单...匹配与否...我2 02 2 年在广州做过一次...这意味着完全联接...结果集非常大...你已经表明了双方的不一致。

使用哪一个...取决于情况...内连接...只需匹配图表...外连接...应该是全...左还是右...哪张表重要...全连接...最完整...但是数据很大...
数据库...不同...使用SQL时可能有0SW差异...文档...需要时间...