zoukankan      html  css  js  c++  java
  • sql根据多字段分组并查询每组内top1

     

    1.如下表格,查询2017年Q1季度的从a_country发往其他城市的货量最高的公司,并输出货量总和

    id
    from_country
    to_country
    company_name
    company_count
    year
    quarter
    month
                   
    SELECT  * FROM(
    
    	SELECT  sum(company_count) as top_count,company_name
    	FROM testData
    	WHERE `year`='2017' AND `quarter`='Q1' AND from_country='a_country'
    	GROUP BY from_country,to_country,company_name,`year`,`quarter`
    	ORDER BY company_count DESC) AS A
    
    GROUP BY from_country,to_country
    

    2.条件同1,同时查询公司b

    SELECT * FROM
    
    	(SELECT  * FROM(
    
    		SELECT  sum(company_count) as top_count,company_name,company_count
    		FROM testData
    		WHERE `year`='2017' AND `quarter`='Q1' 
    		GROUP BY from_country,to_country,company_name,`year`,`quarter`
    		ORDER BY company_count DESC) AS A
    
    	GROUP BY from_country,to_country) AS TopCompany
    
    	INNER JOIN
    
    	(SELECT  B_count,to_country FROM(
    
    		SELECT  sum(company_count) as B_count,company_name as B,to_country
    		FROM testData
    		WHERE `year`='2017' AND `quarter`='Q1'  AND company_name='B'
    		GROUP BY from_country,to_country,company_name,`year`,`quarter`
    		ORDER BY company_count DESC) AS Bdata
    
    	GROUP BY origin_country_name,dest_country_name) AS BCompany
    
    ON TopCompany.to_country =BCompany.to_country 
    

      

  • 相关阅读:
    UML中对关系的描述 (二)
    MDA(模型驱动架构)
    简单工厂模式
    Windows Communication Foundation(WCF) 一步一步从入门到精通
    UML 状态图
    C# 设计模式与重构
    DSM领域定义建模和MDA模型驱动架构分析
    UML 部署图
    UML 活动图
    UML 及其作用
  • 原文地址:https://www.cnblogs.com/mufire/p/9534226.html
Copyright © 2011-2022 走看看