Maison  >  Questions et réponses  >  le corps du texte

MySQL : afficher le nombre quotidien de lignes créées à l'aide de la jointure interne ?

J'ai une table user et user_data. J'essaie d'afficher les inscriptions par created_at, de les regrouper par décompte du jour et d'afficher les enregistrements de chaque jour afin de pouvoir voir le delta des inscriptions d'utilisateurs.

user_data est facultatif et n'est pas toujours présent (encore), mais je souhaite uniquement compter les lignes qui contiennent des lignes user_data.

Je l'exécute mais il ne renvoie qu'une seule ligne pour chaque enregistrement d'utilisateur, comment puis-je regrouper les dates ?

SELECT COUNT(*), created_at, email 
FROM users 
INNER JOIN user_data  ON users.id = user_data.user_id
GROUP BY users.created_at, email

P粉692052513P粉692052513405 Il y a quelques jours850

répondre à tous(1)je répondrai

  • P粉334721359

    P粉3347213592023-09-11 10:52:33

    D'après votre description, il semble que vous souhaitiez afficher le nombre d'inscriptions d'utilisateurs par date et les regrouper en conséquence. Pour mieux comprendre vos besoins et fournir des conseils plus précis, par exemple, fournissez des exemples de tableaux et les résultats attendus.

    Voici la requête modifiée :

    SELECT DATE(u.created_at) AS signup_date, COUNT(*) AS signups
    FROM users u
    INNER JOIN user_data ud ON u.id = ud.user_id
    GROUP BY signup_date
    ORDER BY signup_date ASC;SELECT DATE(u.created_at) AS signup_date, COUNT(*) AS signups
    FROM users u
    INNER JOIN user_data ud ON u.id = ud.user_id
    GROUP BY signup_date
    ORDER BY signup_date ASC;

    Cela vous donnera le nombre d'inscriptions par date.

    répondre
    0
  • Annulerrépondre