本文主要介绍了案例在sql学习结束时的用法。有需要的朋友可以参考一下。
超强:格的用法.当.的时候.然后.其他.SQL命令中的结束条件查询(不同于where)和类型转换
情况.当.的时候.然后.其他.end,在from之前,可以改变记录中某个字段的值,但不能决定是否显示该记录;
从哪里来。您不能更改记录中字段的值,但可以决定是否显示该记录。
情况.当.的时候.然后.其他.end,可以用分支判断对同一条记录的多个字段求和。
此外,判断和处理字段经常需要强制类型转换。
select to_number(19f , XXX )from dual;-八进制
得到415
select to_number(f , xx )from dual;-十六进制
得到15
从dual中选择to _ number( 123 );-十进制系统
得到123
与日期操作关系最大的有两个转换函数:to _ date()和to _ char()
To_date()将字符类型转换为特定格式的日期类型:
用法:to _ date( 2004年11月27日, yyyy-mm-dd ),
前者是字符串,后者是转换日期格式。注意,前者和后者要一一对应。例如,to _ date (2004-11-27 13: 34: 43 , yyyy-mm-ddhh24: mi: ss )将获得具体时间。
字符串处理功能:
select to_number(SUBSTR(rain_1,0,2), xx) from obs
(一)Access 数据库
大家都知道access中有iif函数,可以把一个判断赋值序列简化成一个表达式,比如
Iif(ab,1,2),如果ab为真,则结果为1,否则为2。这真的很方便。
例子
(1)数字
如果度量,下面的示例返回0。CurrentMember为空单元格,否则返回1。
IIf(IsEmpty(Measures。当前成员),0,1)
(2)字符串
如果措施。CurrentMember是一个空单元格,下面的字符串返回字符串 Yes ,否则返回字符串 No
IIf(IsEmpty(Measures。当前成员),是,否)
在Access中,我可以使用IIF函数进行统计汇总,例如,了解实际应该付费的用户数量。
写权限:选择sum(iif (amount 0,1,0))作为费用编号
MS SQL写为:select sum(当金额0然后1 else 0结束时的情况)作为num from expense。
(二)Ms SQL 数据库
IIF就是这种情况.然后.其他.以SQL结尾
示例:select id,case when BZ= 1 and xx when BZ= 2 and YY else ZZ end as TT from XXX
我给你举个例子。有一个政策法规表(policy_fgxx),ID(主键),bzh(标准号),zynr(主要内容),
fbrq(发布日期)的四个字段
Select * From policy_fgxx结果:
ID bzh zynr fbrq
你好
15空
我不要上面的结果,我要下面的结果:
ID bzh zynr fbrq
你好
15无1990-06-06
也就是说,当标准号为空时,我希望它显示为空,当发布日期为空时,我希望它显示我指定的日期。
下面我给出写法,大家可以自己思考
选择id,zynr,
(当bzh=thennoneelse bzh end时的情况)作为bzh,
(当fbrq为空时,则“1982-06-02”否则fbrq结束)作为fbrq
来自策略_fgxx
sqlite case when then else end
SQLite Select DateTime(create Time, Unix Epoch , Local Time )时间,消息内容,大小写Des when 0 then le else garden 结束名称
from Chat _ af 863d 30 E1 C1 e 5 EBA 27 a 0 df 37 a 75 DBA 0其中rowid=2;
- - -
|时间|内容|名称|
- - -
| 2013-08-22 18:54:13 |不良网络|花园|
| 2013-08-22 20:19:07 |侨乐花园|
- - -
集合中的2行
其它网友的实例:
Id名称部门
1个aa部门1
2 bb dept1
3 cc dept2
选择SUM(当‘decp1’大于EN 1 0时,CASE decp结束)作为dec P1,
sum(当“decp2”时,case decp,然后1,否则0结束)作为decp2
来自老师
生成:
部门1部门2
2 1
这个例子主要是学习(CASE WHEN THEN ELSE end)语句的用法。
这是我们做统计时非常有用的说法。