2017-09-13 2 views
-1

これを1つのクエリファイルに入れると、どのようにpgがそれを処理すると約束しますか?pgはクエリファイルのWITH句をサポートしていますか?

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を使用する必要はありますか?私は(ちょうど銀行のIDが1の行を取得

SELECT * FROM balance WHERE bank_id = 1 AND amount = 500(1つのレコードがロックされるようにすべての銀行IDを強制する)、

SELECT * FROM balance WHERE bank_id = 1 FOR UPDATEを次のユースケースを持っているしたいのですが、まだ1がロックされていることを確認、すべての銀行のIDレコードを作ります`

答えて

-1

pg-promiseであるとして、あなたのSQLは、単にサーバーにそれを送ることにより構成されているものを気にしません。無効なご質問は無関係になり

を... /。

+0

感謝を応答するために、I jsutは何でも見つけることができないWITH句を使ってpg約束をしている人の例。あなたの意見では、WITH句は完全に避けることができますか? – Zanko

+0

@ Zankoあなたの質問は 'pg-promise'とは​​何の関係もありません。また、開発者が 'pg-promise'を介して' WITH'クエリを実行するGitHubで見つかる多くの例があります。これはお互いには関係ありません。 –

関連する問題