让我澄清我的问题。我在数据库中有一些如下所示的模式字符串,
0070m6nkfszczw8zzgswgzz8wzgz0
0070m6nkfszczw8zzgswgzz8wzgz3
0070m6nkfszczw8zzgswgzz8wzgza
0070m6nkfszczw8zzgswgzz8wzgzb
0070m6nkfszczw8zzgswgzz8wzgzc
0070m6nkfszczw8zzgswgzz8wzgzd
0070m6nkfszczw8zzgswgzz8wzgzf
0070m6nkfszczw8zzgswgzz8wzgzg
对于输入字符串:
0070m6nkfszczw8zzgswgzz8wzgze
它不在数据库中,但是我只想在将其插入数据库后找到近记录。问题是:我可以按顺序将字符串存储在数据库中吗?我怎样才能得到最接近的呢?为了:0070m6nkfszczw8zzgswgzz8wzgze
上一个是: 0070m6nkfszczw8zzgswgzz8wzgzd
接下来是: 0070m6nkfszczw8zzgswgzz8wzgzf
谢谢
因此,您正在按字母顺序思考。然后获得小于或等于您的值的最大值,然后获得大于或等于您的值的最小值。
select min(string)
from mytable
where string >= @mystring
union
select max(string)
from mytable
where string <= @mystring;
这将找到您要查找的值。如果不存在,它将为您提供邻居。(如果你不想要得到的精确匹配,然后换<=
到<
和>=
对>
和union
对union all
。)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句