我想将几个表中的数据与一些默认值一起插入到一个表中。
假设我有3个表:
**table1**(col1, col2, col3, col4)
**table2**(col5, col6)
**table3**(col7)
我想
insert in table1.col1 -> table2.col5,
table1.col2 -> table2.col6,
table1.col3 -> table3.col7,
table1.col4 -> 'default_value' for some WHERE condition.
我尝试使用INSERT INTO...SELECT FROM
但是只有当**table1**
的所有值都来自其他表而不是**"default_value"**.
时才允许我输入值我不能使用2个不同的查询来自table1
的列对其有NOT NULL
约束。
任何人都可以帮我解决这个问题吗?
答案 0 :(得分:0)
您还没有显示您尝试过哪些查询,这有助于那些试图帮助您的人避免建议您已尝试过的内容。 然而,尽管不知道你尝试了什么,这应该有用 - 它肯定对我有用。
INSERT INTO table1 (col1, col2, col3, col4)
SELECT t2.first_name, t2.age, t3.salary, 'DEFAULT VALUE'
FROM table2 t2
INNER JOIN
table3 t3
ON t2.rec_id = t3.rec_id