mysql,其中字符串以数字结尾

Ely*_*yor 9 mysql

我的表列包含以下值:

id | item
-------------
1  | aaaa11a112
2  | aa1112aa2a
3  | aa11aa1a11
4  | aaa2a222aa
Run Code Online (Sandbox Code Playgroud)

我想只选择项目值以数字结尾的行.有这样的事吗?

select * from table where item like '%number'
Run Code Online (Sandbox Code Playgroud)

chr*_*con 18

你可以使用REGEXP和字符类

select * from table where item REGEXP '[[:digit:]]$'
Run Code Online (Sandbox Code Playgroud)

DEMO

说明:

[[:digit:]] >> Match digit characters
$           >> Match at the end of the string
Run Code Online (Sandbox Code Playgroud)

在括号表达式中(使用[和]编写),[:character_class:]表示与属于该类的所有字符匹配的字符类.


边注:

其他有用的mysql字符类REGEXP,取自文档:

Character Class Name    Meaning
alnum                   Alphanumeric characters
alpha                   Alphabetic characters
blank                   Whitespace characters
cntrl                   Control characters
digit                   Digit characters
graph                   Graphic characters
lower                   Lowercase alphabetic characters
print                   Graphic or space characters
punct                   Punctuation characters
space                   Space, tab, newline, and carriage return
upper                   Uppercase alphabetic characters
xdigit                  Hexadecimal digit characters
Run Code Online (Sandbox Code Playgroud)