用postgre sql查询,字段是字符型的,这些字符串中是否都是由0,1,2,3,4,5,6,7,8,9字符组成
时间: 2024-03-09 16:51:16 浏览: 149
可以使用 PostgreSQL 内置的正则表达式函数 `regexp_matches` 实现该查询。具体的 SQL 查询语句如下:
```sql
SELECT *
FROM your_table
WHERE NOT regexp_matches(your_column, '[^0-9]+', 'g');
```
其中,`your_table` 是要查询的表名,`your_column` 是要查询的字段名。这个查询条件的意思是:只查询字段中全部由数字 0-9 组成的字符串,如果字段中包含其他字符,则不符合条件。
如果需要忽略大小写,则可以在正则表达式中添加标志 'i'。例如:
```sql
SELECT *
FROM your_table
WHERE NOT regexp_matches(your_column, '[^0-9]+', 'gi');
```
这样查询出来的结果中,即使字符串中包含了小写字母或大写字母,也会被认为是符合条件的。
阅读全文