我有两个表,我想在SQL中连接它们以检索结果
我是SQL的新手。我有两张桌子: 表1我有两个表,我想在SQL中连接它们以检索结果,sql,Sql,我是SQL的新手。我有两张桌子: 表1 Property_ID Agent_ID 1200 1111 1201 1112 1202 1112 表2 Agent_ID Agent_Email Agent_Address 1112 abc@gm.com 124 something estate 我有物业id。我想要的是: SELECT * FROM Table_1 WHERE Proper
Property_ID Agent_ID
1200 1111
1201 1112
1202 1112
表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]'
但我想在一个查询中完成它。如何实现这一点?使用连接,类似以下内容:
SELECT *
FROM TABLE_1 T1
JOIN TABLE_2 T2 ON T2.Agent_ID = T1.Agent_ID
WHERE T1.Property_Id = ...
如果要进一步筛选结果,请在WHERE子句后添加“AND[condition]”。你可以在那里找到很多关于连接的信息,这里有一个地方展示了一些很好的介绍示例:
选择*从表1 t1
在t1.Agent\u ID=t2.Agent\u ID
其中t1.Property_ID='[我在变量中有这个ID]'和t2.Agent_ID='[我们从第一次查询中获得的代理ID]'
您两次提到了Table1 Table1,这是强制性的吗?不,不是。这就是查询中引用表的方式。您可以完全排除它,或者使用类似T1的缩写。如果查询中有两个或多个表共享一个列,请确保使用表名作为列名的前缀。
SELECT Table1.PropertyID,
Table2.AgentID
FROM Table1 Table1
INNER JOIN Table2 Table2
ON Table1.AgentID = Table2.AgentID
WHERE Table1.PropertyID = '...'