我有一个table1包含4列
AssociateId, chk1, chk2, chk3
和另一个表(table2)包含相同的4列。
chk1, chk2, chk3
如何使用SQL Server 2008?
答案 0 :(得分:0)
您可以使用交易。首先在table2中插入记录,如
Insert into table2 (column1,column2,column3)
select column1, column2,column3 from table1
where column1 ='YES' and column2 ='YES' and column3 ='YES';
然后你可以根据相同的条件从table1中删除你的记录。提交你的交易。
答案 1 :(得分:0)
如果我对你的问题有正确的解释,我认为这对你有用:
对于table1中的insert,您可以运行此sql语句:
插入table2 chk1,chk2,chk3 值(从表1中选择chk1,chk2,chk3,其中chk1 ='是'和chk2 ='是'和chk3 ='是')
并删除table1中的记录
从table1中删除chk1 =' yes'和chk2 ='是'和chk3 ='是'
答案 2 :(得分:0)
我认为第二个条件的翻译如下图所示:
如果Table1包含如下记录,
+-------------+------+------+------+
| AssociateId | chk1 | chk2 | chk2 |
+-------------+------+------+------+
| 01 | yes | yes | yes |
| 02 | yes | yes | yes |
| 03 | no | no | yes |
+-------------+------+------+------+
只有这样,具有AssociateId = 01,02的记录才应复制到Table2
您可以使用纯SQL在table2中实现条件INSERT,但在同一SQL查询中无法对table1执行额外的DELETE操作。
否则,创建一个存储过程并在事务中放入insert和delete查询。