mysql中coalesce()的使用技巧小结
前言
最近无意间发现mysql的coalesce,又正好有时间,就把mysql中coalesce()
的使用技巧总结下分享给大家,下面来一起看看详细的介绍:
coalesce()解释
返回参数中的第一个非空表达式(从左向右依次类推);
使用示例
a,b,c三个变量。
select coalesce(null,2,3); // Return 2 select coalesce(null,null,3); // Return 3 select coalesce(1,2,3); // Return 1
通过上面例子可以看出,他的作用是将返回传入的参数中第一个非null的值,再比如
SELECT COALESCE(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1); -- Return 1
如果传入的参数所有都是null,则返回null,比如
SELECT COALESCE(NULL, NULL, NULL, NULL); -- Return NULL
这个参数使用的场合为:假如某个字段默认是null,你想其返回的不是null,而是比如0或其他值,可以使用这个函数
SELECT COALESCE(字段名,0) as value from t;//(如果数据库提成字段默认值不是为0值的话肯定是开发那个的错,个人观点请勿喷哈)。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如有疑问大家可以留言交流,谢谢大家对我们的支持。
相关推荐
-
mysql中替代null的IFNULL()与COALESCE()函数详解
在MySQL中isnull()函数不能作为替代null值! 如下: 首先有个名字为business的表: SELECT ISNULL(business_name,'no business_name') AS bus_isnull FROM business WHERE id=2 直接运行就会报错: 错误代码: 1582 Incorrect parameter count in the call to native function 'isnull' 所以,isnull()函数在mysql中就行不
-
mysql中coalesce()的使用技巧小结
前言 最近无意间发现mysql的coalesce,又正好有时间,就把mysql中coalesce()的使用技巧总结下分享给大家,下面来一起看看详细的介绍: coalesce()解释 返回参数中的第一个非空表达式(从左向右依次类推): 使用示例 a,b,c三个变量. select coalesce(null,2,3); // Return 2 select coalesce(null,null,3); // Return 3 select coalesce(1,2,3); // Return 1
-
mysql中的7种日志小结
MySQL中有以下日志文件,分别是: 1:重做日志(redo log) 2:回滚日志(undo log) 3:二进制日志(binlog) 4:错误日志(errorlog) 5:慢查询日志(slow query log) 6:一般查询日志(general log) 7:中继日志(relay log) 其中重做日志和回滚日志与事务操作息息相关,二进制日志也与事务操作有一定的关系,这三种日志,对理解MySQL中的事务操作有着重要的意义. 一.重做日志(redo log) 作用: 确保事务的持久性.re
-
分析MySQL中优化distinct的技巧
有这样的一个需求:select count(distinct nick) from user_access_xx_xx; 这条sql用于统计用户访问的uv,由于单表的数据量在10G以上,即使在user_access_xx_xx上加上nick的索引, 通过查看执行计划,也为全索引扫描,sql在执行的时候,会对整个服务器带来抖动: root@db 09:00:12>select count(distinct nick) from user_access; +--------+ | count(dis
-
MySQL中一些优化straight_join技巧
在oracle中可以指定的表连接的hint有很多:ordered hint 指示oracle按照from关键字后的表顺序来进行连接:leading hint 指示查询优化器使用指定的表作为连接的首表,即驱动表:use_nl hint指示查询优化器使用nested loops方式连接指定表和其他行源,并且将强制指定表作为inner表. 在mysql中就有之对应的straight_join,由于mysql只支持nested loops的连接方式,所以这里的straight_join类似oracle中
-
浅谈MySQL中的子查询优化技巧
mysql的子查询的优化一直不是很友好,一直有受业界批评比较多,也是我在sql优化中遇到过最多的问题之一,你可以点击这里 ,这里来获得一些信息,mysql在处理子查询的时候,会将子查询改写,通常情况下,我们希望由内到外,也就是先完成子查询的结果,然后在用子查询来驱动外查询的表,完成查询,但是恰恰相反,子查询不会先被执行:今天希望通过介绍一些实际的案例来加深对mysql子查询的理解: 案例:用户反馈数据库响应较慢,许多业务动更新被卡住:登录到数据库中观察,发现长时间执行的sql: | 10437
-
mysql中数据统计的技巧备忘录
mysql 作为常用数据库,操作贼六是必须的,对于数字操作相关的东西,那是相当方便,本节就来拎几个统计案例出来供参考! order订单表,样例如下: CREATE TABLE `yyd_order` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `user_id` int(11) NOT NULL, `order_nid` varchar(50) NOT NULL, `status` varchar(50) NOT NULL DEFAUL
-
PHP与MySQL开发的8个技巧小结
1. PHP 中数组的使用 在操作数据库时,使用关联数组(associatively-indexed arrays)十分有帮助,下面我们看一个基本的数字格式的数组遍历: 复制代码 代码如下: <?php $temp[0] = "richmond"; $temp[1] = "tigers"; $temp[2] = "premiers"; for($x=0;$x<count($temp);$x++) { echo $temp[$x]; e
-
mysql中null(IFNULL,COALESCE和NULLIF)相关知识点总结
本文实例讲述了mysql中null(IFNULL,COALESCE和NULLIF)相关知识点.分享给大家供大家参考,具体如下: 在MySQL中,NULL值表示一个未知值,它不同于0或空字符串'',并且不等于它自身. 我们如果将NULL值与另一个NULL值或任何其他值进行比较,则结果为NULL,因为一个不知道是什么的值(NULL值)与另一个不知道是什么的值(NULL值)比较,其值当然也是一个不知道是什么的值(NULL值). 然而我们通常,使用NULL值来表示数据丢失,未知或不适用的情况. 例如,潜
-
mysql中取出json字段的小技巧
目录 mysql取出json字段技巧 mysql中使用函数JSON_EXTRACT() spark sql中使用get_json_object() mysql取json,在不知道key情况下,取他的value详细值 mysql取出json字段技巧 有时候会将一些信息以json形式存在数据库中,如果太长的话,在取的过程中sql运行会比较慢,如果只取某些键值的话会比较浪费 mysql中使用函数JSON_EXTRACT() ±-±------------------------------------
随机推荐
- 浅析JS异步加载进度条
- javascript实现输出指定行数正方形图案的方法
- .NET中用ICSharpCode.TextEditor自定义代码折叠与高亮
- Python读写unicode文件的方法
- docker在已有的tomcat镜像上打新的镜像的Dockerfile编写说明介绍
- PHP实现的登录,注册及密码修改功能分析
- js网页版计算器的简单实现
- 用计算列实现移动加权平均算法
- 分离与继承的思想实现图片上传后的预览功能:ImageUploadView
- Nodejs初级阶段之express
- Android开发中Activity属性设置小结
- Apache负载均衡设置方法 mod_proxy使用介绍
- jQuery中get和post方法传值测试及注意事项
- jQuery基础教程笔记适合js新手第1/2页
- JS实现自适应高度表单文本框的方法
- JS保留两位小数,多位小数的示例代码
- Android canvas画图操作之切割画布实现方法(clipRect)
- 防火墙是关键控制还是全网服务
- Swift利用Decodable解析JSON的一个小问题详解
- Cocos2d实现刮刮卡效果