Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql 如何使用SQL上另一个查询的数据进行查询?_Postgresql - Fatal编程技术网

Postgresql 如何使用SQL上另一个查询的数据进行查询?

Postgresql 如何使用SQL上另一个查询的数据进行查询?,postgresql,Postgresql,我有一个用户表和另一个订单表。一个用户可以有许多订单。我如何获得最后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; 首先你需要知道。。在查询数据时,不要做单独的操作。。如果

我有一个用户表和另一个订单表。一个用户可以有许多订单。我如何获得最后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;

首先你需要知道。。在查询数据时,不要做单独的操作。。如果您发布所有
用户
订单
您的数据将
无序
且不一致。。因此,您需要使
Join
查看所有
User
Order
。。如@Sharon所述,您需要添加列
date\u ordered
,以查看
order
make。。我假设您已经有了该列,但我将使用
date\u 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\u ordered
使用
desc
您将获得所有用户的最新订单。。我假设表
orders
中的
user\u id
列有约束
foreign key
引用表
users
和列
id

MySQL PostgreSQL。请指定您使用的RDBMS?抱歉,我使用PostgreSql来了解用户何时下订单您需要知道的“最后一个”。也就是说,添加“购买日期”之类的内容