mysql的otherwise_MySQL中<choose>标签的用法

先给大家来个SQL语句:

choose (when,otherwize) ,相当于java 语言中的 switch ,与 jstl 中 的 choose 很类似。

SELECT

att.address,

m.id,

m.sex AS sex_type,

m.nickname,

m.focus_num,        

m.following_num,   

m.consulation_num,    

m.user_type,        

(select  count(*)  from alq_member_follow mf where  m.id=mf.member_id and  #{login_member_id}=mf.member_following_id and (mf.is_delete=0 or mf.is_delete is null)) as isFocus

0 as isFocus

FROM `alq_member` m

LEFT JOIN alq_attachment att ON att.id = m.logo_attachment_id

WHERE m.id=#{member_id}

这里面有 的用法,记录一下,choose (when, otherwise)标签

有时候我们并不想应用所有的条件,而只是想从多个选项中选择一个。而使用if标签时,只要test中的表达式为 true,就会执行 if 标签中的条件。MyBatis 提供了 choose 元素。if标签是与(and)的关系,而 choose 是或(or)的关系。

choose标签是按顺序判断其内部when标签中的test条件出否成立,如果有一个成立,则 choose 结束。当 choose 中所有 when 的条件都不满则时,则执行 otherwise 中的sql。类似于Java 的 switch 语句,choose 为 switch,when 为 case,otherwise 则为 default。

这样就很容易看懂了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值