[英]Spark SQL - How can I create a temporary table with hardcoded values?
我想創建一個硬編碼表,以便可以將其用作其他地方的左連接。
Color
Red
Blue
Green
Yellow
我嘗試了很多組合,比如
with TempTable as (
select * from ("red","blue","green","yellow") as color
)
但這似乎不起作用
您可以使用內聯表
SELECT * from VALUES ("Red"),("Blue"), ("Green"), ("Yellow") as Colors (color)
作為公用表表達式 (CTE)的示例:
WITH colors as (
SELECT * from VALUES ("Red"),("Blue"), ("Green"), ("Yellow") as Colors (color)
)
SELECT
tbl1.*,
colors.color
FROM
tbl1
LEFT JOIN
colors ON tbl1.color = colors.color
作為子查詢的示例:
SELECT
tbl1.*,
colors.color
FROM
tbl1
LEFT JOIN
(SELECT * from VALUES ("Red"),("Blue"), ("Green"), ("Yellow") as Colors (color)) colors
ON tbl1.color = colors.color
create table colors AS
SELECT * from VALUES ("Red"),("Blue"), ("Green"), ("Yellow") as Colors (color)
然后您可以將其作為常規表查詢
您還可以創建臨時視圖:
create or replace temp view TempTable as (
select * from values ('Red'), ('Blue'), ('Green'), ('Yellow')
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.