CASE 语句可以在SELECT 子句和ORDER BY 子句中使用

CASE语句分为两种Case Simple Expression and Case Search Expression

Case Simple Expression:

CASE Column1
WHEN V1 THEN R1
WHEN V2 THEN R2
ELSE R3
END

Case Search Expression

CASE
WHEN C1=V1 THEN R1
WHEN C2=V2 THEN R2
ELSE R3
END

当在Orderby 中使用Case语句时,如果排序是按照ASC的话,会将不满足条件的结果集无序地放在总结果集的前面,然后将满足条件的结果集排序后附件到总结果集中,如果使用DESC的话,则将满足条件的结果集放在总结果集的前面,然后将为满足条件的结果集无序地附加到总结果集后面:

 
分类: SQL Server
 
好文要顶 关注我 收藏该文  
1
0
 
(请您对文章做出评价)
 
posted @ 2012-10-12 20:13 笑东风 阅读(1277) 评论(1) 编辑 收藏
 
评论
 

#1楼 2015-03-04 17:17 | jimcsharp 

"CASE 语句可以在SELECT 子句和ORDER BY 子句中使用"
也可以在 where 条件中使用, 如:
DECLARE @FlagINT=1;
select * from T5
WHERE ID1=(CASE WHEN @Flag=1 THEN '1' ELSE '2' END) ;

SQL使用CASE 语句的更多相关文章

  1. 今天的一个SQL题-case语句和decode函数

    数据库表: select * from rec order by rst,game_time; ID GAME_TIME      RST ------ -------------- ---- 2 0 ...

  2. SQL Server CASE语句中关于Null的处理

    问: 从数据表中选择一个字段“field”,如果“field”值是1或NULL就赋值为1,其它情况为0,该怎么写啊?这样写对不对啊?(CASE fieldWHEN '1' THEN '1'WHEN N ...

  3. SQL中case语句的两种方式

  4. SQL中的IF ELSE(CASE语句的使用)(转载)

    大家对IF ELSE语句可能都很熟悉,它是用来对过程进行控制的.在SQL的世界中CASE语句语句有类似的效果.下面简单的介绍CASE语句的用法.考虑下面的情况,假设有个user表,定义如下: CREA ...

  5. PL/SQL与SQL(Oracle)Case语句

    (使用scott账户下的表) 1.Oracle SQL语句的case语句写法: --sql中的case用于分支判断并返回某个值. select empno , ename, deptno , case ...

  6. SQL中的IF ELSE(CASE语句的使用)

    大家对IF ELSE语句可能都很熟悉,它是用来对过程进行控制的.在SQL的世界中CASE语句语句有类似的效果.下面简单的介绍CASE语句的用法.考虑下面的情况,假设有个user表,定义如下: CREA ...

  7. SQL CASE语句的使用

    SQL CASE语句的使用 CASE是一个控制流语句,其作用与IF-THEN-ELSE语句非常相似,可根据数据选择值. CASE语句遍历条件并在满足第一个条件时返回值. 因此,一旦条件成立,它将短路, ...

  8. PL/SQL语句块提高1+case语句

    set serveroutput on; declare --默认值的bianliang v_a ; -- v_b integer; --用stud.id 的类型 v_id stud.id%type; ...

  9. sql union 语句 case语句

    1:Union语句: 把两个结果合为一体(但是完全重复的数据会去掉) Eg1: select name, age, ‘学生无工资’ from student        union         ...

随机推荐

  1. 3类数据库的联动:mysql、mongodb、redis

    3类数据库的联动:mysql.mongodb.redis from pymysql import * from pymongo import * from redis import * class M ...

  2. (转)全局变量、extern/static/const区别与联系

    全局变量.extern/static/const区别与联系 编译单元(模块):     在IDE开发工具大行其道的今天,对于编译的一些概念很多人已经不再清楚了,很多程序员最怕的就是处理连接错误(LIN ...

  3. Embedding SQLite in a c programm

    Embedding SQLite in a c programm        The following program demonstrates how to embed SQLite into ...

  4. 支持向量机SVM、优化问题、核函数

    1.介绍 它是一种二类分类模型,其基本模型定义为特征空间上的间隔最大的线性分类器,即支持向量机的学习策略便是间隔最大化,最终可转化为一个凸二次规划问题的求解. 2.求解过程 1.数据分类—SVM引入 ...

  5. mac shell

    查看所有shell:cat /etc/shells 查看当前正在使用的shell:echo $SHELL 切换shell:chsh -s /bin/zsh

  6. SQL Server扩展属性的增、删、改、查

    使用 sql 语句创建表时,可以使用系统存储过程 sp_addextendedproperty 给字段添加描述说明. sp_addextendedproperty 语法: sp_addextended ...

  7. JAVA中的反射机制 (转)

    反射,当时经常听他们说,自己也看过一些资料,也可能在设计模式中使用过,但是感觉对它没有一个较深入的了解,这次重新学习了一下,感觉还行吧! 一,先看一下反射的概念: 主要是指程序可以访问,检测和修改它本 ...

  8. Restful概念

    文章节选自: http://www.ruanyifeng.com/blog/2011/09/restful https://www.zhihu.com/question/28557115/answer ...

  9. python-socket作业

    #客户端 import socket import threading import tkinter sock = socket.socket(socket.AF_INET, socket.SOCK_ ...

  10. SqlHelper简单实现(通过Expression和反射)9.Sql表述对象SqlSession

    此类是整个SqlHelper的另一个核心,基本思想就是通过EntityHelper,ObjectHelper和ExpressionHelper获取拼接Select语句的全部元素,拼接出完整Select ...