pgsql数据库中查询某个字段有两个不同状态在近12个月的个数
时间: 2024-03-05 21:47:57 浏览: 86
SQL语句查询数据库中重复记录的个数
5星 · 资源好评率100%
你可以使用以下的SQL语句来查询某个字段有两个不同状态在近12个月的个数:
```sql
SELECT DATE_TRUNC('month', date_column) AS month,
COUNT(CASE WHEN status_column='status1' THEN 1 END) AS status1_count,
COUNT(CASE WHEN status_column='status2' THEN 1 END) AS status2_count
FROM table_name
WHERE date_column >= NOW() - INTERVAL '12 months'
GROUP BY month
ORDER BY month;
```
在这个SQL语句中,你需要替换以下的内容:
- `date_column`:需要查询的日期字段名。
- `status_column`:需要查询的状态字段名。
- `status1`和`status2`:需要查询的两个状态值。
- `table_name`:需要查询的表名。
- `12 months`:需要查询的时间范围,可以根据需要进行调整。
这个SQL语句会按月份分组,并统计每个月份内状态为`status1`和`status2`的记录个数。结果会按照月份排序,从最早的月份到最近的月份。需要注意的是,如果某个月份内某个状态没有记录,那么在结果中对应的数量会显示为0。
阅读全文