排除risk_type中的 None: None、 None、none,postgresql怎么实现
时间: 2024-09-24 19:29:09 浏览: 49
在PostgreSQL中,如果你想从`risk_type`列中排除值`None`、`NULL`以及`none`,你可以使用`IS NOT NULL`条件结合`ILIKE`函数来进行模糊匹配。`ILIKE`用于在文本字段上进行大小写不敏感的模式匹配,我们可以将其与空字符串`''`进行比较来排除空值。以下是SQL查询的例子:
```sql
SELECT * FROM your_table
WHERE risk_type IS NOT NULL AND risk_type ILIKE '%none%';
```
这个查询会返回所有`risk_type`不是`NULL`并且不包含"none"(无论大小写)的记录。
如果你想完全排除`None`或`null`这样的明确值,可以修改为:
```sql
SELECT * FROM your_table
WHERE risk_type != 'None' AND risk_type IS NOT NULL;
```
或者
```sql
SELECT * FROM your_table
WHERE COALESCE(risk_type, '') <> '' OR risk_type IS NOT NULL;
```
这里`COALESCE`函数用于将`NULL`转换为空字符串,然后检查是否不等于空字符串。
阅读全文