我有一個自加入表的問題,其中group by不能正常工作或者我的代碼有問題。自發加入羣組?
我正在嘗試生成一張表,其中包含住房銷售數據,並希望按地區和住房類型對結果進行分組。
這是我到目前爲止,它接近我所需要的。
SELECT A1.AREA AREA,
TRUNC((A1.SOLD_PRICE/A1.ASK_PRICE*100), 2) || '%' "ATT/ROW/TWNHOUSE",
TRUNC((A2.SOLD_PRICE/A2.ASK_PRICE*100), 2) || '%' "DETACHED",
TRUNC((A3.SOLD_PRICE/A3.ASK_PRICE*100), 2) || '%' "SEMI-DETACHED"
FROM SALESRECORDS A1, SALESRECORDS A2, SALESRECORDS A3
WHERE A1.AREA = A2.AREA AND A1.AREA = A3.AREA
GROUP BY A1.AREA, A1.HOUSE_TYPE;
這給了我錯誤ORA-00979: not a GROUP BY expression
。
當我遵循SQL規則,我by子句中的所有項目添加到組,我得到類似於語句中的順序結果....
SELECT A1.AREA,
TRUNC((A1.SOLD_PRICE/A1.ASK_PRICE*100), 2) || '%' "ATT/ROW/TWNHOUSE",
TRUNC((A2.SOLD_PRICE/A2.ASK_PRICE*100), 2) || '%' "DETACHED",
TRUNC((A3.SOLD_PRICE/A3.ASK_PRICE*100), 2) || '%' "SEMI-DETACHED"
FROM SALESRECORDS A1, SALESRECORDS A2, SALESRECORDS A3
WHERE A1.AREA = A2.AREA AND A1.AREA = A3.AREA
GROUP BY A1.AREA, A1.SOLD_PRICE, A1.ASK_PRICE, A2.SOLD_PRICE, A2.ASK_PRICE,
A3.SOLD_PRICE, A3.ASK_PRICE;
誰能告訴我是什麼我做錯了....?
你爲什麼認爲你需要一組?你從第二個陳述中得到什麼結果?你希望得到什麼結果? – Craig 2013-04-29 17:26:13