- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Oracle常用函数以和行列转换
常用的函数
数值函数
ABS(N) 返回指定值的绝对值
CEIL(N) 返回大于或等于给出数字的最小整数
FLOOR(N) 对给定的数字取整数
MOD(M,N) 返回一个M除以N的余数
ROUND( M [,N] ) 按照指定的小数位元数进行四舍五入运算的结果
参数:如果N不为整数则截取N整数部分,如果N0则四舍五入为N位小数,如果N小于0则四舍五入到小数点向左第N位。
TRUNC(M[,N]) 返回M按精度N截取后的值
参数:如果N不为整数则截取N整数部分,如果N0则截取到N位小数,如果N小于0则截取到小数点向左第N位,小数前其它数据用0表示。
转换函数
TO_CHAR (NUMBER | date,format)
TO_NUMBER (char , format)
TO_DATE (char, format)
分组函数
MAX
AVG
MIN
COUNT
SUM
字段为空的判断
NULL的概述
NULL在Oracle中是很特殊的值,任何类型的值都可以是NULL。如果在某行中有一列没有值,那么就说慈航中这个列的值是NULL。NULL是未知的东西,常称它为“UNKNOWN”或空值。正因为它是未知的,才会有很多值得注意的规则。NULL可以是任何数据类型的值,也可以不依赖于数据类型单独存在(字面量NULL),任何没有NOT NULL约束或主键约束的列都有可能出现NULL值。
NULL和其他任何值都不相等或相等,包括自身(当然是用IS NULL判断是可以的)。但是在某些时候,Oracle却把他们当成相等的(指Oracle的一些内部规则),如SQL集合语句、Group by分组、Decode函数等。
NULL的判断和比较运算规则
Oracle中判断一个列值或变量值是否是NULL,必须是用IS NULL或IS NOT NULL,而不能使用=NULL或NULL。
NULL的算数或者逻辑运算规则
NULL做一些算数运算,比如+、-、*、/等,结果还是NULL,但是对于连接操作符||,NULL忽略。
select null+10 from dual;
select null||ygczm from dual;
select concat(null,ygczm) from dual;
NULL与函数
Oracle对NULL处理有专门的函数,所以这里只讲述NVL、NVL2、NULLIF、COALESCE、DECODE函数,以及两种CASE表达式对NULL的处理。
NVL函数
语法:NVL(expr1,expr2)
描述:常用语expr1可能是NULL,而我们又不想在查询结果中出现空值的转换需求。如果expr1是NULL,那么用expr2作为返回值,不是NULL则返回expr1。
expr1和expr2一般是类型相同的,如果类型不同会采用自动类型转换,如果转换失败则出错。采用的自动类型转换规则如下:
如果expr1是字符类型,那么在比较前expr2转换为expr1类型,返回值类型是expr1所在的字符集的VARCHAR2类型。
如果expr1是数值型,Oracle会检查expr1和expr2的数值类型优先级,然后将优先级低的参数类型转换为优先级高的参数类型,最后返回的类型是优先级最高的那个类型。数值类型优先级BINARY_DOUBLEBINARY_FLOATNUMBER。
如果expr1是字面量NULL,expr2是非NULL。则转为expr2类型,返回值同expr2。
NVL2函数
语法:NVL(expr1,expr2,expr3)
描述:常用于对expr1的值不管是否是NULL都要转换的需求。比NVL要先进一点,加了额外的判断,expr1如果是NULL则返回expr3,否则返回expr2。这里的类型转换就和expr1没有关系了,一般要求expr2和expr3类型要一致,如果不一致则采用自动类型转换。
如果expr2是字符类型,在比较前将expr3转换为expr2类型,如果expr3是字面量NULL,则没有必要转换。
如果expr2是数值类型,Oracle会检查expr2和expr3的数值类型优先级,然后将低优先级的参数类型转换为高优先级的参数类型,最后返回值类型就是高优先级的类型。
如果expr2是字面值NULL,expr3不是NULL,则返回值同expr3类型。
下面的6个例子中哪些是错的呢?
select NVL2(NULL,1,2) from dual;
select NVL2(NULL,1,2) from dual;
select NVL2(NULL,NULL,2) from dual;
select NVL2(NULL,1,2) from dual;
select NVL2(NULL,1,a) from dual;
sel
您可能关注的文档
最近下载
- 医院信息安全框架规划与设计.pptx
- 时代天使(06699.HK)国内隐形正畸龙头,海外市场加速突破.pdf VIP
- 2025届高三地理一轮复习+海-气相互作用与厄尔尼诺、拉尼娜现象.pptx VIP
- 材料力学(第6版)孙训方习题答案.pdf
- 2025年小学五年级下册语文常考易错题汇总 .pdf VIP
- 单容水箱液位控制系统的PID算法.docx VIP
- 2025高考英语全国新课标II卷(含答案).docx VIP
- 肺栓塞应急预案及流程.pptx VIP
- 小学五年级奥数第18讲 组合图形的面积(含答案分析).pdf VIP
- 2024年江苏无锡初中学业水平考试生物试卷真题(含答案详解).pdf VIP
文档评论(0)