Выбрать детали последней покупки каждого учащегося всего за 1 запрос? - PullRequest
0 голосов
/ 26 февраля 2020

У меня есть 2 таблицы, как на этой картинке:

pic

Я хочу найти подробную информацию о последней покупке каждого учащегося на SQL Сервере только с 1 запрос Как я могу это сделать?

enter image description here

1 Ответ

4 голосов
/ 26 февраля 2020

Предполагая, что "последний" означает "самый большой id", простой метод использует коррелированный подзапрос:

select s.*
from shoptbl s
where s.id = (select max(s2.id) from shoptbl s2 where s2.name = s.name);

Ваша модель данных испорчена. У вас есть отличные цифры для каждого студента. Нет необходимости повторять name в других таблицах. Вместо этого используйте id.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...