SQL中的条件插入语句
Posted
技术标签:
【中文标题】SQL中的条件插入语句【英文标题】:Conditional insert statement in SQL 【发布时间】:2016-04-18 08:33:07 【问题描述】:我有一个INSERT
语句,我需要从另一个表中填充一列emp_id
。我的 SQL 如下所示,但不起作用。
任何帮助将不胜感激。请注意,这只是一个独立的 SQL,而不是任何 plsql 的一部分。
INSERT INTO employee_demo (emp_id, emp_name, salary, created_by, created_dt, status)
SELECT
emp_id
FROM
employee
WHERE
emp_country IN ('Austria', 'Belgium', 'France', 'Spain'), 'John Brown', '10000', 2, sysdate, 'A';
【问题讨论】:
【参考方案1】:试试这个
INSERT INTO employee_demo (emp_id, emp_name, salary, created_by, created_dt, status)
select emp_id, 'John Brown', '10000', 2, sysdate, 'A'
from employee where emp_country IN('Austria', 'Belgium', 'France', 'Spain');
【讨论】:
【参考方案2】:你可以试试这个:
INSERT INTO employee_demo (emp_id, emp_name, salary, created_by, created_dt, status)
select emp_id, 'John Brown' as emp_name, 10000 as salary, 2 as created_by, sysdate as created_dt, 'A' as status from employee where emp_country IN('Austria', 'Belgium', 'France', 'Spain');
【讨论】:
以上是关于SQL中的条件插入语句的主要内容,如果未能解决你的问题,请参考以下文章
mysql中sql语句查询的同时根据条件将数据插入到另一个表的做法?