【发布时间】:2016-04-24 09:25:55
【问题描述】:
我有一个如下图所示的数据库
ID color number code
102966 red 1 9f6606069f9b999b
102968 red 1 9f6606069f9b999b
102967 red 1 9f0606069f9f9f9f
102969 red 1 9f0606069f9f9f9f
103630 red 1 bbff9f0f8fdc9f7e
101582 red 1 bbff9b0fcf9f99d9
102000 red 1 99fd9f0fab999fff
101603 red 1 bbff9f0d8f9d96df
102016 red 1 bbff9900c09999df
此表有超过 4000 个条目。 我使用
得到了这个输出Select * from mytable order by code asc
现在我希望输出为 Id-Id-Id....,其中代码相似。 所以对于给定的 sn-p 它应该像
102966-102968
102967-102969
所以我希望那些记录是相似的,它们的代码应该是这样的。 请帮忙。
【问题讨论】:
-
折叠成范围并不总是一件小事。如果某些数字被跳过,您将无法执行简单的
MIN()和MAX()。 -
“相似”是什么意思?例如,为什么
101603和102016相关,即使它们没有相同的代码?如果存在三个或更多具有“相似”代码的 ID,它们应该显示为 ID-ID-ID-... 还是仅用于对?没有配对的 ID 是否应该从列表中排除?
标签: mysql sql database stored-procedures