我试图在 mysql 中提出一个正则表达式,它会搜索以字母开头的列。到目前为止,我想出了这个不起作用
SELECT * FROM table WHERE column LIKE REGEXP '[A-Za-z]%'
有什么帮助吗?
SELECT * FROM table WHERE column REGEXP '^[A-Za-z]'
你很接近:
'^[A-Za-z]'
您正在处理正则表达式,因此暂时忘记了正常的 SQL 模式匹配语法。
查看此页面以获取有关正则表达式的更多信息。
由于 REGEXP 不区分大小写,除非与二进制字符串一起使用,因此您可以指定[a-z]
或[A-Z]
。
[^characters]
如果您不希望它以某个字符开头,则可以使用否定字符类,但请注意,未指定的所有其他字符都将匹配。
'^[^A-Za-z]'
SELECT * FROM your_table_name WHERE your_column_name REGEXP '^[a-z]'
尝试这个。
SELECT * FROM table WHERE column LIKE REGEXP '([A-Z]|[a-z])+%'
SELECT * FROM user WHERE password REGEXP '^[a-zA-w]'