【发布时间】:2017-09-13 13:23:31
【问题描述】:
如果我把它放在一个查询文件中,pg promise 将如何处理它?
WITH regional_sales AS (
SELECT region, SUM(amount) AS total_sales
FROM orders
GROUP BY region
), top_regions AS (
SELECT region
FROM regional_sales
WHERE total_sales > (SELECT SUM(total_sales)/10 FROM regional_sales)
)
SELECT region,
product,
SUM(quantity) AS product_units,
SUM(amount) AS product_sales
FROM orders
WHERE region IN (SELECT region FROM top_regions)
GROUP BY region, product;
有必要使用 WITH 吗?我想有以下用例,
SELECT * FROM balance WHERE bank_id = 1 FOR UPDATE(强制锁定所有bank id 1记录)
SELECT * FROM balance WHERE bank_id = 1 AND amount = 500(只获取银行 ID 为 1 的行,但仍确保所有银行 ID 记录 1 都已锁定`
【问题讨论】:
标签: pg-promise