我試圖從連接中創建一個表並根據id對一些字段進行求和。這部分工作很好。我也想添加一個額外的列,並使用一個案例,當我想要填充它的聲明。GROUP BY after CASE WHEN
這裏是腳本
CREATE TABLE TABLE1
AS
SELECT ID, IDC, SUM(AMOUNT) PRICE, SUM(COST) COST, SUM(AMOUNT-COST) PROFIT,
CASE PROFIT
WHEN PROFIT < 1000 THEN 'Low'
WHEN PROFIT < 5000 THEN 'Medium'
ELSE 'High'
END AS PROFITLEVEL
FROM
(SELECT DISTINCT ID, IDC, AMOUNT, COST
FROM ORDER_ITEMS
LEFT JOIN ORDERS
ON ID = IDC)
GROUP BY ID, IDC;
然而,這會返回一個ORA-00905:缺少關鍵字的錯誤。
任何幫助,將不勝感激
CASE語法無效。 (其中包括...)當...時出現'情況'。但是,你不能在那裏使用那個列別名PROFIT ... – jarlh
問題dufus標記爲關閉爲「由於錯字或無法複製的問題」 - 什麼錯字?這個問題怎麼能不被轉載? (只是問世界,因爲dufus甚至不太可能記得標記關閉的問題。) – mathguy