如何在 MySQL 中标记给定组中的重复项?
我有以下表结构(在 MySQL 中):
DocID, Code, IsDup, DopOf
,其中 DocID 是唯一的。
值如下:
1,AAAA,nul,nul 2,AAAA,nul,nul 3,AAAA,nul,nul 4,BBBB,nul,nul 5,CCCC,nul,nul 6,CCCC,nul,nul
我想要的是编写一个可以更新表并给出所需结果的过程,如下所示:
1,AAAA,0,0 2,AAAA,1,1 3,AAAA,1,1 4,BBBB,0,0 5,CCCC,0,0 6,CCCC,1,5
IsDup
显示 Doc
是否重复代码
, DupOf
表示原始DocId
。
有谁能够帮助我? 我试图实现这个逻辑,但我被困住了。
我们将非常感谢您的帮助。
谢谢。
I have the following table structure (in MySQL):
DocID, Code, IsDup, DopOf
, where DocID
is Unique.
Values are like :
1,AAAA,nul,nul 2,AAAA,nul,nul 3,AAAA,nul,nul 4,BBBB,nul,nul 5,CCCC,nul,nul 6,CCCC,nul,nul
What I want is to write a procedure which can update the table and give the desired result as:
1,AAAA,0,0 2,AAAA,1,1 3,AAAA,1,1 4,BBBB,0,0 5,CCCC,0,0 6,CCCC,1,5
IsDup
shows whether the Doc
is duplicate or not on the basis of Code
,
and DupOf
indicates the original DocId
.
Can anybody help me? I'm trying to implement the logic, but I'm stuck.
Your help would be highly appreciated.
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果您的表是
MyISAM
,则您应该在(code, docId)
上有一个索引。如果您的表是
InnoDB
并且docId
是PRIMARY KEY
,则您应该在(code)
上有一个索引。If your table is
MyISAM
, you should have an index on(code, docId)
.If your table is
InnoDB
anddocId
is aPRIMARY KEY
, you should have an index on(code)
.