【发布时间】:2016-11-01 10:17:15
【问题描述】:
我想从一个表中获取 id,这取决于另一个表中具有相同 id 的多行。只有当另一个表中的所有行都与每个行请求匹配时,才必须返回 ID。我的表结构看起来像这样。
tbl_one ------------------ id 公司名称 ------------------ 1 公司一 2 公司二 tbl_two ----------------------------------------- id类型内容 ----------------------------------------- 1 邮政编码 54321 1 类汽车经销商 2 邮政编码 54321 2类超市我已经尝试过 INNER JOIN,但无论我如何尝试,我似乎都无法使其工作。
选择 tbl_one.id FROM tbl_one 内部联接 tbl_two 在 tbl_two.id = tbl_one.id 在哪里 ( 类型 = '邮政编码' AND 内容 = '54321' ) 和 ( 类型 = '类别' AND 内容 = '汽车经销商' )谁能回答我的查询有什么问题? 谢谢你:)
【问题讨论】:
-
中间的AND应该是OR——类型不能同时是zipcode和category,与content类似。
-
问题是“type”-column 有不止一行具有匹配的 id,因此其中可以同时包含“zipcode”和“category”值。因为我只想在两行都为真时返回 id,所以我需要使用 AND 而不是 OR。