我有一个在cell_id(integer)字段中有重复值的表。
我想删除“n+1”记录与“n”值相同的记录
这样我就不会在相邻/连续的记录中有重复的值。
以前
id | user_id | cell_id
25 | 5973 | 6051
26 | 5973 | 6051
27 | 5973 | 6051
28 | 5973 | 100
29 | 5973 | 256
30 | 5973 | 256
31 | 5973 | 6051
32 | 5973 | 6051
之后
id | user_id | cell_id
25 | 5973 | 6051
28 | 5973 | 100
29 | 5973 | 256
31 | 5973 | 6051
最佳答案
我只需要使用join
,它通过delete
来表示:
delete from t
using t t2
where t2.cell_id = t.cell_id and t2.user_id = t.user_id and
t2.id = t.id + 1;
关于sql - 如果表中的下一条记录与特定字段中的值相同,如何删除一条记录,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55939985/