count distinct 结合
各位大佬,小弟现在有一问题如下:
表名:vehicle(车辆信息表)
字段:id,vehicletype(车辆类型),vehiclecode(车牌号),company(所属单位)
目的:这个表里面统计出每个单位所拥有的车辆数,即执行sql后得出如下结果,
单位名称 车辆数
-------------------------------------------
公交第一公司 56
第一汽车运输公司 72
西湖长途运输公司 32
条件:1、由于同一个车辆可以在同一个单位登记多次,要求过滤掉重复的车辆,
通过(vehicletype+vehiclecode)来唯一确定一辆车,即当vehicletype和vehiclecode都相同的
时候,才是同一辆车;2、所属单位是不确定的,即数据库里有哪些单位,就显示那些单位的数
据
sql:我写的sql如下:
select company,count(distinct vehicletype,vehiclecode)
from vehicle
group by company
呵呵,这条语句在oracle里是不能执行的,就因为count(distinct vehicletype,vehiclecode)这段,好像在count()方法里的distinct后面只能跟一个字段,超过一个就会报错。
表名:vehicle(车辆信息表)
字段:id,vehicletype(车辆类型),vehiclecode(车牌号),company(所属单位)
目的:这个表里面统计出每个单位所拥有的车辆数,即执行sql后得出如下结果,
单位名称 车辆数
-------------------------------------------
公交第一公司 56
第一汽车运输公司 72
西湖长途运输公司 32
条件:1、由于同一个车辆可以在同一个单位登记多次,要求过滤掉重复的车辆,
通过(vehicletype+vehiclecode)来唯一确定一辆车,即当vehicletype和vehiclecode都相同的
时候,才是同一辆车;2、所属单位是不确定的,即数据库里有哪些单位,就显示那些单位的数
据
sql:我写的sql如下:
select company,count(distinct vehicletype,vehiclecode)
from vehicle
group by company
呵呵,这条语句在oracle里是不能执行的,就因为count(distinct vehicletype,vehiclecode)这段,好像在count()方法里的distinct后面只能跟一个字段,超过一个就会报错。
...全文
相关推荐
MySQL中distinct和count(*)的使用方法比较
计算不重复记录数量:`SELECT COUNT(DISTINCT id) FROM tablename;` 这个查询将返回 `tablename` 表中唯一 `id` 值的数量。2.
SQL 中 GROUPING SETS 结合多个 COUNT(DISTINCT) 的数据膨胀问题与优化实践
在中,数据膨胀指中间计算结果(如哈希表、临时数据)因分组组合和去重操作的叠加效应,导致数据量远超原始输入的现象。原始数据量:1 亿条订单记录。膨胀后中间数据量:可能达到数十亿条。在 SQL 中使用结合多个时,数据膨胀问题的本质是组合爆炸与去重成本叠加的共同作用。通过预聚合、分步计算或近似计数等方案,可有效缓解性能瓶颈。实际场景中需结合数据规模、精确性要求和计算资源综合权衡,选择最优策略。
使用GROUP BY的时候如何统计记录条数 COUNT(*) DISTINCT
所以正确的查询应该是:```sqlSELECT COUNT(DISTINCT email, passwords) FROM test_users;```这将返回不重复的`email`和`passwords
mysql中distinct用法【SQL中distinct的用法】.docx
COUNT 统计使用 DISTINCT 关键字可以与 COUNT 函数结合使用,以统计表中唯一值的数量。
Mongodb聚合函数count、distinct、group如何实现数据聚合操作
,`count` 方法还可以与 `limit` 和 `skip` 结合使用,以便在查询中应用分页或跳过指定数量的文档。


