精华内容
下载资源
问答
  • SQL一次查出多个字段的COUNT
    千次阅读
    2021-01-20 02:53:53

    数据库 数据库SQL语句一

    字符和日期 --字符和日期都要包含在单引号中 --字符大小写敏感,日期格式敏感 --默认的日期格式是DD-MON-RR --查询当前系统时间 SQL> select sysdate from d ...

    global name 'validate_on_submit' is not defined错误

    原因就是validate_on_submit()方法是属于form的方法我使用的时候忘了form. 还有一个比较重要的是validate_on_submit()方法是wtf特有的而wtform是没有这 ...

    lnmp初步学习知识整理

    Linux常用30个命令 1.帮助命令 1) man 就是manual的缩写,用来查看系统中自带的各种参考手册(一般linux系统中自带英文手册)! man 命令名 //查看该命令的介绍 2) 命令名 ...

    HTML DOM appendChild() 方法

    • Coffee&lt ...

      修改镜像文件EI.CFG

      一.EI.cfg说明 Windows 7 安装光盘中存在着 SOURCES\EI.CFG 这样一个配置文件.EI.cfg 是特定于 Windows 安装程序的配置文件,用于确定在安装过程中应该使用哪种 ...

      Maven POM.xml详解[转]

    更多相关内容
  • mysql多字段去重,并计数

    千次阅读 2021-01-18 21:29:23
    Mysql版本5.5.42有两表,表结构与数据如下1、goods表CREATE TABLE `goods` (`id` int(10) unsigned NOT NULL,`product` varchar(180) COLLATE utf8mb4_unicode_ci NOT NULL,`size` varchar(180) COLLATE utf8mb4_...

    Mysql版本5.5.42

    有两个表,表结构与数据如下

    1、goods表

    CREATE TABLE `goods` (

    `id` int(10) unsigned NOT NULL,

    `product` varchar(180) COLLATE utf8mb4_unicode_ci NOT NULL,

    `size` varchar(180) COLLATE utf8mb4_unicode_ci NOT NULL,

    `color` varchar(180) COLLATE utf8mb4_unicode_ci NOT NULL,

    `status` enum('0','1') COLLATE utf8mb4_unicode_ci NOT NULL

    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

    INSERT INTO `goods` (`id`, `product`, `size`, `color`, `status`) VALUES

    (8318, '1', '5', '11', '1'),

    (8319, '1', '4', '11', '1'),

    (8320, '1', '3', '11', '1'),

    (8321, '1', '2', '11', '1'),

    (8322, '2', '6', '81', '1'),

    (8323, '2', '5', '81', '1'),

    (8324, '2', '4', '81', '1'),

    (8325, '2', '3', '81', '1'),

    (8326, '2', '2', '81', '1'),

    (8327, '2', '6', '32', '1'),

    (8328, '2', '5', '32', '1'),

    (8329, '2', '4', '32', '1'),

    (8330, '2', '3', '32', '1'),

    (8331, '2', '2', '32', '1'),

    (8332, '1', '6', '32', '1'),

    (8333, '1', '5', '32', '1'),

    (8334, '1', '4', '32', '1'),

    (8335, '1', '3', '32', '1');

    2、product_colors表

    CREATE TABLE `product_colors` (

    `id` int(10) unsigned NOT NULL,

    `product_code` varchar(180) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '商品代码',

    `color_code` varchar(180) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '颜色代码',

    `series_code` varchar(180) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '系列代码'

    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

    INSERT INTO `product_colors` (`id`, `product_code`, `color_code`, `series_code`) VALUES

    (13887, '1', '11', '114'),

    (13888, '2', '81', '115'),

    (13889, '2', '32', '108'),

    (13889, '2', '31', '101'),

    (13891, '3', '18', '117'),

    (13892, '3', '32', '119'),

    (13893, '1', '32', '114');

    需求:要求查询出goods表中存在的product、颜色的series_code类别以及数量,相同颜色和产品为1个数量,不同尺寸不累计。

    例子中的数据 查询出来 应该是

    series_code 114 num 2

    series_code 115 num 1

    series_code 108 num 1

    sql 语句该怎么写?

    参考了下面的答案,下面这个sql能解决我的问题

    select b.series_code,count(1) num

    from product_colors b

    where (b.product_code, b.color_code) in

    (select product, color from goods)

    group by b.series_code;

    感谢所有回答我提问的朋友们。

    展开全文
  • 当SSRQ1-6中任意两个字段有相同时,取SSJB1-6中数值最大的,在对应的级别下计数+1; 当SSRQ1-6中存在不同时,每个对应的SJJB都需要取,在对应的级别下计数+1 例如: ![图片说明]...
  • 怎样对多个字段去重并计数

    千次阅读 2019-04-21 17:26:17
    怎样对多个字段去重并计数
                   

    Distinct可以和Count 一起使用,去重并计数:

    COUNT( { DISTINCT expression} )

    但是一起使用时,后面不能有多个字段:

    
     
    1. //不允许的写法:
    2. select count(distinct col1 , col2 , col3 , .......) from table

    变通的方法:

    一、将去重代码放在后面。

    
     
    1. select count(*) from (select distinct col1 ,col2 , col3 from table A)

    二、把多个字段连成一个字段。

    相当于把多个字段的字符串连接起来: 

    
     
    1. select count(DISTINCT fcode+cast(fread_date as varchar(30))) from my_table

    第二种方法虽然效率不高,但可以简化SQL语句。


    参考:http://www.cnblogs.com/xiepeixing/archive/2012/04/18/2583955.html

               
    展开全文
  • count多个字段去重并分组统计查询

    故障003: 迁移改写MySQL多字段去重计数


    DM技术交流QQ群:940124259

    1. 问题描述

    查询SQL中对count多个字段去重(取唯一值)并分组查询,在达梦数据库中执行报错,此类错误亦是从MySQL迁移至DM数据库产生的,也是因为该SQL语法不符合达梦数据库,故我们需要手工改写此类SQL,以此满足功能需求和语法要求。

    客户现场报错截图:
    在这里插入图片描述


    2. 解决方法

    思路:
    第一步:去重count中统计多个字段的重复记录;
    第二步:对第一步去重后的记录进行分组查询形成一张内嵌子查询表;
    第三步:再将第二步产生的子查询表与原先查询表进行连接查询,即可获得子查询表中目标列作为最后查询结论集的附加列(目标结果列值)。

    改写SQL:

    -- 句型1:group by去重
    SELECT
            a.sp_mechanism_id                        as spMechanismId      ,
            FIRST_VALUE(a.ac_operation_area_name)    as acOperationAreaName,
            FIRST_VALUE(a.sp_mechanism)              as spMechanism        ,
            a.reg_query_model                        as regQueryModel      ,
            FIRST_VALUE(a.ac_target_area_name)       as targetAreaName     ,
            FIRST_VALUE(a.ac_target_mac_ip)          as targetMac          ,
            a.reg_archive_region                     as regArchiveRegion   ,
            SUM(a.ac_skim_num)                       as acSkimNum          ,
           count(a.ac_operation)                    as regApplyNum        ,
    --    count(DISTINCT a.ac_operation, a.reg_id)  as userNum            ,       
            b.userNum,  
            SUM(a.ac_print_num)                      as acPrintNum
    FROM
            AMS_ARCHIVES.t_archives_consult as a join
            (   
               select b.reg_id, b.ac_operation, count(*) as userNum
                  from (
                     select bb.reg_id, bb.ac_operation
                     from AMS_ARCHIVES.t_archives_consult bb
                     where bb.reg_id != 0   -- 这个条件最好跟上,尽量提前过滤掉无用数据
                     group by bb.ac_operation, bb.reg_id  -- 里一层:多个字段去重,两种方式(group by或distinct)
                  ) b  
                  group by b.reg_id, b.ac_operation   --  里二层:分组统计      
                           
            ) b on a.reg_id = b.reg_id and a.ac_operation = b.ac_operation 
    WHERE
            1=1
        AND a.reg_id != 0;
        
        
       
    /***********************************************************************************/     
    -- 句型2:distinct去重
    SELECT
            a.sp_mechanism_id                        as spMechanismId      ,
            FIRST_VALUE(a.ac_operation_area_name)    as acOperationAreaName,
            FIRST_VALUE(a.sp_mechanism)              as spMechanism        ,
            a.reg_query_model                        as regQueryModel      ,
            FIRST_VALUE(a.ac_target_area_name)       as targetAreaName     ,
            FIRST_VALUE(a.ac_target_mac_ip)          as targetMac          ,
            a.reg_archive_region                     as regArchiveRegion   ,
            SUM(a.ac_skim_num)                       as acSkimNum          ,
           count(a.ac_operation)                    as regApplyNum        ,
    --    count(DISTINCT a.ac_operation, a.reg_id)  as userNum            ,       
            b.userNum,  
            SUM(a.ac_print_num)                      as acPrintNum
    FROM
            AMS_ARCHIVES.t_archives_consult as a join
            (   
               select b.reg_id, b.ac_operation, count(*) as userNum
                  from (
                     select distinct bb.reg_id, bb.ac_operation
                     from AMS_ARCHIVES.t_archives_consult bb
                     where bb.reg_id != 0   -- 这个条件最好跟上,尽量提前过滤掉无用数据                 
                  ) b  
                  group by b.reg_id, b.ac_operation   --  里二层:分组统计      
                           
            ) b on a.reg_id = b.reg_id and a.ac_operation = b.ac_operation 
    WHERE
            1=1
        AND a.reg_id != 0;
        
    

    改写SQL后正确输出结果截图:
    在这里插入图片描述

    展开全文
  • T-SQL对多个字段去重并计数

    千次阅读 2018-04-16 16:06:51
    定义和用法可以一同使用 DISTINCT 和 COUNT 关键词,来计算非重复结果的数目。语法SELECT COUNT(DISTINCT column(s)) FROM table例子注意:下面的例子仅适用于 ORACLE 和 Microsoft SQL server,不能用于 Microsoft ...
  • 本节主要介绍了SQL-ORDER BY 多字段排序包括升序、降序,下面有示例,大家可以参考下
  • SELECT AF_DEPARTMENT, dept.FULLNAME, SUM(CASE AF_CLASSIFY WHEN 1 THEN 1 ELSE 0 END) AS 'o_standard', (COUNT(AF_DEPARTMENT) - SUM(CASE AF_CLASSIFY WHEN 1 ...
  • 查询指定时间范围内,某个字段出现的次数(去重) value_count: 计数 cardinality: 去重计数 avg: 平均 sum: 求和 max: 最大 min: 最小值 percentiles: 百分比 top_hits: 简单来说就是聚合分组后从每一组...
  • 表中有id和name 两个字段,查询出name重复的所有数据select * from xi a where (a.username) in (select username from xi group by username having count(*) > 1)2、查询出所有数据进行分组之后,和重复数据的...
  • 一行数据中的 多字段根据连接符拼接 concat_ws(':',aaa,bbb) ...如果要将多个字段拼接成一个: string_agg(concat_ws(':',aaa,bbb),' \r\n ' order by aaa asc) as xxx 结...
  • sql按照多个字段分组统计记录条数

    千次阅读 2020-06-05 15:32:18
    例如:统计每人的记录条数,实际上是按照年级,班级,个人统计记录条数,无关分数和分数类型字段 sql如下: SELECT personid , classnum , gradenum , count ( *) AS num FROM ZZZ_SCORE GROUP BY personid, class...
  • 多字段计数 //统计年龄和性别相同数 List userList = new ArrayList(); //lambda表达式实现 Map ageCountMap = userList.stream().collect(Collectors.groupingBy(x -> x.getAge() + "#" + x.getSex() , ...
  • * 用于统计的 */ @Data public class ComputeGroupByDTO { /** * 总条数 */ private long totalCount; /** * 总的工作小时数 */ private Double dueHourSum; /** * 真实的小时数 */ private ...
  • 巧用Hive自带函数进行多字段分别去重计数统计 1-group by 和 distinct 大前提:大表统计能使用group by就不要使用distinct!! 尤其是在数据量非常大的时候,distinct会将所有的统计信息加载到一reducer里...
  • sql数据库多字段求和

    千次阅读 2021-01-19 06:34:36
    上一篇:SQL Server2005杂谈(3):四排名函数(row_number、rank、dense_rank和ntile)的比较 最近做一项目,遇到一在分组的情况下,将某一列的字段值(varchar类型)连接起来的问题,类似于sum函数对i......
  • 如下sql:SELECT id,GROUP_CONCAT(DISTINCT str) as str from test GROUP BY id相关知识点GROUP_CONCATGROUP_CONCAT([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator ‘分隔符'])多个值拆分展示...
  • SQL server 统计不同字段值以及

    千次阅读 2020-06-08 14:23:03
    select distinct(YEAR(A_GD_DATE)) AS A_GD_DATE,COUNT(1) as count from V_Search Group By YEAR(A_GD_DATE) Having Count(1) > 1 order by YEAR(A_GD_DATE) desc
  • Java8的groupingBy实现集合的分组,类似Mysql的group by分组功能,注意得到的是一map对集合按照单个属性分组、分组计数、排序List items =Arrays.asList("apple", "apple", "banana","apple", "orange", "banana",...
  • mysql 多字段分组统计

    千次阅读 2022-03-15 16:23:18
    语法:group by 字段 示例:select deploy_env_name,count(deploy_env_id) '云服务商数' from system_area_global where delete_status='NORMAL' group by deploy_env_id,deploy_env_name; 解释:根据deploy_env_...
  • mysql处理单字段多值分割和合并

    千次阅读 2021-01-15 22:18:07
    多个值合并展示 现在我们有如图一到图二的需求 怎么做? 如下sql: SELECT id,GROUP_CONCAT(DISTINCT str) as str from test GROUP BY id 相关知识点 GROUP_CONCAT GROUP_CONCAT([DISTINCT] 要连接的字段 [Order BY...
  • oracle多字段下分组统计

    千次阅读 2019-12-03 16:04:30
    案例:在查询每事项id的同时,对事项所属company下的所有事项进行统计 一、group by 说明:group by company:对company进行分组,需要注意的是group by后面必须要带着除聚合函数外所有要查询的列 SELECT id,...
  • SQL 统计同一字段不同的个数

    千次阅读 2021-10-13 00:08:03
    已知数据表test如下 ...(1)大多数情况下,我们遇到的问题是根据分组结果,统计每分组的个数,其语法如下,此语法只能统计所有的记录数,无法根据同一字段的不同统计 SELECT COUNT(*) FRO.
  • 在平时的开发任务中我们经常会用到MYSQL的GROUP BY分组, 用来获取数据表中以分组字段为依据的统计数据。比如有一学生选课表,表结构如下:Table: Subject_SelectionSubject Semester Attendee-------------------...
  • ES 多字段聚集分组数统计

    千次阅读 2020-09-18 14:30:58
    } } public static RestHighLevelClient getClient() { // 如果有多个从节点可以持续在内部new多个HttpHost,参数1是ip,参数2是HTTP端口,参数3是通信协议 RestClientBuilder builder = RestClient.builder(new ...
  • Elasticsearch Aggregation 多个字段分组统计 Java API实现现有索引数据:index:schooltype:student---------------------------------------------------{"grade":"1", "class":&...
  • 文章仅为记录个人学习中遇到的问题,以及参考了各大神的博客,以此记录个人的知识漏洞,文章仅留下大神博客的地址,方便自己以后查找,如有不合适,联系我立即删除。 ... ...
  • 使用lambda表达式分别 根据 单个字段、多个字段,分组求和示意图:1、根据 单个字段,分组求和:根据2019这个字段,计算一个list集合里,同属于2019的某个字段累加和2、根据 多个字段,分组求和:(1)先根据2019这个...
  • 这篇文章主要介绍了java8 集合 多字段 分组 统计数代码,具有很好的参考价值,希望对大家有所帮助。 1.user实体 package com.demo.dto; public class User { private Integer id; private String userName; ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 115,847
精华内容 46,338
关键字:

多个字段值计数