0
我想爲最低價格爲目的-A項目和最大價格 爲B目的項目,此外我按區域分組我的項目。如何避免SQL中的子查詢重複?
SELECT ZONE, MIN_PRICE, MAX_PRICE --,LEFT_ZONE
FROM
(SELECT MIN(PRICE) AS MIN_PRICE , ZONE AS LEFT_ZONE
FROM MYTABLE
WHERE PURPOSE = 'A'
AND SOMETHING = 'SOMEVALUE'
GROUP BY ZONE
)
FULL OUTER JOIN
(SELECT MAX(PRICE) AS MAX_PRICE, ZONE_CD
FROM MYTABLE
WHERE PURPOSE = 'B'
AND SOMETHING = 'SOMEVALUE'
GROUP BY ZONE
)
ON LEFT_ZONE = ZONE
該查詢給我想要的輸出,但我不喜歡它 有兩個原因:
1)我想
FROM MYTABLE
WHERE SOMETHING = 'SOMEVALUE'
僅被調用一次。
2)當我的完整外連接中的行來自右表 時,我得到ZONE null。
我該如何解決這些問題。
在我的查詢中是否還有一些問題?
任何小的變化是什麼,用來收集MIN_PRICE的原因目的'B'的max_price的目的'A'? – 2013-03-01 13:56:02
在某個區域,您可以以昨天交易的最低買價以今天的價格出售,並以昨日最高買入價買入。我希望我的查詢的輸出包含「zone,today_sell_price,today_buy_price」。那意味着什麼? – jimifiki 2013-03-01 14:08:02