Oracle中coalesce函数的用法
来源:互联网 发布:linux下 chroot dir 编辑:程序博客网 时间:2024/05/19 16:34
学习了几天教主的书,今天看到coalesce函数,功能很强大啊!
查看视图结果:
结果竟是:
结果竟然:
coalesce函数的参数是列,结果是取出第一个不为空的列的数据。
首先,建一个视图:
CREATE OR REPLACE VIEW v AS SELECT NULL AS c1,NULL AS c2,1 AS c3,NULL AS c4,2 AS c5,NULL AS c6 FROM dual UNION ALL SELECT NULL AS c1,NULL AS c2,NULL AS c3,3 AS c4,NULL AS c5,2 AS c6 FROM dual;
查看视图结果:
使用coalesce函数查结果:
SELECT COALESCE (c1,c2,c3,c4,c5,c6) AS c FROM v;
结果竟是:
难道coalesce函数不支持number类型?带着这个疑问,给转换一下,结果:
SELECT COALESCE (c1,c2,to_char(c3),to_char(c4),to_char(c5),to_char(c6)) AS c FROM v;
好像是真的,那么对date类型的支持呢?试一试
CREATE OR REPLACE VIEW v ASSELECT to_date('20150101','YYYYMMDD') AS c1,NULL AS c2,1 AS c3,NULL AS c4,2 AS c5,NULL AS c6 FROM dualUNION ALLSELECT NULL AS c1,NULL AS c2,NULL AS c3,3 AS c4,NULL AS c5,2 AS c6 FROM dual;
结果竟然:
到这里就不禁要想,应该不是不支持某种数据类型,而是把第一列的数据类型,作为整个函数的数据类型了。
这样试试就行了
最后,既然coalesce函数里面是列,那么用*代表所有列行不行呢?
显然是不行的。
总结:
1、coalesce函数是用来获取第一个不为空的列的值
2、coalesce函数里面的数据类型,必须全部都跟第一列的数据类型一致
3、CREATE OR REPLACE VIEW v AS SELECT NULL AS c FROM dual;这样建立的视图,列c的数据类型是char。
0 0
- Oracle中coalesce函数的用法
- COALESCE函数的用法
- coalesce函数的用法
- Oracle中coalesce函数的简单理解
- Oracle数据库中coalesce函数的使用
- Oracle中集中对于NULL操作的函数NVL,NVL2,以及COALESCE的用法
- Oracle 中 nvl、nvl2、nullif、coalesce、decode 函数的用法详解
- Oracle 中 nvl、nvl2、nullif、coalesce、decode 函数的用法详解
- oracle NVL、NVL2,、NULLIF、COALESCE函数的用法
- oracle NVL、NVL2,、NULLIF、COALESCE函数的用法
- db2 COALESCE 函数的用法
- Oracle中的decode函数、nvl函数、coalesce函数的用法 ccx原创
- COALESCE()、isnull()、nullif()函数的用法
- COALESCE()、isnull()、nullif()函数的用法
- 如何使用Oracle的COALESCE函数
- 如何使用Oracle的COALESCE函数
- Oracle的nvl/nvl2/nullif/coalesce函数
- Spark中repartition和coalesce的用法
- SpringMVC3配置犯错问题
- 让程序只运行一个实例的四种方法
- 合肥最好的婚庆公司HR婚礼管家介绍
- Android打开图库中图片为什么从模糊变清晰
- 数据库中的一些基本操作
- Oracle中coalesce函数的用法
- makefile理解
- Linux下使用OTL操作数据库
- windows 编译安装PROJ.4
- innerTEXT 和innerHTML
- YII+php 分页
- 关于线程退出的问题
- docker命令随记
- linux启动流程