查询#1:
SELECT
destination_content.content,
destination_content.state
FROM destination_content
给我
State Content
AZ Lorem
AZ Ipsum
AZ Dolor
NC Sit
NY Blabla
查询#2:
SELECT
properties.state,
properties.name
FROM properties
WHERE properties.active = 1
给我
State Content
AZ Ritz Carlton
AZ Hotel Malala
NY Gilt NY
我想将查询#1与查询#2结合起来,以便:
我得到了查询#1的结果,但是它被过滤了以便
的结果NC Sit
不会出现。
最终结果应为:
State Content
AZ Lorem
AZ Ipsum
AZ Dolor
NY Blabla
没有出现,因为北卡罗来纳州没有活动房产。所以我想按活动属性状态进行过滤。
组合这些查询的最简洁方法是什么?
修改
也许我的大脑没有工作ATM,但我试过INNER JOIN properties ON ( destination_content.state = properties.state )
,但这给了我比我需要更多的行结果。最初我回来230因为有230个内容片段,但在加入后它变成了大约1000个。我忘记了什么?
答案 0 :(得分:1)
您应该加入表格:
SELECT dc.content, dc.state
FROM destination_content dc
INNER JOIN properties p ON ( dc.state = p.state AND dc.content = p.content )
WHERE p.active = 1
如果每个表中都有主键(ID),那么连接表应该更容易BTW。