表A:id 省 市
1 河北 乐羊
2 新疆 乐羊
3 湖南 长沙
4 江西 南昌
5 广州 乐羊
6 云南 长沙
。。要求结果:id 省 市
1 河北 乐羊
2 新疆 乐羊
5 广州 乐羊
3 湖南 长沙
6 云南 长沙即:市名相同,省份不同的记录。
1 河北 乐羊
2 新疆 乐羊
3 湖南 长沙
4 江西 南昌
5 广州 乐羊
6 云南 长沙
。。要求结果:id 省 市
1 河北 乐羊
2 新疆 乐羊
5 广州 乐羊
3 湖南 长沙
6 云南 长沙即:市名相同,省份不同的记录。
where exists (
select 1 from a
where 省<>a.省 and 市=a.市
)
where exists (
select 1 from a
where 省<>a1.省 and 市=a1.市
)
order by a1.市,id
(select 市 from 表A group by 市 having count(市)>0)
Select A.* From A
Inner Join (Select 市, Min(id) As id From A Group By 市 Having Count(id) > 1) B
On A.市 = B.市
Order By B.id, A.id
Inner Join (Select 市, Min(id) As id From A Group By 市 Having Count(id) > 1) B
On A.市 = B.市
Order By B.id, A.id
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'南昌'
Union All Select 5, N'广州', N'乐羊'
Union All Select 6, N'云南', N'长沙'
GO
--測試
Select A.* From A
Inner Join (Select 市, Min(id) As id From A Group By 市 Having Count(id) > 1) B
On A.市 = B.市
Order By B.id, A.id
GO
--刪除測試環境
Drop Table A
--結果
/*
id 省 市
1 河北 乐羊
2 新疆 乐羊
5 广州 乐羊
3 湖南 长沙
6 云南 长沙
*/
1 河北 乐羊
2 新疆 乐羊
3 湖南 长沙
4 江西 南昌
5 广州 乐羊
6 云南 长沙
7 云南 长沙
8 江西 南昌
9 河北 乐羊
。。要求结果:id 省 市
1 河北 乐羊
2 新疆 乐羊
5 广州 乐羊
3 湖南 长沙
6 云南 长沙
Select Min(A.id) As id, A.省, A.市 From A
Inner Join (Select 市, Min(id) As id From A Group By 市 Having Count(Distinct 省) > 1) B
On A.市 = B.市
Group By A.省, A.市
Order By Min(B.id), Min(A.id)
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'南昌'
Union All Select 5, N'广州', N'乐羊'
Union All Select 6, N'云南', N'长沙'
Union All Select 7, N'云南', N'长沙'
Union All Select 8, N'江西', N'南昌'
Union All Select 9, N'河北', N'乐羊'
GO
--測試
Select Min(A.id) As id, A.省, A.市 From A
Inner Join (Select 市, Min(id) As id From A Group By 市 Having Count(Distinct 省) > 1) B
On A.市 = B.市
Group By A.省, A.市
Order By Min(B.id), Min(A.id)
GO
--刪除測試環境
Drop Table A
--結果
/*
id 省 市
1 河北 乐羊
2 新疆 乐羊
5 广州 乐羊
3 湖南 长沙
6 云南 长沙
*/