如何匹配SQL Server“LIKE”中的数字。
SpaceName
------------
| New_Space_1
| .
| .
| New_Space_8
| New_Space_9
| New_Space_10
| New_Space_11
| New_Space_SomeString
| New_Space_SomeString1
以上是我的表格内容。
我想只获得以数字字符结尾的记录,即我想要从New_Space_1
到New_Space_11
的记录。
不要New_Space_SomeString
和New_Space_SomeString1
我有这样的疑问。
SELECT SpaceName FROM SpaceTable
WHERE SpaceName LIKE 'New_Space_%'
但这会返回所有记录。
答案 0 :(得分:17)
怎么样
SELECT SpaceName FROM SpaceTable
WHERE SpaceName LIKE 'New[_]Space[_][0-9]%'
我在括号中加下下划线的原因是因为在正则表达式中_表示任何单个字符。请阅读http://msdn.microsoft.com/en-us/library/ms179859.aspx
答案 1 :(得分:8)
来自@SteveKass的这个解决方案非常完美。
SELECT SpaceName FROM SpaceTable WHERE SpaceName LIKE 'New[_]Space[_]%' AND SpaceName NOT LIKE 'New[_]Space[_]%[^0-9]%'