sql - 按两个条件分组
问题描述
我有一张名为汽车的桌子。它有三列:mark、color、date5。
我需要将该表与汽车颜色和日期在 2005-01-01 之后的汽车分组
select color, count(color), (select color from cars where date5 > date'2005-01-01')
from cars
group by color;
但它计算所有汽车的第三列。
我需要得到三列:1. 颜色 2. 所有颜色的计数 3. 日期在 2005-01-01 之后的所有颜色的计数
第三个条件让我感到困惑。
解决方案
如果您想计算 2005 年 1 月 1 日之后汽车的每种颜色的计数,您应该使用
select color, count(*)
from cars
where date5 > TO_DATE('01/01/2005','dd/mon/yyyy')
group by color;
推荐阅读
- reactjs - 如何修复未捕获的错误:react-chartjs-2 中未实现此方法
- javascript - PhotoSphereViewer:javafx - JavaFX:尝试在标签中显示文本,在新窗口中,按下按钮后
- image-processing - 有没有一种无需机器学习就可以检测几何图案的智能方法?
- pdf - Ghostscript文本提取时间?
- r - 闪亮的 Docker 无法连接到 API/Internet
- python - 重定向到用户个人资料详细信息不正确
- android - 在android上进行双向数据绑定的正确方法是什么?
- python - 将连接错误作为python中的参数的while循环
- jenkins - Jenkins 声明式管道记录一条在 Blue Ocean 中可见的警告消息