我想在查詢中創建新表並在最後使用它們作爲最終查詢。我不記得語法是什麼,在任何地方都找不到它。 (這裏只是一個基本的例子)。別名POSTGRES選擇語句
phones as
(
SELECT phone_number from customers
)
emails as
(
SELECT emails from customers
)
// do something with both
我想在查詢中創建新表並在最後使用它們作爲最終查詢。我不記得語法是什麼,在任何地方都找不到它。 (這裏只是一個基本的例子)。別名POSTGRES選擇語句
phones as
(
SELECT phone_number from customers
)
emails as
(
SELECT emails from customers
)
// do something with both
您正在尋找CTE's
With phones as
(
SELECT phone_number from customers
)
,emails as
(
SELECT emails from customers
)
select * from phones--/emails
涼爽的感謝。將在10分鐘內接受。我是否需要現在加入以使用所有表中的數據?或者我可以說選擇phones.phone,emails.email –
@WilliamFalcon - 這取決於要求。您當前的示例查詢沒有意義。在下一個問題中添加樣本數據和預期結果。 –
是的,這是一個非常簡單的例子。 as查詢相當複雜,涉及一些連接。這是做一些計算(按用戶每月分組,看看增長率等...) –
您正在尋找一個通用表達式(CTE)。這些使用with
介紹:
with phones as (
SELECT phone_number from customers
),
emails as (
SELECT emails from customers
)
select . . .;
你的榜樣選擇似乎並不特別有用,但我認爲他們只是爲了說明。
https://www.postgresql.org/docs/current/static/queries-with.html –