正反99表显示:
SELECT R1 || '*' || R1 || '=' || R1 * R1 A,
DECODE(R2, '', '', R2 || '*' || R1 || '=' || R2 * R1) B,
DECODE(R3, '', '', R3 || '*' || R1 || '=' || R3 * R1) C,
DECODE(R4, '', '', R4 || '*' || R1 || '=' || R4 * R1) D,
DECODE(R5, '', '', R5 || '*' || R1 || '=' || R5 * R1) E,
DECODE(R6, '', '', R6 || '*' || R1 || '=' || R6 * R1) F,
DECODE(R7, '', '', R7 || '*' || R1 || '=' || R7 * R1) G,
DECODE(R8, '', '', R8 || '*' || R1 || '=' || R8 * R1) H,
DECODE(R9, '', '', R9 || '*' || R1 || '=' || R9 * R1) I
FROM (SELECT LEVEL R1,
LAG(LEVEL, 1) OVER(ORDER BY LEVEL) R2,
LAG(LEVEL, 2) OVER(ORDER BY LEVEL) R3,
LAG(LEVEL, 3) OVER(ORDER BY LEVEL) R4,
LAG(LEVEL, 4) OVER(ORDER BY LEVEL) R5,
LAG(LEVEL, 5) OVER(ORDER BY LEVEL) R6,
LAG(LEVEL, 6) OVER(ORDER BY LEVEL) R7,
LAG(LEVEL, 7) OVER(ORDER BY LEVEL) R8,
LAG(LEVEL, 8) OVER(ORDER BY LEVEL) R9
FROM DUAL
CONNECT BY LEVEL < 10);
SELECT RN, LTRIM(MAX(SYS_CONNECT_BY_PATH(PRODUCT, ',')), ',') PRODUCT
FROM (SELECT RN,
PRODUCT,
MIN(PRODUCT) OVER(PARTITION BY RN) PRODUCT_MIN,
(ROW_NUMBER() OVER(ORDER BY RN, PRODUCT)) +
(DENSE_RANK() OVER(ORDER BY RN)) NUMID
FROM (SELECT B.RN,
A.RN || '*' || B.RN || '=' || A.RN * B.RN PRODUCT
FROM (SELECT ROWNUM RN FROM ALL_OBJECTS WHERE ROWNUM <= 9) A,
(SELECT ROWNUM RN FROM ALL_OBJECTS WHERE ROWNUM <= 9) B
WHERE A.RN <= B.RN
ORDER BY B.RN, PRODUCT))
START WITH PRODUCT = PRODUCT_MIN
CONNECT BY NUMID - 1 = PRIOR NUMID
GROUP BY RN
ORDER BY RN;
SELECT LTRIM(SYS_CONNECT_BY_PATH(ROWNUM || '*' || LV || '=' ||
RPAD(ROWNUM * LV, 2),
' '))
FROM (SELECT LEVEL LV FROM DUAL CONNECT BY LEVEL < 10)
WHERE LV = 1
CONNECT BY LV + 1 = PRIOR LV;
-

没有评论:
发表评论