Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql Teradata是否支持-Multiple With子句?_Sql_Teradata_With Clause - Fatal编程技术网

Sql Teradata是否支持-Multiple With子句?

Sql Teradata是否支持-Multiple With子句?,sql,teradata,with-clause,Sql,Teradata,With Clause,正在尝试在SqlAssistant v 15.x Teradata中执行: WITH TEMP1 (EMP_ID,E_NAME,E_SAL) AS (WITH TEMP (EMP_ID,E_NAME,E_SAL) AS (SELECT EMP_ID,E_NAME,E_SAL FROM EMP_TABLE_TEST) SELECT EMP_ID,E_NAME,E_SAL FROM TEMP) SELECT EMP_ID,E_NAME,E_SAL FROM TEMP1 错误:选择失败。6926

正在尝试在SqlAssistant v 15.x Teradata中执行:

WITH   TEMP1 (EMP_ID,E_NAME,E_SAL) AS (WITH TEMP (EMP_ID,E_NAME,E_SAL) AS (SELECT EMP_ID,E_NAME,E_SAL FROM EMP_TABLE_TEST)
SELECT EMP_ID,E_NAME,E_SAL FROM TEMP) SELECT EMP_ID,E_NAME,E_SAL FROM TEMP1
错误:选择失败。6926:定义、视图、触发器或存储过程

WITH TEMP (EMP_ID,E_NAME,E_SAL) AS (SELECT EMP_ID,E_NAME,E_SAL FROM EMP_TABLE_TEST ) , TEMP1  (EMP_ID,E_NAME,E_SAL) AS (
SELECT EMP_ID,E_NAME,E_SAL FROM TEMP) SELECT  EMP_ID,E_NAME,E_SAL FROM TEMP1
错误:选择失败。3807:对象“TEMP”不存在

Teradata真的支持多WITH子句还是WITH IN WITH子句


我听说14.x更高版本支持它,但15.x不支持它。

语法不同,与其他数据库中的语法相同 t1为…,t2为…,t3为。。。选择

目前,参考顺序是颠倒的- t2可指t3,t1可指t2和t3。
TD16将支持正确的顺序。

这在Teradata 16中已得到修复。请参阅第2章发布摘要

以前,当非递归WITH子句定义多个CTE时,CTE只能引用 WITH条款中的后续CTE。现在,CTE可以在中引用前面或后面的CTE 带子句


从Teradata第16版发布摘要中,您尝试过谷歌吗?这是一个查找答案的好工具。我希望15.x将支持查询。。但它不是……我可以吗?t1为从ABC中选择..,t2为从t1中选择..,t3为选择。。从t2开始。从t3中选择。我的要求是这样的…?正如我写的,你应该改变顺序:t3为…,t2为…,t1为。。。谢谢杜杜·马尔科维茨,你的回答对我很有用。。如果teradata能够支持Netezza、PostGre等顺序,那就更好了。。