小编use*_*560的帖子

左外连接不返回分组查询中的所有行

我正在尝试查询所有用户以查找上个月的订单价格。我在 PostgreSQL 上做这个。这是一个玩具数据库来显示我的问题:我有一张people桌子和一张orders桌子。我试图找到上个月所有人的订单总和。

这是我的数据:

select * from people;
 id |     name     
----+--------------
  1 | bobby lee
  2 | greg grouper
  3 | Hilldawg Ca
(3 rows)

select * from orders;
 id | person_id |    date    | price 
----+-----------+------------+-------
  1 |         3 | 2014-08-20 |  3.50
  2 |         3 | 2014-09-20 |  6.00
  3 |         3 | 2014-09-10 |  7.00
  4 |         2 | 2014-09-10 |  7.00
  5 |         2 | 2014-08-10 |  2.50
Run Code Online (Sandbox Code Playgroud)

这是我正在尝试编写的查询:

SELECT p.id, …
Run Code Online (Sandbox Code Playgroud)

postgresql join sum

8
推荐指数
1
解决办法
8313
查看次数

从 T 中选择行,使得 sum(T.quantity) 大于参数

TLDR:我需要一种方法来限制我的选择,以便只返回填充新订单所需的行。

嘿,我正在寻找一种更好的方法来查询下面的简化玩具表。现在我做了一个简单的选择,然后在 Python 中做一些额外的逻辑来处理完全或部分可填充的行。

id |name   | category |  price  | quantity
---+-------+----------+---------+---------
1  |Robby  | buy      | 45      | 4
2  |Blane  | buy      | 48      | 5
3  |Shawn  | buy      | 43      | 10
4  |Valva  | sell     | 62      | 9
5  |Chris  | buy      | 42      | 15
Run Code Online (Sandbox Code Playgroud)

如果我以 40 美元的价格插入一个新的卖单,数量 = 12

SELECT id, name, price, category
FROM my_table
WHERE price > 40 AND category = 'buy' 
ORDER BY price DESC;
Run Code Online (Sandbox Code Playgroud)

然后在 Python 中,我的逻辑看起来像这样: …

postgresql select

1
推荐指数
1
解决办法
2748
查看次数

标签 统计

postgresql ×2

join ×1

select ×1

sum ×1