mysql中的三元运算

Posted samuel-leung

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql中的三元运算相关的知识,希望对你有一定的参考价值。

mysql的if函数,例如:IF(expr1,expr2,expr3) 
说明:如果 expr1是TRUE,则IF()的返回值为expr2; 否则返回值则为expr3
实例场景:如果video_id为null,则直接返回空字符,避免不必要的查询影响效率:
(SELECT if(isnull(video_id),‘‘,(SELECT cover from topic_video tv where tv.id = video_id))) 别称,

 

在数据查询过程中,我们有可能需要用到数据库中的三元运算符,实际上这种操作是要消耗大量时间的。如果实在避免避免不了这样的操作,我们就应该一个相对比较好的一个方法。

MySql中的三元运算符有两种方法:

1、case when 条件 then (条件为true时执行) else(条件为false时执行) end /*end不可少*/

2、select *,if(expr1,expr2,expr3) from 表名

两种方法的比较:case when 的执行速度要快于if(expr1,expr2,expr3)条件查询

 

以上是关于mysql中的三元运算的主要内容,如果未能解决你的问题,请参考以下文章

mysql三元运算,上下连表

MySQL存储过程中是不是有三元运算符?

相当于三元运算符的 SQL 语句

Python中的三元运算

python中的三元运算

Yaml 中的三元运算符