J'ai donc la date d'enregistrement de chaque utilisateur dans une colonne. Mais je dois prendre cette date d'inscription et trouver toutes les transactions effectuées dans les 60 jours suivant cela et les compter. J'ai aussi besoin de faire tout cela dans une requête. Je suis nouveau sur SQL, donc je ne suis pas sûr que je devrais faire une table temporaire ou utiliser une sous-requête pour prendre cette valeur d'enregistrement et trouver les 60 jours de valeur de 60 jours suivants.
si idéalement c'est ce que je voudrais revenir p >
User_id ----- registration_date ----- transactions ------------------------------------------------- - 4 1/1/2019 43 - 7 4/3/2017 22 - 9 3/3/2016 15
3 Réponses :
Vous n'avez pas fourni de SGBD, donc je vais faire une réponse générale.
problème strong> = =
Comment puis-je obtenir les transactions 60 jours à partir d'une date donnée? P> Solution: strong> p> Dans la plupart des systèmes de gestion de la base de données, il existe des fonctions pour convertir une date donnée ou horodatage en jours. Cela signifie que nous pouvons utiliser cette fonction pour calculer le nombre de jours entre 2 valeurs. La requête suivante vous obtiendra le résultat que vous recherchez (sorte de): p> Cependant, dans la requête ci-dessus, je ne sais pas comment les regrouper. Mais la solution pourrait être correcte dans votre cas. P> p>
L'OP utilise la balise SQL Server de la première. Ce n'est pas un T-SQL.
A rejoindre code> obtiendra cette information. Par exemple:
Je suppose que vous avez deux tables, que j'appellerai utilisateurs code> et transactions code>:
"Toutes dans une requête" et "faire une table temporaire" ne correspondent pas. Cela nécessite donc vraiment une déclaration (par exemple, sélectionner)? Mais commencez simplement. Sélectionnez dans la table contenant votre utilisateur / enregistrement. Utilisez DateAdDD pour ajouter 60 jours à la date d'enregistrement. Lorsque vous obtenez cela fonctionnant, vous pouvez ajouter la logique de transaction.
Ok bon merci. Donc, j'ai utilisé la date ajouté et avez maintenant une colonne de l'ID utilisateur, la date d'inscription et la date de 60 jours plus tard. Maintenant, je me demandais comment je peux prendre ces dates et obtenir un compte?