我很难解决这个问题。我正在使用Microsoft SQL Server 2014(版本12.0.4100.1)。SQL Server:获取IN值,发现该行
我有两个表contacts
和business
。我有一组联系人用户名。我在WHERE
取出由该用户名阵列业务列表使用子查询,像这样:
SELECT business.id, business.name, business.notes
FROM business
WHERE business.id IN (SELECT contacts.business_id
FROM contacts
WHERE contacts.username IN ('username1', 'username2', 'username3'))
此查询工作正常,但我无法弄清楚如何还选择值它每一排被发现;例如:如果我从与用户名“用户名1”的接触获取业务,我想取一下,看看结果:
business.id = 1
business.name = 'Business 1'
business.notes = 'Notes from business 1.'
contacts.username = 'username1'
得到那个结果,我可以从什么接触来到每一个企业很容易看到。
预先感谢您!
编辑:可能有多个联系人为每个业务,所以做一个INNER JOIN
将返回每个联系人重复的业务结果。我想知道在子查询中选择哪个联系人。
'INNER JOIN'在共同的商业标识的'contacts'表。 –
每个企业可能有多个联系人,因此执行“INNER JOIN”会为每个联系人返回重复的业务结果。我想知道在子查询中选择哪个联系人。 – devrique
哎呀,对不起!这种方式不是重复的结果,谢谢! – devrique