我有两个表,我想在SQL中连接它们以检索结果

我有两个表,我想在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

我是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 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 = '...'