Aam*_*ega 4 sql natural-join cartesian-product cross-join
我正在研究自然连接,我很困惑,在用SQL编写时,我怎么知道我应该使用交叉产品还是自然连接.
CROSS JOIN从两个表创建所有可能的行对,无论它们是否匹配.您不对交叉产品使用任何连接条件,因为对于任何配对,条件始终为真.
使用的一个例子CROSS JOIN:你有ShoeColors和ShoeSizes表,你想知道有多少种可能的组合.SELECT COUNT(*) FROM ShoeColors CROSS JOIN ShoeSizes;
NATURAL JOIN就像一个INNER JOIN,但它假设条件是相等的,并适用于两个表中出现的所有列名称.我从不使用NATURAL JOIN,因为我不能认为只是因为列具有相同的名称,它们应该是相关的.这需要一个非常严格的列命名约定,实际上没有真正的项目有这样的规则.
| 归档时间: |
|
| 查看次数: |
12204 次 |
| 最近记录: |