Ich habe eine Tabelle von Benutzern. Jeder Benutzer hat einen SubscriptionStartDate und SubscriptionEndDateWie aktive Teilnehmer zwischen zwei angegebenen Daten zählen
Das Enddatum null sein könnte, wenn ihr Abonnement hat
Ich brauche die Anzahl der aktiven Abonnements nicht geplant worden zu Ende Monat zählen über einen Zeitraum von Zeit
Ich kann dies einen Monat zu einer Zeit machen, aber ich möchte eine einzige Abfrage, die mir alle Ergebnisse auf einmal sagen kann, sagen wir jeden Monat in einem Jahr oder mehr.
declare @startDate datetime;
declare @endDate datetime;
set @startDate = '2-01-2016';
set @endDate = '2-29-2016'
select COUNT(*)
from Users
where SubscriptionStartDate <= @startDate
and (SubscriptionEndDate is null or SubscriptionEndDate>= @endDate)
Wie kann ich eine Abfrage oder CTE schreiben, um dies zu tun?
Gibt es eine Möglichkeit festzustellen, ob der Benutzer den ganzen Monat aktiv war? –
Angenommen, Abonnements enden erst am letzten Tag des Monats – stephen776