【发布时间】:2014-08-13 07:59:30
【问题描述】:
我有两张桌子。我有一个简单的内部联接查询,其中的字段是从两个表中选择的,即 Deals 和 Deals_Country。
两个表共享一个名为 Id 的字段。这是 Deals 中的主键和 Deals_Country 中的外键。因此,ID 在 Deals 中始终是唯一的,但在 Deals_Country 中并不总是唯一的。
我想在我的简单内部联接查询中添加更多条件。我只想返回 MA_DEALS_COUNTRY 中有多个 id 的记录。请看下面的示例。
select DEALS.id, DEALS.field_b, DEALS_COUNTRY.field_c DEALS_COUNTRY.field_d,
from DEALS
inner join DEALS_COUNTRY
on DEALS.id = DEALS_COUNTRY.id
where
(
select id
from DEALS_COUNTRY
group by id
having count(id) > 1
)
order by id
DEALS
id
AA11
AB34
AN21
BN44
DEALS_COUNTRY
id some_code
AA11 4506
AB34 5052
AB34 6161
AB34 0124
AN21 6322
AN21 9548
BN44 0012
结果
Deal.id Deal_Country.some_code
AB34 5052
AB34 6161
AB34 0124
AN21 6322
AN21 9548
【问题讨论】:
标签: sql sql-server