插入一些带常量的变量列

时间:2012-12-28 19:04:23

标签: sql variables insert constants

我想用我的代码做的是在test_table中插入一些可变行数,其中source_table中的'policy'匹配policy_custsgt中的'bond_ser',source_table中的'SNL_ID'匹配raw_table中的'inst_key'。

我希望它插入serial_number和ID以及其他一些常量。我可以让它插入serial_number和ID就好了,但是每次从其他表中插入变量时,如何让它在表的其他字段中添加一些常量?

这是我目前拥有的代码,如果我从第一行删除“'122812','999999','myname'”它工作正常,但只会填充每个插入的表格的serial_number和ID列。

INSERT INTO test_table(serial_number, ID, '122812', '999999', 'myname')
SELECT policy, SNL_ID
FROM source_table
WHERE (policy IN (SELECT bond_ser from policy_custsgt)) AND 
(SNL_ID in (select inst_key from raw_table))

谢谢!

1 个答案:

答案 0 :(得分:1)

当然,我看过简单的解决方案。我需要做的就是将我想要的那些常量从INSERT语句移到SELECT语句中,并在INSERT中添加列名:

INSERT INTO test_table(serial_number, ID, starting_date, ending_date, user_id)
SELECT policy, SNL_ID, '122812', '999999', 'myname'
FROM source_table
WHERE (policy IN (SELECT bond_ser from policy_custsgt)) AND 
(SNL_ID in (select inst_key from raw_table))