Jak mogę wstawić brakujące daty z utworzonego przeze mnie zapytania? Wynik poniżej:
Date Frequency
2014-05-18 5
2014-05-20 7
2014-05-25 7
2014-05-27 6
Chcę, aby w wyniku brakowało dat o wartości 0, jak pokazano poniżej:
Date Frequency
2014-05-18 5
2014-05-19 0
2014-05-20 7
2014-05-21 0
2014-05-22 0
2014-05-23 0
2014-05-24 0
2014-05-25 7
2014-05-26 0
2014-05-27 6
Pamiętaj, że mam dostęp tylko do odczytu do serwera.
sql-server-2008
Arvin
źródło
źródło
Odpowiedzi:
Oto przykład z wykorzystaniem tabeli kalendarza (którą naprawdę powinieneś mieć). Ten przykład przedstawia tylko rok 2014, ale możesz go wypełnić dowolną liczbą lat ...
Teraz zapytanie jest proste:
Przykład SQLfiddle
Jeśli nie możesz utworzyć tabeli kalendarza (i nie masz pod ręką tabeli liczb), możesz po prostu wstawić ją do tabeli:
Przykład SQLfiddle
Więcej informacji na temat generowania zestawów (dat, liczb itp.) Można znaleźć w tej serii:
źródło
SKRZYPCE
źródło