Databricks DELTA CTAS with LOCATION using %sql



DELTA没有CREATE TABLE LIKE。它确实有CTAS

我只想复制表的定义,但也要指定LOCATION

例如,这不起作用:

CREATE TABLE IF NOT EXISTS NEW_CUSTOMER_FEED 
AS SELECT * from NEW_CUSTOMER_FEED WHERE 1 = 0 
LOCATION '/atRest/data'

我错过了什么?

如果检查CREATE TABLE USING的语法,则会发现AS SELECT ...应该是所有选项之后的最后一个子句。所以在你的情况下,它应该是

CREATE TABLE IF NOT EXISTS NEW_CUSTOMER_FEED 
LOCATION '/atRest/data'
AS SELECT * from NEW_CUSTOMER_FEED WHERE 1 = 0 

第页。S.不用WHERE 1=0,你可以只做LIMIT 0。。。