case语句sql(数据库sql中的case语句~)

本文目录
数据库sql中的case语句~
SQL语句中的CASE语句与高级语言中的switch语句,是标准SQL的语法,适用与一个条件判断有多种值的情况下分别执行不同的操作
灵活应用CASE语句可以使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搜索函数相比,功能方面会有些限制,比如写判断式。
还有一个需要注意的问题,Case函数只返回第一个符合条件的值,剩下的Case部分将会被自动忽略。
--比如说,下面这段SQL,你永远无法得到“第二类”这个结果
CASE WHEN col_1 IN ( ’a’, ’b’) THEN ’第一类’
WHEN col_1 IN (’a’) THEN ’第二类’
ELSE’其他’ END
sql语句中case语句用法
不知道你具体什么数据库,,给出sqlserver,你上面写的就对了,
给你写出详细的测试记录吧
CREATE TABLE test(a INT,b VARCHAR(10))
INSERT INTO dbo.test
( a, b )
SELECT 1,’a’
UNION ALL
SELECT 2,’b’
UNION ALL
SELECT null,’c’---这里加了一条数据,便于你看出结果
SELECT a,b,c=(CASE WHEN ISNULL(a,’’)=’’ THEN null ELSE b END)--注个人喜欢用isnull()函数
FROM test结果:
1
a
a
2
b
b
NULL
c
null
SQL case 语句
insert into ins_dynamic(tag_name,tp_name) select ’zzzz.’||tag_name,(case when value=’1’ then ’value=1’ when value=’2’ then ’value=2’ else ’other value’ end) from ins_dynamic;
SQL 的CASE 语句应该怎么写
select case when type = 1 then ‘正常’ when type = 0 then ‘暂停’ else ’’ end as ’状态’
from proudct ;
sql case语句
select ID,name||’(’||a.性别||‘)’ from
(
select ID,name,case when sex=1 then ’男’ when sex=2 then ’女’ end as 性别 from table
) a
以上为oracle数据库
sql语句case的用法
select case when stcd=’stcd’ and tm between ’d1’ and convert(varchar(100),year(dateadd(day,1,’d1’)))
+’-’+convert(varchar(100),month(dateadd(day,1,’d1’)))
+’-’+convert(varchar(100),day(dateadd(day,1,’d1’)))
+’ 8:00:00’ then sum(drp) when stcd=’stcd’ and tm between convert(varchar(100),year(dateadd(day,-1,’d1’)))
+’-’+convert(varchar(100),month(dateadd(day,-1,’d1’)))
+’-’+convert(varchar(100),day(dateadd(day,-1,’d1’)))
+’ 9:00:00’ and ’d1’ then sum(drp) end drpsum from st_pptn_r你把’stcd’和’d1’换成具体值,试试看。

更多文章:
易语言网页api接口怎么调用(易语言,怎么读取网页json的api)
2026年10月11日 08:00
majority of(the majority of 和 a majority of的区别以及用法例句)
2026年10月11日 07:40
another time(another time和other time的区别)
2026年10月11日 05:00








