[英]Teradata create table from UNION of multi tables error: (3707)
我是Teradata SQL的新手。 我正在嘗試編寫如下查詢
Create table abc as
(
with datasets as
(
select * from tableA
UNION
select * from tableB
) );
我收到一個錯誤:
3707
這是你打算的嗎?
Create table abc as
select * from tableA
UNION
select * from tableB;
使用CTE時,應在FROM
子句中引用CTE。 但是,不需要CTE。
您應該始終顯示確切的錯誤消息,“ Create Table As
的語法具有必需的參數:
Create table abc as
(
select * from tableA
UNION
select * from tableB
) WITH DATA;
您真的需要UNION
嗎? UNION ALL
可以避免DISTINCT處理,因此可以提高性能。
並且不要忘記定義主索引,因為CREATE TABLE AS SELECT將刪除所有索引。 另外,所有列都可以為NULLable。 要解決此問題,最好使用創建表
Create table abc as tableA WITH NO DATA; -- exact copy
其次是
insert into abc
select * from tableA
UNION
select * from tableB
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.