Mysql SQL-基于多个条件插入数据
我正在尝试根据另一个表中的数据插入多个具有不同数据的行 情景: 我有列Mysql SQL-基于多个条件插入数据,mysql,sql,insert,Mysql,Sql,Insert,我正在尝试根据另一个表中的数据插入多个具有不同数据的行 情景: 我有列tbl1\u action和tbl1\u action date。 我想在tbl2中搜索tbl2\u reviewdate和tbl2\u destroydate中的数据。如果tbl2\u reviewdate中有数据,那么我需要tbl1\u action='review'和tbl1\u actiondate=tbl2\u reviewdate。如果tbl2\u destroydate中有数据,我需要另一行tbl1\u acti
tbl1\u action
和tbl1\u action date
。
我想在tbl2
中搜索tbl2\u reviewdate
和tbl2\u destroydate
中的数据。如果tbl2\u reviewdate
中有数据,那么我需要tbl1\u action='review'
和tbl1\u actiondate=tbl2\u reviewdate
。如果tbl2\u destroydate
中有数据,我需要另一行tbl1\u action='destroy'
和tbl1\u action date=tbl2\u destroydate.
因此,总结所有可能的情况:
If tbl2_ReviewDate IS NULL AND
tbl2_DestroyDate IS NULL
在tbl1中插入一条记录,action和actiondate=NULL
tbl2_ReviewDate IS NOT NULL AND
tbl2_DestroyDate IS NULL
Insert one row with tbl1_action = 'Review' and tbl1_actiondate = tbl2_reviewdate
tbl2_ IS NULL AND
tbl2_DestroyDate IS NOT NULL
Insert one row with tbl1_action = 'Destroy' and tbl1_actiondate = tbl2_destroydate
tbl2_ReviewDate IS NOT NULL AND
tbl2_DestroyDate IS NOT NULL
Insert two rows; One with tbl1_action = 'Destroy' and tbl1_actiondate = tbl2_destroydate and one with tbl1_action = 'Review' and tbl1_actiondate = tbl2_reviewdate.
有可能在一个脚本中完成这一切吗?最好的方法是什么
谢谢你的帮助我想你想要这样的东西:
insert into table1(action, date)
select 'Review', ActionDate
from tbl2
where tbl2.ReviewDate IS NOT NULL
union all
select 'Destroy', DestroyDate
from tbl2
where tbl2.DestroyDate IS NOT NULL;
您还可以通过两个独立的insert
语句来完成此操作