表格是:
ID Type
1 A
2 A
3 B
4 B
选择后的结果应为:
ID1 ID2
1 3
2 4
获得此结果的SQL查询是什么?
类型A和类型B的项目数相等。
答案 0 :(得分:2)
您可以使用ROW_NUMBER
并在GROUP BY
:
SELECT
ID1 = MIN(ID),
ID2 = MAX(ID)
FROM (
SELECT *,
rn = ROW_NUMBER() OVER(PARTITION BY Type ORDER BY Id)
FROM tbl
) t
GROUP BY rn
drupal