oracle case表达式

来源:互联网 发布:推荐淘宝蓝莓苗卖家 编辑:程序博客网 时间:2024/05/18 17:57

CASE表达式
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
(1)CASE表达式可以让你可以在SQL中使用类似于if… then…else的逻辑而不需要调用程序
(2)一个简单的CASE表达式,Oracle将会搜索第一对when…then来与表达式做匹配,如果匹配了则返回表达式的值。如果没有任何一个when…then符合条件,将会执行
ELSE后面的语句,oracle将会返回else表达式的值。否则,oracle将会返回null.你不可以为每个return表达式或者else表达式指定为null。
(3)在一个case的搜索表达式中,oralce将会从左到右开始搜索直到它匹配到一个表达式结果为true。然后返回该表达式结果。如果没有匹配到,那么就会执行else后面的
进行退出,oralce将会返回else表达式。否则,oracle会返回null.
(4)对于一个简单的CASE表达式,expr和所有需要比较的expr都必须有相同的数据类型(CHAR,VARCHAR2,NCHAR,NVARCHAR2,NUMBER,BINARY_FLOAT,BINARY_DOUBLE)或者
都有一个数值类型,如果所有的表达式都是数值类型,oracle将会采用参数中最高精度的数字,隐式来转其它的成为该数据类型,并且返回该数据类型。
(5)对于简单case表达式和搜索case表达式,所有的返回结果必须有相同的数据类型(CHAR,VARCHAR2,NCHAR,NVARCHAR2,NUMBER,BINARY_FLOAT,BINARY_DOUBLE),
或者都有一个数值类型,如果所有的表达式都是数值类型,oracle将会采用参数中最高精度的数字,隐式来转其它的成为该数据类型,并且返回该数据类型。
(6)在case表达式中参数的最大数值是255.所有表达式的值可以趋近于这个 极限值,包括简单case表达式和可选择的else表达式的初始化。其中每对when…else当做两个
参数。为了避免超过这个极限,你可以对case表达式进行嵌套,这样返回值本身就是一个case表达式。
这里写图片描述
这里写图片描述

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 喜欢的人有对象怎么办 遇到了更喜欢的怎么办 8岁骨龄11岁怎么办啊 13岁初中生有思想不听话怎么办 交朋友找对象喜欢颜值高的怎么办 儿子找对象不听父母怎么办 缺爱怎么办的搞笑回答 对象说有人追她怎么办 说了一句话媳妇非常生气怎么办 柔顺后头发太臭怎么办 积分兑换手机被骗了怎么办 老板对你的上级不满怎么办 如果老板不给工资怎么办 手机号码被标记为其他公司怎么办? 被标记为骚扰电话怎么办 手机被标记骚扰电话怎么办 360摄像头不支持5g怎么办 摄像头不支持5g网络怎么办 家里的wifi卡了怎么办 办信用卡没有座机号码怎么办 拨打电话时显示号码有误怎么办 个体营业执照怎么办企业支付宝 没满16岁怎么办电话卡 我的电话卡丢了怎么办 公司注销地税没有补齐怎么办 公司没有固定电话怎么办信用卡 申请信用卡公司没有固定电话怎么办 办理信用卡公司没有固定电话怎么办 江门市固话欠费停机后怎么办 物业交钥匙地面有裂缝怎么办 深圳交通卡丢了怎么办 没装etc走etc怎么办 找不到过敏源身体痒怎么办 微信客服电话打不通怎么办 华为手机网络信号不好怎么办 酷我好友动态加载不了怎么办? 米兔电话手表停机了怎么办 糖猫电话手表停机了怎么办 360电话手表停机了怎么办 小天才电话手表停机怎么办 移动手机卡不知道号码怎么办