我一直在想办法做主题建议: 假设给出了一个整数数组列表,例如1,3,5,并在如下表中我有一些记录存在:
categoryid userid
1 2
2 2
3 2
哪个 categoryid 和 userid 一起构成主键。并且使用id = 2的用户给出的数组列表,我想删除列表中没有的categoryid的记录,这是2.然后保留那些在列表中,这是3,最后插入那些不在表格,即5.操作后的表格如下所示:
categoryid userid
1 2
3 2
5 2
除了简单地删除userid = 2的所有记录,并根据数组列表插入新记录之外,还有更好的方法吗?
非常感谢!
答案 0 :(得分:0)
正如您所说,您希望执行两项主要操作DELETE
和INSERT
。您不能在一个查询中执行这些操作,因此您至少需要两个查询。另一方面,您可以编写用于删除的sql查询,并以一种智能方式插入所有删除仅在一个查询中完成(通过对不同的值使用OR)并在一个批处理查询中插入。