日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

mybatis and,or復合查詢操作

瀏覽:254日期:2023-10-21 11:17:12

要查詢的sql:

select * from user where name = ? and (age=? or city=?);

方法1:不使用Example查詢

直接在usermapper.xml中修改sql

方法2:使用Example查詢

sql可轉換成

select * from user where (name = ? and age=?) or (name=? and city=?);

然后使用Example查詢

UserExample example=new UserExample();example.or().orAgeLike('%'+searchParam+'%').andNameEqualTo(userName);example.or().orCityLike('%'+searchParam+'%').andNameEqualTo(userName);

補充知識:MySQL/Mybatis多個AND和OR混用注意事項

mysql中AND的優先級高于OR,所以在查詢時,會優先執行AND條件,除非使用()來將一個AND和OR括起來,這樣才能使得OR得以按照語句的順序執行。

如下圖所示:

mybatis and,or復合查詢操作

java測試代碼

mybatis and,or復合查詢操作

@Test public void TestMutil(){ Species species = new Species(); ArrayList<String> arrayList = new ArrayList<String>(); arrayList.add('長喙蚤'); arrayList.add('尤氏'); List<Species> querySpeciesesListByMutilCondition = this.speciesMapper.querySpeciesesListByMutilCondition(arrayList, species.getEnglishName(), species.getHost(), species.getPosition(), species.getLocation(), species.getPhylum(), species.getClassName(), species.getOrder(), species.getFamily(), species.getJenus()); for (Species s : querySpeciesesListByMutilCondition) { System.out.println(s); } System.out.println(querySpeciesesListByMutilCondition.size()); }

Mapper文件中沒有使用()放在語句中執行情況

mybatis and,or復合查詢操作

<select resultType='Species'> SELECT * FROM t_json_species <where> <if test='englisName != null and englisName != ’’'>AND englishName like CONCAT(’%’,#{englishName},’%’) OR sameName like CONCAT(’%’,#{englishName},’%’)</if> <if test='host != null and host != ’’'>AND host like CONCAT(’%’,#{host},’%’)</if> <if test='position != null and position != ’’'>AND position like CONCAT(’%’,#{position},’%’)</if> <if test='location != null and location != ’’'>AND location like CONCAT(’%’,#{location},’%’)</if> <if test='phylumName != null and phylumName != ’’'>AND phylumName = #{phylumName}</if> <if test='className != null and className != ’’'>AND className = #{className}</if> <if test='orderName != null and orderName != ’’'>AND orderName = #{orderName}</if> <if test='familyName != null and familyName != ’’'>AND familyName = #{familyName}</if> <if test='jenusName != null and jenusName != ’’'>AND jenusName = #{jenusName}</if> <if test='nameList != null and nameList != ’’'> <foreach collection='nameList' item='name' >AND name like CONCAT(’%’,#{name},’%’) OR sameName like CONCAT(’%’,#{name},’%’)</foreach> </if> </where> </select>

Mapper文件中使用()放在語句中執行情況

mybatis and,or復合查詢操作

<select resultType='Species'> SELECT * FROM t_json_species <where> <if test='englisName != null and englisName != ’’'>AND englishName like CONCAT(’%’,#{englishName},’%’) OR sameName like CONCAT(’%’,#{englishName},’%’)</if> <if test='host != null and host != ’’'>AND host like CONCAT(’%’,#{host},’%’)</if> <if test='position != null and position != ’’'>AND position like CONCAT(’%’,#{position},’%’)</if> <if test='location != null and location != ’’'>AND location like CONCAT(’%’,#{location},’%’)</if> <if test='phylumName != null and phylumName != ’’'>AND phylumName = #{phylumName}</if> <if test='className != null and className != ’’'>AND className = #{className}</if> <if test='orderName != null and orderName != ’’'>AND orderName = #{orderName}</if> <if test='familyName != null and familyName != ’’'>AND familyName = #{familyName}</if> <if test='jenusName != null and jenusName != ’’'>AND jenusName = #{jenusName}</if> <if test='nameList != null and nameList != ’’'> <foreach collection='nameList' item='name' >AND (name like CONCAT(’%’,#{name},’%’) OR sameName like CONCAT(’%’,#{name},’%’))</foreach> </if> </where> </select>

補充:

如果這里使用多個%來解決上述的含有多個OR和AND情況,那么所實現功能會有問題,因為多個關鍵詞有%來連接,會有一個次序問題。具體效果見下圖

mybatis and,or復合查詢操作

以上這篇mybatis and,or復合查詢操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Mybatis 數據庫
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产一区二区精品福利地址| 日韩中文字幕麻豆| 国产精品v日韩精品v欧美精品网站 | 亚洲免费黄色| 香蕉久久国产| 欧美激情亚洲| 亚洲一区有码| 亚洲精品1区| 免费一级片91| 99xxxx成人网| 正在播放日韩精品| 欧美日韩一区二区综合| 欧美日韩水蜜桃| 国产精选在线| 精品淫伦v久久水蜜桃| 日本aⅴ亚洲精品中文乱码 | 美女精品在线| 亚洲精品无播放器在线播放| 国产精品白丝av嫩草影院| 久久黄色影视| 欧美亚洲网站| 老鸭窝毛片一区二区三区| 日韩在线一二三区| 久久中文在线| 日韩欧美中文字幕一区二区三区| **爰片久久毛片| 青青草精品视频| 亚洲理论在线| 热久久久久久久| 69堂精品视频在线播放| 欧美中文一区| 国产精品欧美在线观看| 国际精品欧美精品| 中文在线а√天堂| 深夜福利视频一区二区| 国产一区欧美| 婷婷激情图片久久| 黑丝一区二区| 五月婷婷亚洲| 天堂成人国产精品一区| 亚洲涩涩av| 久久国产三级精品| 国产一区二区三区黄网站| 免费一级欧美片在线观看网站 | 国产情侣久久| 日韩精品永久网址| 99视频一区| 成人午夜国产| 亚洲欧美视频| 欧美伊人影院| 午夜久久福利| 国产精品扒开腿做爽爽爽软件| 在线 亚洲欧美在线综合一区| 亚洲三区欧美一区国产二区| 免费一区二区视频| 性欧美69xoxoxoxo| 亚洲一卡久久| 91精品美女| 久久精品系列| 精品视频99| 首页国产欧美久久| 色婷婷综合网| 国产精选久久| 亚洲欧洲日本mm| 久久久影院免费| 日日摸夜夜添夜夜添国产精品| 国产精品一国产精品k频道56| 欧美成人午夜| 中文字幕人成乱码在线观看| 国产精品**亚洲精品| 国产精品资源| 欧美日韩在线二区| 国产中文字幕一区二区三区| 视频一区二区欧美| 日韩一区二区三区免费视频| 国产丝袜一区| 成人一二三区| 久久精品女人| 日本中文字幕不卡| 亚洲欧美日本国产专区一区| 亚洲精品日本| 国产精品一区二区中文字幕| 美女一区网站| 婷婷亚洲成人| 成人片免费看| 国产欧美高清| 亚洲少妇诱惑| 欧美亚洲网站| 日韩在线观看一区二区三区| 日韩av资源网| 国产精品成人国产| 久久精品理论片| 午夜欧美精品| 中文字幕中文字幕精品| 日韩在线卡一卡二| 精品国产不卡一区二区| 性欧美精品高清| 国产精品男女| 国内精品福利| 精品一区电影| 日韩高清三区| 蜜桃成人av| 国产成人久久精品麻豆二区 | 视频小说一区二区| 欧美在线看片| 1024精品久久久久久久久| 丰满少妇一区| 日韩av中文在线观看| 日韩一级欧洲| 久久香蕉网站| 亚洲欧美网站在线观看| 黄色aa久久| 成人在线视频免费看| 日韩精品一区二区三区中文| av在线资源| 国产精品亚洲综合色区韩国| 玖玖精品视频| 国产精品久久久久av蜜臀| 爽好久久久欧美精品| 久久久久欧美精品| 国产福利电影在线播放| 日本一区二区高清不卡| 久久狠狠久久| 欧美日韩视频免费观看| 日本欧洲一区二区| 日韩欧美三级| 成人在线视频区| 亚欧洲精品视频在线观看| 久久精品国产99国产精品| 伊人久久视频| 欧美久久精品一级c片| 久久精品123| 精品久久网站| 亚洲男人在线| 日韩欧美2区| 国产精品呻吟| 香蕉久久精品| 国产一区二区三区不卡视频网站| 日韩欧美另类中文字幕| 蜜桃视频欧美| 久久九九精品| 日韩视频二区| 久久激情网站| 久久精品影视| 久久一区亚洲| 亚洲爱爱视频| 亚洲欧美日韩高清在线| 亚洲深深色噜噜狠狠爱网站 | 欧美日韩日本国产亚洲在线| 国产一卡不卡| 日韩av网站在线观看| 国产亚洲亚洲| 久久久久国产一区二区| 欧美国产免费| 欧美日韩中文一区二区| 日本少妇一区二区| 一区二区高清| 视频一区欧美日韩| 日韩在线观看一区二区| 老鸭窝亚洲一区二区三区| 亚洲毛片视频| 中文字幕日韩亚洲| 国产高清一区二区| 国产亚洲在线观看| 视频一区在线播放| 国产毛片一区| 亚洲v天堂v手机在线| 国产日韩一区二区三区在线播放| 日本aⅴ亚洲精品中文乱码| 先锋影音久久久| 日韩高清不卡一区| 欧美黄色精品| 国内精品麻豆美女在线播放视频| 四虎4545www国产精品| 国产99精品一区| 激情欧美国产欧美| 亚洲欧美日本国产| 视频一区二区三区中文字幕| 国产欧美日韩亚洲一区二区三区| 精品国产亚洲日本| 日韩精品影视| 日韩专区视频网站| 久久久久伊人| 久久久久久黄| 喷白浆一区二区| 国模精品一区| 激情综合网站| 国产精品白丝av嫩草影院| 国产自产自拍视频在线观看| 亚洲专区视频| 国产精品va视频| 日韩一级精品| 国产日韩欧美在线播放不卡| 神马久久午夜| 久久伦理在线| 91国内精品| 人人精品亚洲| 天海翼精品一区二区三区| 91精品日本| 日韩欧美在线中字|