У меня есть таблица users
и таблица payments
, для каждого пользователя, у которых есть платежи, может быть несколько связанных платежей в таблице payments
. Я хотел бы выбрать всех пользователей, у которых есть платежи, но выбрать только их последний платеж. Я пытаюсь этот SQL, но я никогда не пробовал вложенные операторы SQL раньше, поэтому я хочу знать, что я делаю неправильно. Цените помощь
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