【发布时间】:2012-11-01 11:49:22
【问题描述】:
我想知道为什么需要将(主键=外键)放在 where 语句中。表格通过这些标准相互关联。那么,为什么每个人都在 where 子句或 *join*s 中使用它?
我的意思是代替
选择 a.name, b.name 从 a,b 其中 (a.fk = b.pk) AND (something = "something")
如果有人说
... 选择 a.name, b.name 从 a,b 哪里(某事=“某事”)
够了吗?
【问题讨论】:
-
它不会自动发生,毕竟你可能并不真正想要它。
-
并非所有表都通过键关联,有时您会有一个复合键,或者您可能想要加入外键以外的其他内容。
-
为什么没有人要求澄清而不是给出“减号”!
-
表连在一起的时候就没有必要了。对?放在where子句里绝对没用
-
通常,您会使用
join。据我所知,这个from a,b已经过时了。无论如何,它的默认值是没有约束的内部连接(笛卡尔积 - 所有nxm组合),而不是按键的神奇连接。
标签: sql database primary-key where-clause