как воспроизвести последовательную дату

#sql

Вопрос:

Здравствуйте, у меня есть запрос, чтобы показать количество и сумму товара, который продается каждый день. Как мне отобразить всю дату за неделю независимо от того, продан товар или нет

Ответ №1:

код для создания серии последовательных дат текущей недели

 SELECT generate_series(
  date_trunc('week', now()),
  date_trunc('week', now())   interval'6days',
  interval'1day'
)::DATE AS x
 

затем вы можете присоединить к нему свои агрегированные данные слева

Комментарии:

1. Для того, чтобы иметь возможность присоединиться к этому результату. generate_series() следует использовать в FROM предложении, а не в списке выбора.

2. ДА SELECT smthn FROM generate_series(..) AS x LEFT JOIN yourdata ON x=..