如何使用DB2中的已定义函数插入表中

时间:2013-12-08 02:23:09

标签: sql db2

我有函数Fn1Fn2Fn3,我的表格包含字段V1V2V3。< / p>

我无法执行以下操作

INSERT INTO Table1(V1, V2, V3) VALUES (  
  SELECT "MyDB"."Fn1"() FROM SYSIBM.SYSDUMMY1,  
  SELECT "MyDB"."Fn2"() FROM SYSIBM.SYSDUMMY1, 
  SELECT "MyDB"."Fn3"() FROM SYSIBM.SYSDUMMY1
);

我收到以下错误:

ERROR: A character, token, or clause is invalid or missing.DB2 SQL Error: SQLCODE=-104, SQLSTATE=42601, SQLERRMC=.;Y1 ,select "MyDB".;WHERE, DRIVER=3.67.26

Error Code: -104

2 个答案:

答案 0 :(得分:0)

检查手册中INSERT语句的语法:它是INSERT INTO ... VALUES (..)INSERT INTO ... SELECT ...。你正试图同时使用它们。

答案 1 :(得分:0)

@mustaccio是对的。试试这个:

INSERT INTO Table1(V1, V2, V3) VALUES (
  ("MyDB"."Fn1"()),
  ("MyDB"."Fn2"()),
  ("MyDB"."Fn3"())
);

Here's你想要实现的简化版本。