筛选问题。
表A:
id 省 市
1 河北 乐羊
2 新疆 乐羊
3 湖南 长沙
4 江西 南昌
5 广州 乐羊
6 云南 长沙
。。。。。。。。。。。。。。。。。。。。
要求结果:
id 省 市
1 河北 乐羊
2 新疆 乐羊
5 广州 乐羊
3 湖南 长沙
6 云南 长沙
即:市名相同,省份不同的记录。
------解决方案--------------------?
Select * From A Order By 市, id
------解决方案--------------------select * from A a where exists(select 1 from A b where b.市 = a.市)
------解决方案--------------------select * from a a1
where exists (
select 1 from a
where 省 <> a.省 and 市=a.市
)
------解决方案--------------------select * from 表A where 市 in
(select 市 from 表A group by 市 having count(市)> 0)
------解决方案-------------------- --創建測試環境
Create Table A
(id Int,
省 Nvarchar(20),
市 Nvarchar(20))
--插入數據
Insert A Select 1, N '河北 ', N '乐羊 '
Union All Select 2, N '新疆 ', N '乐羊 '
Union All Select 3, N '湖南 ', N '长沙 '
Union All Select 4, N '江西 ', N '南昌 '