SQL语句中case,when,then的用法
用法如下bai:
复制代码
SELECT
s.s_id,
s.s_name,
s.s_sex,
CASE
WHENs.s_sex='1'THEN'男'
WHENs.s_sex='2'THEN'女'
ELSE'其他'
ENDassex,
s.s_age,
s.class_id
FROM
t_b_students
WHERE
1=1
这两个结果是一样的:
需要du注意的一点是,zhiCase函数只返回第一个限定值,其余dao的Case将被自动忽略。

扩展资料:
Case有两种格式:简单函数和Case搜索函数。
简单的例子功能:
CASEsex
WHEN‘1’THEN‘男’
WHEN‘0’THEN‘女’
ELSE‘其他’END
Case搜索函数:
CASEWHENsex=‘1’THEN‘男’
WHENsex=‘0’THEN‘女’
ELSE‘其他’END
显然简单的Case函数天生简洁,但它们只适用于这种单字段单值比较,而Case搜索函数具有适用于所有比较用例的优势。
另一个需要注意的问题是,在Case函数满足了某个条件之后,其余的条件将被自动忽略,这样即使满足了多个条件,在执行过程中也只能识别第一个条件。
当使用CASEWHEN时,您可以将其视为没有字段名的字段,字段值是有条件的,并且在需要使用字段名时可以使用as来定义别名。
SQL语句中case,when,then的用法的更多相关文章
- SQL语句中case函数
case函数,严格的意义上来讲case函数已经试流程控制语句了,不是简单意义上的函数,不过为了方便,很多人将case函数称为流程控制函数. case函数的一般有两种用法:1.case expressi ...
- Oracle的sql语句中case关键字的用法 & 单双引号的使用
关于sql中单引号和双引号的使用,来一点说明: 1. 查询列的别名如果含有汉字或者特殊字符(如以'_'开头),需要用双引号引起来.而且只能用双引号,单引号是不可以的. 2. 如果想让某列返回固定的值, ...
- SQL语句中exists/not exists的用法分析
作者:Dsw 比如在Northwind数据库中有一个查询为 SELECT c.CustomerId,CompanyName FROM Customers c WHERE EXISTS( SELECT ...
- Sql语句中IN等方面的用法
select * from txt1 select * from txt2 select * from txt1 where name in (select name from txt2 where ...
- sql语句:CASE WHEN END 的用法
select b,c, CASE a ' ' ' end from test1
- sql语句中----删除表数据drop、truncate和delete的用法
sql语句中----删除表数据drop.truncate和delete的用法 --drop drop table tb --tb表示数据表的名字,下同 删除内容和定义,释放空间.简单来说就是把整 ...
- SQL语句中count(1)count(*)count(字段)用法的区别
SQL语句中count(1)count(*)count(字段)用法的区别 在SQL语句中count函数是最常用的函数之一,count函数是用来统计表中记录数的一个函数, 一. count(1)和cou ...
- sql 语句中使用条件判断case then else end
sql 语句中使用条件判断case then else end范例: SELECT les.[nLessonNo] FROM BS_Lesson AS les WHERE les.[sClassCod ...
- sql语句中charindex的用法 可用于截取字符串
使用CHARINDEX和PATINDEX函数来搜索文字列和字符串.这两个函数是如何运转的,解释他们的区别.同时提供一些例子,通过这些例子,你可以可以考虑使用这两个函数来解决很多不同的字符搜索的问题. ...
随机推荐
- 自动化运维工具之Puppet常用资源(一)
前文我们聊到了puppet的架构,单机模型和master/agent模型的工作流程以及puppet的基础使用,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14 ...
- 基于 RabbitMQ-EasyNetQ 实现.NET与Go的消息调度交互
基于 RabbitMQ 实现跨语言的消息调度 微服务的盛行,使我们由原来的单机"巨服务"的项目拆分成了不同的业务相对独立的模块,以及与业务不相关的中间件模块.这样我们免不了在公司不 ...
- model基础操作
url.py from django.contrib import admin from django.urls import path,include from app1.views import ...
- 转:【Python3网络爬虫开发实战】3.1.2-处理异常
[摘要] 前一节我们了解了请求的发送过程,但是在网络不好的情况下,如果出现了异常,该怎么办呢?这时如果不处理这些异常,程序很可能因报错而终止运行,所以异常处理还是十分有必要的. urllib的erro ...
- Linux使用inode(i节点号)删除文件
今天学习Linux的时候遇到的知识点,想起了以前一次线下AWD攻防赛的时候的不死马,记录一下 在Linux里面,有的时候我们会遇到奇奇怪怪的文件名,以至于我们删除不了,比如说我们创建了一个叫做&quo ...
- 十. Axios网络请求封装
1. 网络模块的选择 Vue中发送网络请求有非常多的方式,那么在开发中如何选择呢? 选择一:传统的Ajax是基于XMLHttpRequest(XHR) 为什么不用它呢?非常好解释配置和调用方式等非常混 ...
- Day6 Scrum 冲刺博客
一.站立式会议# 1. 会议照片 2. 工作进度+燃尽图 团队成员 昨日完成工作 今日工作计划 遇到的困难 周梓波 将方块旋转变形 添加键盘监听事件 不熟悉监听事件的操作 纪昂学 左右 ...
- 【Codeforces 809E】Surprise me!(莫比乌斯反演 & 虚树)
Description 给定一颗 \(n\) 个顶点的树,顶点 \(i\) 的权值为 \(a_i\).求: \[\frac{1}{n(n-1)}\sum_{i=1}^n\sum_{j=1}^n\var ...
- 可选链plugin-proposal-optional-chaining的使用(优化)
第一步 安装 npm install --save-dev @babel/plugin-proposal-optional-chaining 然后在.babelrc.js文件夹里进行配置 plugin ...
- Python 学习笔记 之 01 - 基础总结
数据类型 整数 十六进制和八进制使用0开头,0x12f, 010 浮点数 可以用科学记数法,如1.23x10^9 可以写成 12.3e8 ,0.000012可以写成 1.2e-5 空值 用None表示 ...