0
我想出去任何僱主工作的日子的總和,但在這個總和MySQL計數一週的一天,所以結果並不確切。 如何避免在sum()函數中獲得星期幾?mysql sql查詢,以避免在一個日期總計日結束一天
我已經試過:
where mydate NOT IN ('Saturday', 'Sunday')
,因爲我在其他的答案了類似的問題所看到的,但在這裏我使用一組功能,這意味着總和將where子句被調用之前進行評估。
這是我的查詢:
select pp.person_name,sum(ss.spread_sheet_date) as days
from spread_sheet ss
left join activity ac on ss.activity_id = ac.activity_id
left join person pp on pp.person_id = ss.person_id
where ac.activity_id is not null
group by ac.activity_id,pp.person_id ;
,這是我的查詢使用NOT IN:
select pp.person_name,sum(ss.spread_sheet_date) as days
from spread_sheet ss
left join activity ac on ss.activity_id = ac.activity_id
left join person pp on pp.person_id = ss.person_id
where ac.activity_id is not null and ss.spread_sheet_date NOT IN ('Saturday', 'Sunday')
group by ac.activity_id,pp.person_id ;
我還發現另外一個問題這個答案,我試圖用它
SELECT *
FROM your_table
WHERE ((DATEPART(dw, date_created) + @@DATEFIRST) % 7) NOT IN (0, 1)
但它不起作用,我想這不是mysql兼容。
有人知道如何解決它嗎?
請張貼的模式,樣本數據,當前結果和期望的結果 - 最好的SQLFiddle。 –
這是一個普遍的問題 - 如何避免在星期日和星期六的日期總和。不需要架構 – putz
您是否嘗試使用having子句? – Krismorte