当前位置:首页 » 编程语言 » sql的caseselect

sql的caseselect

发布时间: 2022-07-20 06:13:34

sql语句用法: select case语句块后面能否加where 条件

when。。。。。。。。。then。。。。。。。
when就相当于where
create
table
table_3(a
varchar
,b
varchar)
insert
into
table_3
values('1','2')
insert
into
table_3
values('1','3')
insert
into
table_3
values('2','2')
select
*
from
table_3
---when语句中的类型和else必须一致
select
(case
a
when
'1'
then'123'
when
'2'
then
'456'
else
0
end
)
as
aa
,a,b
from
table_3
select
case
when
a=1
then
'中文'
when
a=2
then
'英文'
else
'过问'
end
from
table_3

Ⅱ sql语句case查询问题

select
case
when
费用交款日期
is
null
or
费用交款日期=''
then
0
else
isnull(税务费,0)
as
税务费
from
table

Ⅲ SQL查询语句SELECT中带有case when嵌套子查询判断的问题

1、创建两张测试表

create table test_case1(id number, value varchar2(200));

create table test_case2(id number, value varchar2(200));

Ⅳ sql 2000中 select case when then 的用法

CASE WHEN condition THEN result

[WHEN ...]

[ELSE result]
END

CASE
子句可以用于任何表达式可以有效存在的地方。 condition 是一个返回boolean 的表达式。 如果结果为真,那么
CASE
表达式的结果就是符合条件的 result。 如果结果为假,那么以相同方式搜寻任何随后的 WHEN 子句。
如果没有 WHEN
condition 为真,那么 case 表达式的结果就是在
ELSE 子句里的值。
如果省略了 ELSE
子句而且没有匹配的条件, 结果为 NULL。

例子:

SELECT * FROM test;

a
---

1

2

3

SELECT a,

CASE WHEN a=1 THEN 'one'

WHEN a=2 THEN 'two'

ELSE 'other'

END

FROM test;

a | case
---+-------

1 | one

2 | two

3 | other

所有 result 表达式的数据的类型都必须可以转换成单一的输出类型。

下面这个"简单的" CASE
表达式是上面的通用形式的一个特殊的变种。

CASE expression

WHEN value THEN result

[WHEN ...]

[ELSE result]
END

先计算 expression 的值, 然后与所有在WHEN
子句里声明的 value 对比,直到找到一个相等的。 如果没有找到匹配的,则返回在
ELSE 子句里的
result (或者 NULL)。 这个类似于 C 里的
switch
语句。

上面的例子可以用简单 CASE
语法来写:

SELECT a,

CASE a WHEN 1 THEN 'one'

WHEN 2 THEN 'two'

ELSE 'other'

END

FROM test;

a | case
---+-------

1 | one

2 | two

3 | other

CASE
表达式并不计算任何对于判断结果并不需要的子表达式。 比如,下面是一个可以避免被零除的方法:

SELECT ... WHERE CASE WHEN x <> 0 THEN y/x > 1.5 ELSE false END;

Ⅳ SQL的SELECT语句,里面可以嵌套CASE么

可以的,而且使用频率还比较高。
例:字段:性别 以1和2,分别代表男和女
xb
1
2
1
那么检索的时候可以写:
select case when xb = '1' then‘男’when '2' then '女' else '' end

Ⅵ SQL的SELECT语句,里面可以嵌套CASE么

答案

sql里面没有case语句!会有语法错误报错!
匿名
这位老兄。不懂数据库就不要乱发言了,,是在害人吧。。

可以有case。
在数据库中case是多分支语句。可以嵌套在查询语句中,就像JAVA和C#中的case的意义基本相同。
给你举个例子。。case是个语句组。要和end 配合使用的。相当于JAVA和C#中的case...break。

select stuNo 成绩=case
when writtenExam<60 then 'E'
when writtenExam between 60 and 69 then 'D'
when writtenExam between 70 and 79 then 'C'
when writtenExam between 80 and 89 then 'B'
else 'A'
end
from stuMarks

这段代码的意思就是查询学生成绩表中笔试成绩。当成绩小于60分 打分为E
当成绩在60~69之间 打分为D
类推、

Ⅶ sql语句中的的select case 问题

SELECT sum(case when age >20 and age <30 then 1 else 0 end) as [20-30岁的人数] FROM Student

---
以上,希望对你有所帮助。

Ⅷ SQL语句中Case 的用法

Select Case 语句在有多个可能的条件必须被检查时使用。与 If 语句不同,Select Case语句在找到匹配的Case 表达式并执行了Case 表达式和下一个Case 表达式之间的语句后将立即跳出。如果没有匹配的Case 表达式,将执行其它语句。

Case Else 与lse 的意义相同。

Case 语句能接受各种类型的(作为判断条件的)表达式。表达式可以是单一值、由逗号分隔的一组值、能返回值的函数、用"To"关键字指定的值的范围或者使用"Is"关键字对等式或不等式进行测试。您可以连接不同类型的不同表达式,只要将它们用逗号分开即可。

Ⅸ PLSQL中,select case..when.. then..什么意思怎么用

case when ... then .. when .. then ... end

这种表达式,是sql的不同条件分支结果。

举例如下,

1、创建数据表,create table test_student(stu_id number, class_id number);

Ⅹ SQL中case when与select嵌套问题

SELECT
(Casewhengirl='a'thenA.oper_name_1elseB.oper_name_1)ASoper_name_1,
(Casewhengirl='a'thenA.oper_name_2elseB.oper_name_2)ASoper_name_2,
FROMA
--你试试,应该是可以的

热点内容
qq登录在哪个文件夹 发布:2025-02-01 01:57:59 浏览:624
如何加入安卓代理 发布:2025-02-01 01:51:40 浏览:2
我的世界手游服务器刷钻石教程 发布:2025-02-01 01:48:13 浏览:773
sqlifthen男女 发布:2025-02-01 01:44:59 浏览:690
幻灵和安卓哪个互通 发布:2025-02-01 01:43:33 浏览:648
电脑配置够但为什么打lol掉帧 发布:2025-02-01 01:37:08 浏览:316
21款朗逸哪个配置比较划算 发布:2025-02-01 01:35:32 浏览:976
建筑动画片脚本 发布:2025-02-01 01:35:21 浏览:469
管家婆如何用阿里云服务器 发布:2025-02-01 01:29:09 浏览:649
解压耳放 发布:2025-02-01 01:20:18 浏览:176