Как сделать запрос с данными другого запроса на SQL? - PullRequest
0 голосов
/ 20 ноября 2018

У меня есть таблица пользователей и другая таблица заказов.Пользователь может иметь много заказов.Как получить последние 1000 пользователей, и эти пользователи используют мои последние 1000 заказов для каждого?

Запрос - Получить пользователей

select distinct users.id, users.first_name, users.last_name
from users
limit 2;

Запрос - Получить заказы

select distinct orders.id, orders.user_id
from orders
limit 2;

1 Ответ

0 голосов
/ 21 ноября 2018

Сначала вам нужно знать. Когда дело доходит до данных запроса, не выполняйте отдельную операцию. Если вы введете Все Users и Orders Ваши данные будут unordered, а не согласованностью.нужно сделать Join чтобы увидеть все User с Order у них есть .. И, как говорит @Sharon, вам нужно добавить столбец date_ordered, чтобы увидеть, что order сделать .. Я предполагаю, что у вас уже есть этостолбец, но я назову этот столбец с date_ordered ..

И ваш запрос будет:

select
  users.id, 
  users.first_name, 
  users.last_name,
  orders.id
from
  users
  inner join orders on users.id = orders.user_id
order by
  orders.date_ordered desc
limit 1000

По заказу date_ordered используйте desc, вы получите последние всепользователь с их порядком .. И я предполагаю user_id столбец в таблице orders имеет ограничение foreign key ссылки на таблицу users с столбцом id ..

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