建站软件 优化软件 编程软件 网页辅助 站群程序 网站程序 图像处理 资源教程 字体下载 推荐软件


您的位置:首页 > MYSQL学习 > mysql里面怎么使用三元运算符

mysql里面怎么使用三元运算符

时间:2015-03-30 16:14:18  来源:免费模板网 作者:风雪 阅读次数 tagsmysql三元运算符

我们知道在php里面有3元运算符,三元运算符可以简化代码
php里面的三元运算符格式是 ? :

$id = isset($_GET['id']) ? $_GET['id'] : false;
存在接受的id那么id等于接受的id 否则id为假,那么在mysql里面是怎么定义的呢

三元运算就是一个简单的if else的判断了,但是三元运算比if else更简洁好用了,那知mysql中支持三元运算吗?一起来看看.

网站业务需要按实际成立金额排序,要用的有三个字段:price(商品价格),pay(实际支付价格),num(购买数量),如果商品有优惠就是按pay价格成立,也就是pay>0,如果没有优惠就是实价成交,pay=0.所以我们要的实际价格就是如果pay>0就是pay*num,否则就是price*num.这也就是要用到三元运算pay>0?pay:price.

那么mysql有三元运算符吗:

可以用case when,这个mysql应该支持:select a,case when b is null then'xxxx' else b end b from table_xxx where,还有这个.

sql中也是支持三元运算的,语法为:

CASE  WHEN 条件 THEN 如果符合 ELSE 如果不符合 END

所以在我们这业务中的SQL语句就是:

select   CASE  WHEN pay>0 THEN pay*num ELSE price*num END as ‘amount’ from table_name order by amount desc;
 

case when 1<2 then 'yes' else 'no' end

相当于你的三元运算符 1<2? 'yes':'no'

?

SELECT t_sys_dlxxb.id,
t_sys_dlxxb.dldm,
t_sys_dlxxb.lkh,
t_sys_dlxxb.lm,
t_sys_dlxxb.xzqm,
t_sys_dlxxb.xzqh,
t_sys_dlxxb.lkldm || (case when t_sys_dlxxb.zddl is not null then '('||t_sys_dlxxb.zddl||')' else t_sys_dlxxb.zddl end),
t_sys_dlxxb.pysx,
t_sys_dlxxb.xtsx,

FROM t_sys_dlxxb

本文地址:https://www.freemoban.com/mysql/2015/0330/1119.html

猜你喜欢
栏目推荐
模板推荐

Copyright:www.freemoban.com 免费模板网 All Rights Reserved 网站备案:辽ICP备19014872号-2   辽公网安备 21010602000376号  辽公网安备:42900402000182号

免责声明:本站部分资源来自互联网收集,版权归原创者所有,如果侵犯了你的权益,我们会及时删除侵权内容,联系QQ:1615187561 谢谢合作!