0
我想使之和的後每個periodeSQL甲骨文ROLLUP不會總結正確
我有以下SQL(我想總結一下「總DKK」,「標準箱」和「公關TEU。」):
SELECT "STAT$DAN_2013".PERIOD, "STAT$DAN_2013".VESSEL_NAME AS "Skibsnavn", "STAT$DAN_2013".VOYAGE_NO AS "Voyage", SUM("STAT$DAN_2013".CREDIT_AMOUNT) - SUM("STAT$DAN_2013".DEBET_AMOUNT) AS "Total DKK", SUM("STAT$DAN_2013".TEUS) AS "Teus", (SUM("STAT$DAN_2013".CREDIT_AMOUNT) - SUM("STAT$DAN_2013".DEBET_AMOUNT))/SUM("STAT$DAN_2013".TEUS) AS "Pr. teu"
FROM SCAN."STAT$DAN_2013" "STAT$DAN_2013"
WHERE "STAT$DAN_2013".DEPARTMENT=107 AND "STAT$DAN_2013".PERIOD<1307
GROUP BY rollup("STAT$DAN_2013".PERIOD, "STAT$DAN_2013".VESSEL_NAME, "STAT$DAN_2013".VOYAGE_NO)
ORDER BY "STAT$DAN_2013".PERIOD, "STAT$DAN_2013".VESSEL_NAME, "STAT$DAN_2013".VOYAGE_NO;
,但我得到的輸出是這樣的:
PERIOD Skibsnavn Voyage Total DKK Teus Pr. teu 1301 HANJIN ASIA 0004W 10.00 61 493.29 1301 HANJIN ASIA 10.00 61 493.29 1301 HANJIN ITALY 0010W 60.00 53 510.49 1301 HANJIN ITALY 60.00 53 510.49 1301 HANJIN SPAIN 0009W 100.00 74 526.11 1301 HANJIN SPAIN 100.00 74 526.11 1301 170.00 188 511.06 1302 HANJIN AFRICA 0003W 5.00 87 642.62 1302 HANJIN AFRICA 5.00 87 642.62 1302 HANJIN EUROPE 0004W 40.00 131 473.40 1302 HANJIN EUROPE 40.00 131 473.40 1302 HANJIN KOREA 0014W 70.00 80 617.18 1302 HANJIN KOREA 70.00 80 617.18 1302 HANJIN NETHERLANDS 0010W 60.00 57 778.15 1302 HANJIN NETHERLANDS 60.00 57 778.15 1302 HANJIN UNITED KINGDOM 0008W 80.00 83 520.64 1302 HANJIN UNITED KINGDOM 80.00 83 520.64 1302 255.00 438 581.88
我想這樣的輸出:
PERIOD Skibsnavn Voyage Total DKK Teus Pr. teu 1301 HANJIN ASIA 0004W 10.00 61 493.29 1301 HANJIN ITALY 0010W 60.00 53 510.49 1301 HANJIN SPAIN 0009W 100.00 74 526.11 1301 170.00 188 511.06 1302 HANJIN AFRICA 0003W 5.00 87 642.62 1302 HANJIN EUROPE 0004W 40.00 131 473.40 1302 HANJIN KOREA 0014W 70.00 80 617.18 1302 HANJIN NETHERLANDS 0010W 60.00 57 778.15 1302 HANJIN UNITED KINGDOM 0008W 80.00 83 520.64 1302 255.00 438 581.88
這可能嗎?
很難說沒有輸入數據(並考慮到如此嚴重的格式化你的輸出),但不會環繞你的語句中一個SELECT * FROM(<你這裏查詢>)航行不是NULL? –
如果您使用GROUP BY彙總(「STAT $ DAN_2013」.PERIOD),「STAT $ DAN_2013」.VESSEL_NAME,「STAT $ DAN_2013」.VOYAGE_NO',會發生什麼情況? –
它總結了表格底部的每一行 - 它不會爲每個週期進行總計 - 就像第一個輸出一樣,只是它已經將它拖到了最後,並且沒有每個週期的總和 – user2935782