dashDB:使用 select 插入生成的默认列
dashDB: insert into generated default column using select
我有一个简单的测试table
CREATE TABLE TEST (
KEY INTEGER PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (START WITH 1, INCREMENT BY 1),
INTENTS VARCHAR(255),
NO_FOUND SMALLINT );
然后我尝试使用 dashDB 的 sql 仪表板中的以下命令将数据插入此 table。
Insert into table from (select item1,item2,item3 from TEST2 where some_condition );
但是我似乎无法让命令不 return 出错。
已尝试使用 db2 'DEFAULT' 和 '0'(整数的默认值),甚至 NULL 作为 item1 的值。
也尝试过使用值插入,但随后列标题导致系统报告多个值returned。
也试过'OVERRIDING USER VALUE'
但这会抱怨找不到 JOIN 元素。
欢迎提出任何想法。
我会尝试这样的事情:
Insert into test(intents,no_found)
(select item2,item3 from TEST2 where some_condition );
您指定三列中只有两列接收值,生成了 KEY 列。因此,您只 select 两个相关的列。
我有一个简单的测试table
CREATE TABLE TEST (
KEY INTEGER PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (START WITH 1, INCREMENT BY 1),
INTENTS VARCHAR(255),
NO_FOUND SMALLINT );
然后我尝试使用 dashDB 的 sql 仪表板中的以下命令将数据插入此 table。
Insert into table from (select item1,item2,item3 from TEST2 where some_condition );
但是我似乎无法让命令不 return 出错。 已尝试使用 db2 'DEFAULT' 和 '0'(整数的默认值),甚至 NULL 作为 item1 的值。
也尝试过使用值插入,但随后列标题导致系统报告多个值returned。
也试过'OVERRIDING USER VALUE' 但这会抱怨找不到 JOIN 元素。
欢迎提出任何想法。
我会尝试这样的事情:
Insert into test(intents,no_found)
(select item2,item3 from TEST2 where some_condition );
您指定三列中只有两列接收值,生成了 KEY 列。因此,您只 select 两个相关的列。