在Select中组合两个表(SQL Server 2008)

前端之家收集整理的这篇文章主要介绍了在Select中组合两个表(SQL Server 2008)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我知道这可能是非常基本的,但我必须在他们在学校教的时候一直在睡觉:)

如果我有两个表,例如:

表1(产品)

id
name
price
agentid

表2(代理人)

userid
name
email

如何从包含代理名称和电子邮件的产品中获取结果集,这意味着products.agentid = agent.userid

谢谢你的快速答案,但我忘了你在哪里.我如何加入例如SELECT WHERE price< 100

解决方法

编辑支持价格过滤

您可以使用INNER JOIN子句来连接这些表.这样做:

select p.id,p.name as ProductName,a.userid,a.name as AgentName
from products p
inner join agents a on a.userid = p.agentid
where p.price < 100

另一种方法是通过WHERE子句:

select p.id,a.name as AgentName
from products p,agents a
where a.userid = p.agentid and p.price < 100

请注意,在第二种情况下,您将从两个表中生成所有行的自然产品,然后过滤结果.在第一种情况下,您在同一步骤中加入时直接过滤结果. DBMS将了解您的意图(无论您选择何种方式解决此问题)并以最快的方式处理它.

原文链接:https://www.f2er.com/mssql/78362.html

猜你在找的MsSQL相关文章