Предположим, у меня 2011-01-03, и я хочу получить первое из недели (воскресенье, 2011-01-02), как мне это сделать?
Причина в том, что у меня есть этот запрос:
select
YEAR(date_entered) as year,
date(date_entered) as week, <-------This is what I want to change to select the first day of the week.
SUM(1) as total_ncrs,
SUM(case when orgin = picked_up_at then 1 else 0 end) as ncrs_caught_at_station
from sugarcrm2.ncr_ncr
where
sugarcrm2.ncr_ncr.date_entered > date('2011-01-01')
and orgin in(
'Silkscreen',
'Brake',
'Assembly',
'Welding',
'Machining',
'2000W Laser',
'Paint Booth 1',
'Paint Prep',
'Packaging',
'PEM',
'Deburr',
'Laser ',
'Paint Booth 2',
'Toolpath'
)
and date_entered is not null
and orgin is not null
AND(grading = 'Minor' or grading = 'Major')
and week(date_entered) > week(current_timestamp) -20
group by year, week(date_entered)
order by year asc, week asc
И да, я понимаю, что происхождение написано неправильно, но это было здесь раньше, поэтому я не могу исправить это, так как слишком много внутренних приложений ссылаются на него.
Итак, я группируюсь по неделям, но я хочу, чтобы это заполнило мой график, поэтому у меня не может быть, чтобы все начало недель выглядело как разные даты. Как мне это исправить?