Я работаю с SQLite.SQLite-запрос для присоединения к диапазону дат?
Предположим, у меня есть стол sales
с двумя колонками, date
и count
, чтобы отслеживать, сколько очков из лимонада я продал в эту дату. Если я не буду продавать лимонад в определенный день, я слишком подавлен, чтобы создать новую строку в таблице sales
.
Я хотел бы узнать среднее количество очков, проданных за определенный диапазон дат. Я мог бы выдать запрос, как это:
SELECT AVG(count) FROM sales WHERE date IS BETWEEN '2010-01-04' AND '2010-01-10';
Однако результат не будет точным, если все даты в этом диапазоне не включены в таблицу. Мне нужно каким-то образом сказать SQLite подсчитать недостающие строки как нули.
Я предполагаю, что если бы я смог присоединиться к таблице продаж в диапазоне дат, это было бы идеально. Это не представляется возможным, поэтому простой способ создания таблицы из диапазона дат, вероятно, является следующим лучшим. Я не хочу изменять таблицу продаж, которая кажется глупой для стенда лимонада, но имеет больше смысла в реальной жизни.
Как я уже говорил выше, я использую SQLite, поэтому вам не помогает, если вы порекомендуете мне другие базы данных. Тем не менее, если у вас есть больше опыта работы с другой базой данных и вы думаете, что ваше решение может быть выполнено в ванильном SQL, я бы хотел его услышать.
можете ли вы что-нибудь сказать о диапазоне? должна ли она быть произвольной длиной? или есть максимум? –