J'ai une table users
et une table payments
, pour chaque utilisateur, qui ont des paiements, peuvent avoir plusieurs paiements associés dans la table payments
. Je souhaite sélectionner tous les utilisateurs qui ont des paiements, mais uniquement leur dernier paiement. J'essaie ce SQL mais je n'ai jamais essayé d'instructions SQL imbriquées auparavant, alors je veux savoir ce que je fais de travers. Apprécier l'aide
SELECT u.*
FROM users AS u
INNER JOIN (
SELECT p.*
FROM payments AS p
ORDER BY date DESC
LIMIT 1 )
ON p.user_id = u.id
WHERE u.package = 1