导航:首页 > 编程大全 > 数据库case

数据库case

发布时间:2023-01-02 01:39:34

⑴ oracle数据库case问题

case when...then...else...end是sql查询的过滤条件,在做统计的时候常常使用。


  1. 表order(id, status)

  2. select count(*) 订单数,sum(case when a.status='1' then 1 else 0 end) 待付款,sum(case when a.status='2' then 1 else 0 end) 待发货,sum(case when a.status='3' then 1 else 0 end) 待收货,sum(case when a.status='4' then 1 else 0 end) 已完成,sum(case when a.status='5' then 1 else 0 end) 已取消 fromorder


Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的 适应高吞吐量的数据库解决方案。

⑵ c# ACCESS数据库case语句查询问题

Access
中改为:
Dim
strSQL
As
String
strSQL
="Select
iif(content
LIKE
'*-RA*'
,
'小雨'
,iif(content
LIKE
'*RA*',
'大雨'
,'其他'))
AS
天气
FROM
Sheet1"

⑶ 为什么mysql中的case总是为空

ifnull()

你的第二个参数设置有误.

你可以这样试试:

MySQL ifnull()函数和nvl()函数类似,但是也有所不同,下面就为您详细介绍MySQLifnull()函数 ,希望可以让您对MySQL ifnull()函数有更深的认识.

IFNULL(expr1,expr2)

如果expr1不是NULL,IFNULL()返回expr1,否则它返回expr2.IFNULL()返回一个数字或字符串值,取决于它被使用的上下文环境.

mysql> select IFNULL(1,0);

-> 1

mysql> select IFNULL(0,10);

-> 0

mysql> select IFNULL(1/0,10);

-> 10

mysql> select IFNULL(1/0,'yes');

-> 'yes'

IF(expr1,expr2,expr3)

如果expr1是TRUE(expr1<>0且expr1<>NULL),那么IF()返回expr2,否则它返回expr3.IF()返回一个数字或字符串值,取决于它被使用的上下文.

mysql> select IF(1>2,2,3);

-> 3

mysql> select IF(1<2,'yes','no');

-> 'yes'

mysql> select IF(strcmp('test','test1'),'yes','no');

-> 'no'

expr1作为整数值被计算,它意味着如果你正在测试浮点或字符串值,你应该使用一个比较操作来做.

mysql> select IF(0.1,1,0);

-> 0

mysql> select IF(0.1<>0,1,0);

-> 1

在上面的第一种情况中,IF(0.1)返回0,因为0.1被变换到整数值, 导致测试IF(0).这可能不是你期望的.在第二种情况中,比较测试原来的浮点值看它是否是非零,比较的结果被用作一个整数.

CASE value WHEN [compare-value] THEN result [WHEN [compare-value] THEN result ...] [ELSE result] END

CASE WHEN [condition] THEN result [WHEN [condition] THEN result ...] [ELSE result] END

第一个版本返回result,其中value=compare-value.第二个版本中如果第一个条件为真,返回result.如果没有匹配的result值,那么结果在ELSE后的result被返回.如果没有ELSE部分,那么NULL被返回.

mysql> SELECT CASE 1 WHEN 1 THEN "one" WHEN 2 THEN "two" ELSE "more" END;

-> "one"

mysql> SELECT CASE WHEN 1>0 THEN "true" ELSE "false" END;

-> "true"

mysql> SELECT CASE BINARY "B" when "a" then 1 when "b" then 2 END;

-> NULL

⑷ 数据库sql中的case语句~

  1. SQL语句中的CASE语句与高级语言中的switch语句,是标准SQL的语法,适用与一个条件判断有多种值的情况下分别执行不同的操作

  2. 灵活应用CASE语句可以使SQL语句变得简洁易读.

  3. Case 使用方法:

  4. Case具有两种格式。简单Case函数

  5. 和Case搜索函数。 --简单Case

  6. 函数
    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

⑸ 数据库中case语句和if语句的区别

SELECT
'Price
Category'
=
CASE
WHEN
price
IS
NULL
THEN
'Not
yet
priced'
WHEN
price
<
10
THEN
'Very
Reasonable
Title'
WHEN
price
>=
10
and
price
<
20
THEN
'Coffee
Table
Title'
ELSE
'Expensive
book!'
END
先说下,case要和end一块用。
从上面可以看出,case里用的是when
then
形式,从整个case
end来看,它是从自己的多个语句中择一输出结果。
如果是把when
看成if
,就好理解多了,if语句就像是筛子里的石子,而case
end就是筛子,只会允许一个符合它网眼大小的石头出去,并且会将这个石子打包成一个可用的表达式。

⑹ 数据库的case是什么意思..概念是什么.

用例,就是相当于一个例子

⑺ SQL中case,when,then,else的用法是什么

用法:

1、第一种写法:

复制代码

SELECT

s.s_id,

s.s_name,

s.s_sex,

CASE

WHEN s.s_sex = '1' THEN '男'

WHEN s.s_sex = '2' THEN '女'

ELSE '其他'

END as sex,

s.s_age,

s.class_id

FROM

t_b_student s

WHERE

1 = 1

2、第二种写法

SELECT

s.s_id,

s.s_name,

s.s_sex,

CASE s.s_sex

WHEN '1' THEN '男'

WHEN '2' THEN '女'

ELSE '其他'

END as sex,

s.s_age,

s.class_id

FROM

t_b_student s

WHERE

1 = 1

两个运行结果一样:

有一个需要注意的问题,Case函数只返回第一个符合条件的值,剩下的Case部分将会被自动忽略。

(7)数据库case扩展阅读:

Case具有两种格式:简单Case函数和Case搜索函数。

简单Case函数:

CASE sex

WHEN‘1’THEN‘男’

WHEN‘0’THEN‘女’

ELSE‘其他’END

Case搜索函数:

CASE WHEN sex=‘1’THEN‘男’

WHEN sex=‘0’THEN‘女’

ELSE‘其他’END

显然,简单Case函数生在简洁,但是它只适用于这种单字段的单值比较,而Case搜索函数的优点在于适用于所有比较的情况。

还有一个需要注意的问题,Case函数在满足了某个符合条件后,剩下的条件将会被自动忽略,因此,即使满足多个条件,执行过程中也只认第一个条件。

在使用CASE WHEN时,可以把它当作一个没有字段名的字段,字段值根据条件确认,在需要使用字段名时可以是用as来定义别名。

⑻ 数据库case语句

select 成绩, case 成绩 when 成绩<60 then 成绩+10 else 成绩 end as 加分后成绩
from 表名

⑼ sql 数据库 case 用法~~~

select name,N=(
case when balance=null then '不清'
when balance<1000 then '较少'
when balance>=100 then '其他'
end)
from account

阅读全文

与数据库case相关的资料

热点内容
网络机顶盒电视没信号怎么回事 浏览:384
苹果手机如何下载来玩 浏览:826
win10安装重新启动 浏览:395
复制文件和文件夹出错 浏览:652
加工中心编程如何学 浏览:16
电脑扫码支付密码吗 浏览:815
网络微信平台 浏览:165
applepay未添加此卡 浏览:201
哪个网站可以试玩cq9游戏 浏览:367
怎么查电信光纤账号和密码是什么样的 浏览:830
iphone如何发录音文件 浏览:982
windowsxp桌面小工具 浏览:154
运动类app开发设计 浏览:401
psico图标文件生成 浏览:706
将所有文件名导入数据库 浏览:856
查看linux服务器使用情况 浏览:177
日版iphone5蜂窝数据 浏览:336
淄博淄博兼职女微信群 浏览:374
px转sp在线工具 浏览:538
addhandlerjs 浏览:440

友情链接