sql-求助:SQL group by 问题

问题描述

求助:SQL group by 问题
表格如下:

得出结果如下:

求精简的SQL语句

解决方案

 with a as(select rank() over (partition by 商店 order by 商店sum(价钱) desc) as rowid商店sum(价钱) as 价钱和备注 from 产品 group by 备注商店)b as(select 商店价钱和备注 from a where rowid = 1)c as(select 商店sum(价钱和) as 卖出价钱和 from a group by 商店)select c.商店c.卖出价钱和b.备注 as 卖出价钱最高货物b.价钱和 as 卖出最高价格货物价格之和 from c inner join b on c.商店 = b.商店                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

解决方案二:
select 商店 卖出价钱和,卖出价钱最高货物 卖出最高价格货物之和 from
((select 商店 sum(价钱) as 卖出价钱和 from table GROUP BY 商店) ta inner join
(select 商店 max(sum(价钱)) as 卖出最高价格货物之和 备注 as 卖出价钱最高货物
from table GROUP BY 备注) tb on ta.商店 = tb.商店)

解决方案三:
你这属于竖表变横表,sqlserver的话提供了对应的方法,或者用case语句我可以实现,网上有例子

解决方案四:
select 商店count(货物) 卖出价钱和,max(备注) 卖出价钱最高货物max(价钱) 卖出最高价格货物之和
GROUP BY 商店

解决方案五:
select 商店count(货物) 卖出价钱和,max(备注) 卖出价钱最高货物max(价钱) 卖出最高价格货物之和
GROUP BY 商店

解决方案六:
select 商店count(货物) 卖出价钱和,max(备注) 卖出价钱最高货物max(价钱) 卖出最高价格货物之和
GROUP BY 商店

时间: 2025-01-11 12:22:53

sql-求助:SQL group by 问题的相关文章

求助sql语句面试题,详情请看图,谢谢给位了

问题描述 求助sql语句面试题,详情请看图,谢谢给位了 解决方案 这谁家的面试题,03都没有2月份,怎么结果会有2月份,而且table2就是摆设 sql可以下面这样,就是一个行列转置,用case when 以下是sqlserver的 select dep , sum(case mon when '一月份' then score else null end) as 一月份 , sum(case mon when '二月份' then score else null end) as 二月份, sum

求助 sql 语句 计数问题

问题描述 求助 sql 语句 计数问题 表 name s1 s2 s3 zhang A A A zhang A B B zhang B B B li A B B li B B B 结果 name s1A s1B s2A s2B s3A s3B zhang 2 1 1 2 1 2 li 1 1 0 2 0 2 问题:分别对每列的不同值进行计数,求助sql语句 解决方案 SqlServer 根据字段分类汇总信息 解决方案二: select name,sum( case when s1='A' the

sql-菜鸟求助SQL基础问题,在线等

问题描述 菜鸟求助SQL基础问题,在线等 不是主键只能有一个吗?怎么可以定义两个? 解决方案 这是联合主键,两个字段同时作为主键,这两个字段的组合在在数据表中是唯一,且加了主键索引. 解决方案二: 联合主键,我一般很少用到,原理和一个主键差不多,只不过他们两个联合起来是在表中唯一的 解决方案三: 有时候你需要同时用两个特征来作为主键来描述一个表的某个属性,往往包含具有唯一性的效果 解决方案四: 大家说的很清楚了,联合主键 解决方案五: 主键的作用是唯一区分不同的记录.主键可以由一个或者多个属性组

求助sql和java相关的问题

问题描述 求助sql和java相关的问题 我需要查询add_userid是不是最后一条,已知条件就是一个userid,add_userid是int类型,userid是varchar, 有什么方法么 能有java的方法最好,当然写出sql查询方法也可以 解决方案 如果 add_userid是唯一的可以 select add_userid from 表名 where id =(select max(id) from 表名 ) 将得到的结果与你的add_userid比较是否相等来决定是否最后一条 解决

postgresql-急求涉及时区问题的SQL求助

问题描述 急求涉及时区问题的SQL求助 要求在postgreSQL上可执行,但是如果这个比较复杂,给出一般的可实现以下功能的SQL code也可以 在2013年10月1日10:00(时区:西8区)到2013年10月22日17:00(时区:西8区),在每一个 没有被禁止的城市有百分之多少的客户请求被取消了?(列出每一个城市的百分比) 在城市编号为1,6,12的三个城市里,列出从2013年6月3日到2013年6月24日期间,每周以完成 订单总量为标准的前三名的司机(分别列出每个城市每周的前三名) 求

oracle语句-求高手优化sql 主要针对group by

问题描述 求高手优化sql 主要针对group by SELECT r.custid custid i.productid i.officialsocialprice price SUM(i.quanitity) amount FROM IMEIBATCH i RDCUST r RDCUSTDETAIL d WHERE (i.vendororgacode = 'ZD' OR i.vendororgacode IN (SELECT orgacode FROM organiza WHERE pare

SQL Server 之 GROUP BY、GROUPING SETS、ROLLUP、CUBE

原文:SQL Server 之 GROUP BY.GROUPING SETS.ROLLUP.CUBE 1.创建表 Staff CREATE TABLE [dbo].[Staff]( [ID] [int] IDENTITY(1,1) NOT NULL, [Name] [varchar](50) NULL, [Sex] [varchar](50) NULL, [Department] [varchar](50) NULL, [Money] [int] NULL, [CreateDate] [date

SQL查询语句 group by后, 字符串合并

原文:SQL查询语句 group by后, 字符串合并 合并列值 --******************************************************************************************* 表结构,数据如下: id value ----- ------ 1 aa 1 bb 2 aaa 2 bbb 2 ccc 需要得到结果: id values ------ ----------- 1 aa,bb 2 aaa,bbb,ccc 即:gr

深入浅析SQL中的group by 和 having 用法

一.sql中的group by 用法解析: Group By语句从英文的字面意义上理解就是"根据(by)一定的规则进行分组(Group)". 作用:通过一定的规则将一个数据集划分成若干个小的区域,然后针对若干个小区域进行数据处理. 注意:group by 是先排序后分组! 举例说明:如果要用到group by 一般用到的就是"每"这个字, 例如现在有一个这样的需求:查询每个部门有多少人.就要用到分组的技术 select DepartmentID as '部门名称',

.NET编程和SQL Server ——Sql Server 与CLR集成 (学习笔记整理-1)

原文:.NET编程和SQL Server --Sql Server 与CLR集成 (学习笔记整理-1) 一.SQL Server 为什么要与CLR集成 1. SQL Server 提供的存储过程.函数等十分有限,经常需要外部的代码来执行一些繁重的移植: 2.与CLR集成可将原本需要独立的程序来实现的功能迁移到SQL Server 内部进行数据操作: 3.T-SQL数据查询语言在返回数据集方面很好,但是除此之外表现不佳.与CLR的集成可解决这一问题: 4..NET的操作代码和执行的速度比T-SQL