sql regexp 正则表达式 校验第一位是数字0-9或者不为I、O、Z、S、V的大写字母
时间: 2023-09-20 19:04:49 浏览: 280
你可以使用 SQL 的正则表达式函数来校验第一位是否为数字 0-9 或者不是 I、O、Z、S、V 的大写字母。下面是一个示例的 SQL 查询:
```sql
SELECT *
FROM your_table
WHERE your_column REGEXP '^[0-9A-HJ-NP-TV-Z].*';
```
在这个查询中,`your_table` 是你要查询的表名,`your_column` 是要校验的列名。
正则表达式 `^[0-9A-HJ-NP-TV-Z].*` 的含义是:
- `^` 表示从字符串的开头开始匹配。
- `[0-9A-HJ-NP-TV-Z]` 表示匹配数字 0-9 或者不是 I、O、Z、S、V 的大写字母。
- `.*` 表示匹配任意字符零次或多次。
这样的查询将返回以满足条件的行。你可以根据实际情况替换 `your_table` 和 `your_column`。
相关问题
sql统一社会信用代码校验
在SQL中,可以使用正则表达式来实现统一社会信用代码的校验。以下是一个示例代码:
```sql
SELECT *
FROM your_table
WHERE your_column REGEXP '^[0-9A-Z]{18}$';
```
解释一下这段代码:
- `your_table` 和 `your_column` 分别代表你的表名和列名,需要替换为你实际使用的名称。
- `^[0-9A-Z]{18}$` 是一个正则表达式,表示字符串必须由 18 位数字或大写字母组成,且开头和结尾不能有其他字符。
通过使用这个正则表达式,可以在SQL中实现统一社会信用代码的校验。
阅读全文