Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comptage de nouveaux clients par mois

Commencez par définir un nouveau client

select distinct FirstTimer.customer_id 
from
(select customer_id,min(order_date) as FirstOrderDate
from tblOrder 
group by customer_id
having Month(min(order_date))=month(TargetDate) and
       year(min(order_date))=year(targetDate)
) FirstTimer
join tblOrder ot on ot.customer_id=First_timer.customer_id
where ot.order_date > target_date

La première partie trouve tous les clients dont la première commande a eu lieu dans le mois indiqué. Vous ne voulez alors que les clients qui remplissent AUSSI la deuxième condition (commandé après la date cible)

Sans noms de table et structures, impossible de créer l'intégralité de la requête, mais j'espère que ce qui précède devrait vous donner un début