hive中with as的用法

2021-10-08 16:20:23 字數 996 閱讀 2199

with...as的用法就相當於join....on的用法

下面展示with怎麼用(資料不用管,縮減版)

with

tmp_order as

(select

sku_id

from detail),

tmp_payment as

(select

sku_id,

payment_count

from refund

)insert overwrite table daycount

select

sku_id,

payment_count,

from

(select

sku_id,

0 payment_count

from tmp_order

union all

select

sku_id,

payment_count

from tmp_payment

);

解釋一下0 payment_count是什麼意思

是這張臨時表沒有 所以用0 payment_count

展示join..on

insert overwrite table daycount

select

a.sku_id,

b.payment_count

from

detail a

join refund b

on a.sku_id=b.sku_id

這樣看顯然join…on更簡單

總結

表少用join…on

表多用with…as

SQL 中With as 的用法

一 with as的含義 with as短語,也叫做子查詢部分 subquery factoring 可以讓你做很多事情,定義乙個sql片斷,該sql片斷會被整個sql語句所用到。有的時候,是為了讓sql語句的可讀性更高些,也有可能是在union all的不同部分,作為提供資料的部分。特別對於uni...

SQL 中With as 的用法

一 with as的含義 with as短語,也叫做子查詢部分 subquery factoring 可以讓你做很多事情,定義乙個sql片斷,該sql片斷會被整個sql語句所用到。有的時候,是為了讓sql語句的可讀性更高些,也有可能是在union all的不同部分,作為提供資料的部分。特別對於uni...

sql中with as的用法

一 with as的含義 with as短語,也叫做子查詢部分 subquery factoring 可以讓你做很多事情,定義乙個sql片斷,該sql片斷會被整個sql語句所用到。有的時候,是為了讓sql語句的可讀性更高些,也有可能是在union all的不同部分,作為提供資料的部分。特別對於uni...