[英]Inner join two tables
不,并非总是如此。 但这是我们通常要做的,这是规范模式。 (SQL INNER JOIN
操作不需要谓词是相等比较。并且不必在PRIMARY KEY和/或FOREIGN KEY列上进行比较。)
同样,这是规范模式,但这不是INNER JOIN
的要求。 如果目的是对主键/外键关系执行联接,那么可以,谓词将是对键的所有组件列进行相等比较。
答案是否定的 。
JOIN
操作的ON
子句可以包含任何计算结果为1或0或不包含任何表达式。
例如,您可以编写此代码。
FROM t1
JOIN t2 ON INSTR(t1.name, t2.surname) > 0 AND t2.nationality = 'US'
甚至更可怕的事情。
外键有助于强制执行约束。 并且,在有利的情况下,关联的索引会加速查询。 但是JOIN子句完全不限于使用键和索引。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.