Jeśli to możliwe, staraj się trzymać z daleka od generowania danych w locie. To sprawia, że bardzo proste zapytania są śmiesznie skomplikowane, ale przede wszystkim:bardzo dezorientują optymalizator.
Jeśli potrzebujesz serii liczb całkowitych, użyj statycznej tabeli liczb całkowitych. Jeśli potrzebujesz serii dat, miesięcy lub czegokolwiek, użyj tabeli kalendarza. O ile nie masz do czynienia z naprawdę niezwykłymi wymaganiami, najlepszym rozwiązaniem jest stół statyczny.
Podałem przykład, jak utworzyć tabelę liczb i minimalną tabelę kalendarza (tylko daty) w ta odpowiedź .
Jeśli masz te tabele na miejscu, rozwiązanie zapytania staje się łatwe.
- Zbierz dane zamówienia do MIESIĄCA.
- Dołącz po prawej stronie do tabeli miesięcy (lub odrębny MIESIĄC od tabeli dat)