【发布时间】:2019-02-28 15:04:54
【问题描述】:
这是静态数据透视查询:
SELECT
*
FROM
(SELECT
PI.PRODID||' '||' ('||PI.PRODNAME||' - '||PI.PACKSIZE||')' PNAME,I.SIA_ID, IP.SALES_QTY
FROM
DIS_INVOICE_INFO I, DIS_INVOICE_PRODUCT IP, MKT_PROD_INFO PI
WHERE
I.SLNO = IP.SLNO
AND PI.PRODID = IP.PRODID) s
PIVOT
(SUM(SALES_QTY)
FOR SIA_ID IN (10080, 10084, 10082)
) pvt
但我想要一个动态查询。
喜欢:
......
PIVOT
(SUM(SALES_QTY)
FOR SIA_ID IN (SELECT DISTINCT SIA_ID FROM DIS_INVOICE_INFO)
) pvt
【问题讨论】:
-
Bad habits to kick : using old-style JOINs - 旧式 逗号分隔的表格列表 样式已替换为 ANSI 中的 proper ANSI
JOIN语法-92 SQL 标准(25 多年前),不鼓励使用它 -
您使用的是哪个 DBMS?