查找SQL中递增或递减1的值



我正试图找到一种方法来找到像'1234','12345','9876','7654'等字符串。这些值的数字要么是上的,要么是下的。从3个字符(例如123,321)到10个字符(0123456789,9876543210)

INSERT INTO #TmpTbl 
Values ('12345')
,('45678')
,('44569')
,('987654')
,('748376')
,('123')
,('0123456789')
,('9876543210')

预期结果

  • 12345
  • 45678
  • 987654
  • 123
  • 0123456789
  • 9876543210

您可以使用LIKE来查找模式。例如:

select * 
from t
where '0123456789' like concat('%', a, '%')
or '9876543210' like concat('%', a, '%');

结果:

a
----------
12345
45678
987654
123
0123456789
9876543210

参见示例:db<>fiddle。

最新更新