0
我有一個表中有大量小時花費的條目。我試圖根據日期的某些特徵花費數小時。我的查詢將與此任務競爭,但如果某個日期的特定特徵集沒有值,則該日期將不會返回任何數據。如果我使用不同的連接類型加入表,我知道如何解決這個問題,但當連接處於where語句時,我不知道該怎麼做。加入子查詢和丟失數據
SELECT
t1.dates,
t1.hours1,
t2.hours2,
t3.hours3,
t4.hours4
FROM
(
SELECT
dates,
SUM(times) AS hours1
FROM mytable
WHERE
characterisics1
GROUP By dates
) t1,
(
SELECT
dates,
SUM(times) AS hours2
FROM mytable
WHERE
characterisics2
GROUP By dates
) t2,
(
SELECT
dates,
SUM(times) AS hours3
FROM mytable
WHERE
characterisics3
GROUP By dates
) t3,
(
SELECT
dates,
SUM(times) AS hours4
FROM mytable
WHERE
characterisics4
GROUP By dates
) t4
WHERE
t1.dates = t2.dates and t1.dates = t3.dates and t1.dates = t4.dates
ORDER BY
t1.dates DESC
請不要使用隱式聯接。他們是一種很差的編程技術。 – HLGEM