Mam następującą potrzebę:Liczba obliczeń SQL dla każdej daty
Posiadam tabelę rejestrowania, która rejestruje wygenerowane przez siebie wyniki każdego dnia.
Teraz muszę pobrać raport dotyczący liczby potencjalnych klientów każdego dnia w ciągu ostatnich 10 dni.
Powiedzmy tabela wygląda następująco:
tbl_leads
id int,
first_name nvarchar(100),
last_name nvarchar(100),
created_date datetime
I muszę policzyć liczbę potencjalnych klientów dla każdego dnia, 10 dni łączna. więc zestaw wynik powinien wyglądać mniej więcej tak:
counted_leads | count_date
5 | 2009-04-30
7 | 2009-04-29
5 | 2009-04-28
7 | 2009-04-27
... i tak dalej
ktoś wie jak to zrobić w najlepszy możliwy sposób? Moje obecne rozwiązanie polega na iteracji z foreach w języku C#, ale bardzo chciałbym przekazać go na serwerze sql zamiast w sp.
Kiedyś to jednak w CREATED_DATE jest pole z pełnym datetime więc musiałem zastosować tę małą Hack: DATEADD (dd, 0, DateDiff (dd, 0 , created_date)) w grupie po części i wszystko działało jak czar !! :) –
Zmień także liczbę (created_date) na Count (*). Licznik z kolumną liczy tylko wartości inne niż null. Jako taki może być wolniejszy niż liczba (*), jeśli kolumna jest zerowa. – GilaMonster
Nawet jeśli to pytanie/odpowiedź jest dość stara: aby uzyskać datę bez czasu, można użyć DATE (created_date) zamiast raw created_date - więc wyniki będą pogrupowane według daty bez czasu! – baris1892