我是SQL的新手。我有两张桌子:
TABLE_1
Property_ID Agent_ID
1200 1111
1201 1112
1202 1112
TABLE_2
Agent_ID Agent_Email Agent_Address
1112 abc@gm.com 124 something estate
我有属性ID。我想要的是:
SELECT *
FROM Table_1
WHERE Property_ID = '[I have this id in a variable]'
然后:
SELECT *
FROM Table_2
WHERE Agent_ID = '[Agent Id we get from first query]'
但我想在一个查询中完成它。我怎样才能做到这一点?
答案 0 :(得分:2)
使用联接,如下所示:
SELECT *
FROM TABLE_1 T1
JOIN TABLE_2 T2 ON T2.Agent_ID = T1.Agent_ID
WHERE T1.Property_Id = ...
如果要进一步过滤结果,请在WHERE子句后添加“AND [condition]”。你可以在那里找到很多关于JOIN的信息,这里有一个地方展示了一些很好的介绍例子:
答案 1 :(得分:1)
SELECT Table1.PropertyID,
Table2.AgentID
FROM Table1 Table1
INNER JOIN Table2 Table2
ON Table1.AgentID = Table2.AgentID
WHERE Table1.PropertyID = '...'
答案 2 :(得分:0)
选择*
来自Table_1 t1
在t1.Agent_ID = t2.Agent_ID上加入Table_2 t2
其中t1.Property_ID ='[我在变量中有这个id]'和t2.Agent_ID ='[我们从第一次查询获得的代理商ID]'