choose (when, otherwise)
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。
例如下面例子,同样把所有可以限制的条件都写上,方面使用。choose会从上到下选择一个when标签的test为true的sql执行。安全考虑,我们使用where将choose包起来,放置关键字多于错误。
<choose><when test="param.agentId">AND o.agentId = #{param.agentId}</when><when test="param.groupId">AND o.groupId = #{param.groupId}</when><when test="param.mendianId">AND o.mendianId = #{param.mendianId}</when><when test="param.areaId">AND o.areaId = #{param.areaId}</when><when test="param.bigAreaId">AND o.bigAreaId = #{param.bigAreaId}</when><when test="param.cityId">AND o.cityId = #{param.cityId}</when><otherwise></otherwise></choose>
只取多个条件中的一个,相当于switch
choose (when, otherwise)相关推荐
- jstl c:choose、c:when和c:otherwise标签
在用spring mvc中,页面前端老用jstl,记录一下. <c:choose>.<c:when>和<c:otherwise>在一起连用,可以实现Java语言中的 ...
- 聊聊RibbonLoadBalancerClient的choose方法
为什么80%的码农都做不了架构师?>>> 序 本文主要研究一下RibbonLoadBalancerClient的choose方法 RibbonLoadBalancerClien ...
- mssql 查询当前自增序号_查询函数Choose、Lookup、Hlookup、Vlookup应用技巧解读
Excel中的查找和引用函数主要用于查找工作表中的所需内容,还可以获得工作表中的单元格位置或表格大小等信息,如果将查找和引用函数配合其他的Excel函数使用,将会发挥更强大的功能.常用的查询表中的数据 ...
- What are HANA's models of cloud computing, and which should I choose?
What are HANA's models of cloud computing, and which should I choose? http://searchsap.techtarget.co ...
- We can all choose freedom over a job
We can all choose freedom over a job By Luke Johnson 人人都能创业? Can everyone be an entrepreneur? At fi ...
- 安装android studio出现choose an account with administrator
安装android studio出现choose an account with administrator Windows安装时候会出现的问题 确保你是管理员账号登录,并且拥有管理员权限 确保安装包 ...
- 【错误记录】FFmpeg 推流报错 ( FLV does not support sample rate 8000, choose from (44100, 22050, 11025) )
文章目录 一.报错信息 二.解决方案 一.报错信息 在 Android 平台中 , 先使用 MediaRecorder 将从 麦克风 采集到的 音频压缩到文件中 , 使用 交叉编译的 FFmpeg 可 ...
- mybaits十六:使用choose标签实现分支选择
<!-- 分支选择<choose><when></when><otherwise></otherwise></choose> ...
- Choose unique values for the 'webAppRootKey' context-param in your web.xml files!
报错日志 tomcat里面跑了多个项目,启动时报如下错误: 严重: The web application [/drc] registered the JDBC driver [com.mysql.j ...
- machine learning (6)---how to choose features, polynomial regression
how to choose features, polynomial regression:通过定义更适合我们的feature,选择更好的模型,使我们的曲线与数据更好的拟合(而不仅仅是一条直线) 可以 ...
最新文章
- java程序设计_80后程序员,带你深入理解Java基本的程序设计结构,不来你别后悔...
- 【转】C++ this指针(直戳本质)
- 阿里云 fatal: Authentication failed 退出码 128
- CSS浮动、定位与z-index层叠等级详解——响应式Web系列学习笔记
- flutter 分割线_Flutter 底部弹框 showModalBottomSheet 使用Demo
- Daily scrum 11.22
- mysql启动后密码_mysql的初级问题-启动后无法正常登陆修改密码
- 如何提升大数据分析能力
- kong自定义插件(修改官方插件)
- 引爆点---绝对内行
- HCIP2------BGP1
- Pytorch unfold和fold
- Newtonsoft.Json.Linq 简单使用
- 修改Hosts文件解决文件访问问题
- 网络存储服务器接显示器,Unraid下,单核显IGPU实现win10外接显示屏,显卡成功驱动...
- EasyExcel合并相同内容单元格及动态标题功能的实现
- 2.3 万 Star 的国产装机神器,制作可启动 U 盘
- 计算机的运作流程的个人感想
- 墨干V1.1.0: 新一代结构化编辑器的雏形
- 如何防御黑客的社工?
热门文章
- 远程连接 部分基础命令
- 联通3g升级4g显示无服务器,中国联通回应关闭2G3G信号 协助2G用户向3G4G网络升级方案 移动关闭2G3G了吗...
- 求两个文件的交集、并集和差集 sort和uniq
- Windows快捷键笔记
- 分享88个NET源码,总有一款适合您
- “耳朵人艺术”敲响了中国,也叫醒了世界
- iPhone创富志:日进千金 无限遐想的盈利空间
- 2020年河南高考--各高校在河南录取分数线预测(本科二批——理科):
- 前端跨域请求原理及实践(加qq群:342430957)
- 沧海一粟小组(第二次作业)