[SQL]一组数据中Name列相同值的最大Je与最小je的差
2014-03-25 04:49
435 查看
declare @t table(name varchar(20),qy varchar(20),je int) insert into @t select '产品一','北京',500 union all select '产品一','上海',300 union all select '产品二','北京',600 union all select '产品三','上海',1000 union all select '产品三','北京',8008 union all select '产品四','上海',400 --select * from @t a where not exists --这是取表中的NAME相同的最大值 --( -- select 1 from @t where name=a.name and je>a.je --) --第一个答案: SELECT NAME,QY,JE-ISNULL((SELECT JE FROM @T WHERE NAME=A.NAME AND QY<>A.QY),0) FROM @T A WHERE JE=(SELECT MAX(JE) FROM @T WHERE NAME=A.NAME) ORDER BY NAME --第二个答案 Select Name, qy, je-(Select Case When Min(je)=A.je Then 0 Else Min(je) End From @t Where Name=A.Name Group By Name) As je From @t A Where Not Exists (Select 1 From @t Where Name=A.Name And je>A.je)
相关文章推荐
- [SQL]CASE用户数据统计
- Android数据的四种存储方式SharedPreferences、SQLite、Content Provider和File (四) —— ContentProvider
- sql总结
- 数据库连接池-连接的关闭内幕
- PL/SQL程序设计 第一章 PL/SQL 程序设计简介
- SQL SERVER中GROUPING SETS,CUBE,ROLLUP
- PL/SQL程序设计 第八章 触发器
- PL/SQL程序设计 第七章 包的创建和应用
- PL/SQL程序设计 第六章 存储函数和过程
- PL/SQL程序设计 第五章 异常错误处理
- PL/SQL程序设计 第四章 游标的使用
- PL/SQL程序设计 第三章 PL/SQL流程控制语句
- PL/SQL程序设计 第二章 PL/SQL块结构和组成元素
- SQL--用 ANY、SOME 或 ALL 修改的比较运算符
- mysql 基础注意点
- mysql事务处理
- SQL Server创建索引
- php操作MongoDB基础教程(连接、新增、修改、删除、查询)
- codeigniter自带数据库类使用方法说明
- MySQL DBA教程:Mysql性能优化之缓存参数优化