[英]Ambiguous column name Error in SQL Query
我有兩個查詢。 第一個是:
SELECT hardware, SUM(Quantity) FROM request_1v2 where date between "2016-03-12" AND "2016-03-14" group by hardware
第一個查詢的輸出是
第二個查詢是:
SELECT hardware, SUM(Quantity) FROM request_1v2 where date between "2016-03-12" AND "2016-03-12" group by hardware
第二個查詢的輸出是:
實際上我正在繪制一個圖所以我需要將這兩個查詢合並為一個。 我得到的解決方案是:
SELECT t1.hardware, SUM(t1.Quantity), SUM(t2.Quantity)
FROM request_1v2 AS t1,request_1v2 AS t2
WHERE t1.date between "2016-03-12" and "2016-03-14" AND t2.date between "2016-03-12" and "2016-03-12"
GROUP BY t1.hardware
解決方案查詢的輸出:
這是錯誤的!
我需要的實際輸出將是:-
我不知道該怎么做。 誰能幫我。? 有人建議我將您的查詢寫為:-
SELECT hardware, SUM(t1.Quantity), SUM(t2.Quantity)
FROM request_1v2 AS t1,request_1v2 AS t2
WHERE t1.date between "2016-03-12" and "2016-03-14" AND t2.date between "2016-03-12" and "2016-03-12"
GROUP BY hardware
但它給出了錯誤“不明確的列名:硬件”
請幫助我並編寫查詢作為您的答案謝謝。
如果你需要表結構,這里是:
只需使用 CASE,您的日期重疊,您可能想要更改它們。由於您沒有 JOIN 條件,因此您的第三個查詢創建了笛卡爾 JOIN。
SELECT hardware,
SUM(CASE WHEN date between "2016-03-12" AND "2016-03-14" THEN Quantity ELSE 0 END),
SUM(CASE WHEN date between "2016-03-12" AND "2016-03-12" THEN Quantity ELSE 0 END)
FROM request_1v2
group by hardware
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.