sql – 选择具有相同列A但不同列B的行

ID          Zip        Room
----------- ---------- ------
317         94087      S105
318         94087      L603
1739        94404-1801 L603
1823        94401-2129 L603
1824        94401-2129 L603
2135        94404-1801 L603
2268        95136-1459 S604
2269        95136-1459 S604
3704        92673-6417 L402
4479        93454-9670 L402
4480        93454-9670 L402
4782        92395-4681 L402
4783        92395-4681 L402
4852        92886-4411 L402
4853        92886-4411 L402
4959        92673-6417 L402
5153        91773-4028 L402
5202        91773-4028 L402
5211        91765-2959 L402
5212        91765-2959 L402
5388        92336-0605 L402
5392        92336-0605 L402
5727        92870      L402
5728        92870      L402
5831        92557      L402
5916        92557      L402

如何选择具有相同拉链但不同房间的ID?

在上表中,我希望结果为:

ID          Zip        Room
----------- ---------- ------
317         94087      S105
318         94087      L603

使用sql Server 2008

解决方法

你可以使用 EXISTS
SELECT ID,Zip,Room 
FROM dbo.Table t1
WHERE EXISTS
(
   SELECT 1 FROM dbo.Table t2
   WHERE t2.Zip = t1.Zip
   AND t2.Room <> t1.Room
)

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 &#39;EastRiver&#39; 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...