ORACLE判断表中某字段是否都是数字或者小数或者负数
时间: 2023-06-10 17:08:29 浏览: 261
Oracle中判断字段是否为数字
5星 · 资源好评率100%
可以使用正则表达式来判断某个字段是否只包含数字、小数或负数。
例如,假设要判断表`my_table`中`my_column`字段的值是否只包含数字、小数或负数,可以使用以下SQL语句:
```
SELECT *
FROM my_table
WHERE REGEXP_LIKE(my_column, '^-?\d+(\.\d+)?$');
```
其中,`REGEXP_LIKE`函数用于判断字符串是否匹配指定的正则表达式。正则表达式`^-?\d+(\.\d+)?$`表示:
- `^`:匹配字符串的开头
- `-?`:可选的负号
- `\d+`:至少一个数字
- `(\.\d+)?`:可选的小数部分,包括小数点和至少一个数字
- `$`:匹配字符串的结尾
因此,该正则表达式可以匹配以下字符串:
- `123`
- `-456.78`
- `0.9`
如果`my_column`字段中的所有值都满足上述条件,那么上述SQL语句将返回所有行。如果存在不满足条件的值,则返回空结果集。
阅读全文