[英]Wildcard of Number in SQL Server
How to match numbers in SQL Server 'LIKE'. 如何匹配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
Above is my table contents. 以上是我的表格内容。 I want to get only records ending with Numeric chars, ie I want the records from
New_Space_1
to New_Space_11
. 我想只获得以Numeric字符结尾的记录,即我想要从
New_Space_1
到New_Space_11
的记录。
Don't want New_Space_SomeString
and New_Space_SomeString1
不想要
New_Space_SomeString
和New_Space_SomeString1
I have some query like this. 我有这样的问题。
SELECT SpaceName FROM SpaceTable
WHERE SpaceName LIKE 'New_Space_%'
But this returns all records. 但这会返回所有记录。
what about 关于什么
SELECT SpaceName FROM SpaceTable
WHERE SpaceName LIKE 'New[_]Space[_][0-9]%'
The reason I put underscore in brackets is because in a regular expression _ means Any single character. 我在括号中加下下划线的原因是因为在正则表达式中_表示任何单个字符。 Read up on like here http://msdn.microsoft.com/en-us/library/ms179859.aspx
请阅读http://msdn.microsoft.com/en-us/library/ms179859.aspx
来自@SteveKass的这个解决方案非常完美。
SELECT SpaceName FROM SpaceTable WHERE SpaceName LIKE 'New[_]Space[_]%' AND SpaceName NOT LIKE 'New[_]Space[_]%[^0-9]%'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.