У меня есть 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
Part 1 - Joins and Unions
. :) в закладки!