MySQL - If It Starts With A Number Or Special Character(MySQL - 如果它以数字或特殊字符开头)
问题描述
SELECT *从`线程`论坛 ID 不在 (1,2,3) 和 IF( LEFT( title, 1) = '#', 1, 0) 中按标题 ASC 排序我有这个查询,如果它以# 开头,它将选择某些内容.我想要做的是,如果 # 作为一个值给出,它将查找数字和特殊字符.或者任何不是普通字母的东西.
我该怎么做?
如果要选择所有标题"不以字母开头的行,请使用 REGEXP:
SELECT *从线程论坛 ID 不在的地方 (1,2,3)和标题不是正则表达式 '^[[[:alpha:]]'按标题 ASC 排序- NOT 的意思是不"(显然 ;))
- ^ 表示以"开头
- [[:alpha:]] 表示仅限字母字符"
在 MySQL 手册中查找有关 REGEXP 的更多信息.>
SELECT *
FROM `thread`
WHERE forumid NOT IN (1,2,3) AND IF( LEFT( title, 1) = '#', 1, 0)
ORDER BY title ASC
I have this query which will select something if it starts with a #. What I want to do is if # is given as a value it will look for numbers and special characters. Or anything that is not a normal letter.
How would I do this?
If you want to select all the rows whose "title" does not begin with a letter, use REGEXP:
SELECT *
FROM thread
WHERE forumid NOT IN (1,2,3)
AND title NOT REGEXP '^[[:alpha:]]'
ORDER BY title ASC
- NOT means "not" (obviously ;))
- ^ means "starts with"
- [[:alpha:]] means "alphabetic characters only"
Find more about REGEXP in MySQL's manual.
这篇关于MySQL - 如果它以数字或特殊字符开头的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:MySQL - 如果它以数字或特殊字符开头
基础教程推荐
- 将 SQL Server DateTime 列迁移到 DateTimeOffset 2021-01-01
- 如何使用 mysql.connector 禁用查询缓存 2022-01-01
- SQL Server 实例在登录协商期间返回无效或不受支持的协议版本 2021-01-01
- SSMS 中的权限问题:“对象 'extended_properties'、数据库 'mssqlsystem_resource'、... 错误 229)上的 SELECT 权限被拒绝" 2022-01-01
- 需要 MySQL 5.1 中的抽象触发器来更新审计日志 2021-01-01
- SQL:使用来自具有相同列名的两个表中的数据... 2021-01-01
- 是否可以执行按位分组功能? 2021-01-01
- 无法解决整理冲突 2021-01-01
- 在 SQL 中连接多个表 2021-01-01
- SQL 效率:WHERE IN 子查询 vs. JOIN 然后 GROUP 2021-01-01
