SQL CASE WHEN ... THEN ... ELSE.. END 实例

用一个SQL语句完成不同条件的分组(SELECT部分):

select QuoteOrderId,SUM(case when(ApprovalStatus=1)then Amount else 0 end) AS CloseAmount,SUM(case when(ApprovalStatus=2)then Amount else 0 end) AS ApprovalAmount from dbo.PurchaseSettleAccountsDetails a inner join dbo.PurchaseSettleAccounts b on a.PurchaseSettleAccountId=b.ID group by QuoteOrderId

已知数据按照另外一种方式进行分组SELECT部分):

SELECT
CASE WHEN salary <= 500 THEN ‘1‘
WHEN salary > 500 AND salary <= 600  THEN ‘2‘
WHEN salary > 600 AND salary <= 800  THEN ‘3‘
WHEN salary > 800 AND salary <= 1000 THEN ‘4‘
ELSE NULL END salary_class,
COUNT(*)
FROM    Table_A
GROUP BY
CASE WHEN salary <= 500 THEN ‘1‘
WHEN salary > 500 AND salary <= 600  THEN ‘2‘
WHEN salary > 600 AND salary <= 800  THEN ‘3‘
WHEN salary > 800 AND salary <= 1000 THEN ‘4‘
ELSE NULL END;
时间: 2024-08-29 20:54:38

SQL CASE WHEN ... THEN ... ELSE.. END 实例的相关文章

SQL Case 语句的使用

-----简单case 使用 select 学号,姓名, case 专业 when '金融系' then '1' when '材料成型及控制工程' then '2' else '3' end from stu SQL Case 语句的使用,布布扣,bubuko.com

sql case when 用法

sql语言中有没有类似C语言中的switch case的语句?? 没有,用case   when   来代替就行了.            例如,下面的语句显示中文年月         select   getdate()   as   日期,case   month(getdate())     when   11   then   '十一'     when   12   then   '十二'     else   substring('一二三四五六七八九十',   month(getda

SQL Server服务器名称与默认实例名不一致的修复方法

SQL Server服务器名称与默认实例名不一致的修复方法 分类: 个人累积 SQl SERVER 数据库复制2011-08-10 09:49 10157人阅读 评论(0) 收藏 举报 sql server服务器sqlservermicrosoftserver远程连接 [sql] view plaincopy --原因分析: --SERVERPROPERTY 函数的 ServerName 属性与@@SERVERNAME 返回相似的信息. --ServerName 属性提供Windows 服务器和

SQL Server 2016 JSON原生支持实例说明

原文:SQL Server 2016 JSON原生支持实例说明 背景 Microsoft SQL Server 对于数据平台的开发者来说越来越友好.比如已经原生支持XML很多年了,在这个趋势下,如今也能在SQLServer2016中使用内置的JSON.尤其对于一些大数据很数据接口的解析环节来说这显得非常有价值.与我们现在所做比如在SQL中使用CLR或者自定义的函数来解析JSON相比较,新的内置JSON会大大提高性能,同时优化了编程以及增删查改等方法. 那么是否意味着我们可以丢弃XML,然后开始使

SQL SERVER GO命令循环使用实例

原文:SQL SERVER GO命令循环使用实例 通过GO  命令 来达到语句循环效果  也叫批循环 print '输出10次' GO 10 也可用来新增 语句 NOCOUNT ON 用来屏蔽 新增语句输出的影响行数 我们只看循环次数 SET NOCOUNT ON; GO INSERT INTO dbo.T1 DEFAULT VALUES; GO 100 原文地址:https://www.cnblogs.com/lonelyxmas/p/9509394.html

SQL CASE 多条件用法

Case具有两种格式.简单Case函数和Case搜索函数. --简单Case函数 CASE sex          WHEN '1' THEN '男'          WHEN '2' THEN '女' ELSE '其他' END --Case搜索函数 CASE WHEN sex = '1' THEN '男'          WHEN sex = '2' THEN '女' ELSE '其他' END 这两种方式,可以实现相同的功能.简单Case函数的写法相对比较简洁,但是和Case搜索函数

SQL Case

在数据库中,对数据进行比对,有两种用法, 第一种:不对任何列进行条件判断 SELECT Student_ID AS 学号,English AS 英语成绩, CASE WHEN English>=120 THEN '优秀' WHEN English>=60 AND English<=100 THEN '及格' WHEN English<60 THEN '不及格' END AS 描述 FROM dbo.Score 执行的结果是: 学号 英语成绩 描述 1 120 优秀 2 100 及格

sql case when

Case具有两种格式.简单Case函数和Case搜索函数. --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END --Case搜索函数 CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' ELSE '其他' END 这两种方式,可以实现相同的功能.简单Case函数的写法相对比较简洁,但是和Case搜索函数相比,功能方面会有些限制,比如写判断式. 还有一个需要

SQL Case when 的使用方法(转)

case when--then--else--end的最屌的地方应该是它既在普通的字段中使用,也可以在聚合函数中使用. 原文:http://blog.itpub.net/26451903/viewspace-733526 Case具有两种格式.简单Case函数和Case搜索函数. --Case搜索函数(推荐) CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' ELSE '其他' END --简单Case函数(不推荐) CASE sex WH