问题:项目中需要批量插入一个select出来的结果集,如果被插入的表里原本就有某条记录的时候不能重复插入的SQL(DB2)。 环境描述:1)有两个表,加一些限制条件后,从tableNameB中select出一个结果集,再将其不重复地插入到tableNameA表中去。2)tableNameB表中没有主键,三个字段A,B,C能够唯一确定一条记录。 解决方案:1)从talbeNameB中加上限制条件后select出一个结果集。2)将这个结果集与被插入表进行左外连接。3)加上这三个字段相等的限制,如果关联不为null,表示被插入表中有这行记录;否则,表示tableNameA表中没有这行记录,可以进 ...
问题:在项目开发中,我们有时候需要根据一些限制条件查询出一个结果集后,再将这个结果集的比如前10行进行某一update操作,后10行再进行另一个update操作。 解决方案:1)根据限制条件查询出结果集(该结果集应该以其主键进行排序),在该结果集上给各行记录进行编号。2)根据各行记录的编号取出一次取出前10行的记录或后10行的记录。3)进行各自的update操作。 参考实现:以下将以我在项目中多次用到的SQL为例。代码如下:update tableName b set b.A=2 ,b.B=current date  --B字段为日期类型where exists ( & ...
crabdave
搜索本博客
最新评论