甲骨文設置:
CREATE TABLE table_name (A, B) AS
SELECT 1, 100 FROM DUAL UNION ALL
SELECT 1, 102 FROM DUAL UNION ALL
SELECT 1, 105 FROM DUAL UNION ALL
SELECT 2, 100 FROM DUAL UNION ALL
SELECT 2, 105 FROM DUAL UNION ALL
SELECT 3, 100 FROM DUAL UNION ALL
SELECT 3, 102 FROM DUAL;
查詢:
SELECT A,
COUNT(B)
FROM (
SELECT SUBSTR(SYS_CONNECT_BY_PATH(A, ','), 2) AS A,
B
FROM table_name
CONNECT BY PRIOR B = B
AND PRIOR A + 1 = A
)
GROUP BY A
ORDER BY A;
輸出:
A COUNT(B)
----- ----------
1 3
1,2 2
1,2,3 1
2 2
2,3 1
3 2
來源
2016-07-17 22:34:27
MT0
我不完全理解的結果。你能解釋他們是如何計算的? –
爲什麼不能有''2,3 .............. 2「'?這是很不清楚你問的。 –
對不起,我的英文,我忘了,也有2,3 ........ 2輸出 –