Mybatis 實(shí)現(xiàn)一個(gè)搜索框?qū)Χ鄠€(gè)字段進(jìn)行模糊查詢
1、問題描述:
最近項(xiàng)目需要提供一個(gè)搜索框?qū)Χ鄠€(gè)字段進(jìn)行模糊查詢的操作代替下拉列表選擇單個(gè)字段條件進(jìn)行模糊查詢的操作。
2、解決辦法:
之前的四個(gè)條件的模糊查詢代碼
<if test="featureCode != null">
AND plm_model_option.feature_code= #{featureCode}
</if>
<if test="featureName != null">
AND plm_feature_lib.feature_name= #{featureName}
</if>
<if test="optionCode != null">
AND plm_model_option.option_code= #{optionCode}
</if>
<if test="optionName != null">
AND plm_option_lib.option_name= #{optionName}
</if>
現(xiàn)在進(jìn)行模糊查詢的代碼:
<if test="searchStr!=null and searchStr!=''">
AND
CONCAT(plm_model_option.feature_code,plm_feature_lib.feature_name,plm_model_option.option_code,plm_option_lib.option_name) LIKE CONCAT ('%', #{searchStr},'%')
</if>
補(bǔ)充:最新Mybatis關(guān)鍵字模糊查詢結(jié)果檢索多個(gè)字段解決方案
Mybatis用戶名模糊查詢,賬號(hào)模糊查詢我相信大家都會(huì)。那么如何輸入關(guān)鍵字之后既可以查詢到用戶名的結(jié)果又可以查詢到賬號(hào)的結(jié)果呢?
我這里設(shè)定的是id和username兩個(gè)字段的關(guān)鍵字模糊查詢。
先看下效果圖:
關(guān)鍵字搜索之前的列表數(shù)據(jù)

關(guān)鍵字搜索之后的數(shù)據(jù)

實(shí)現(xiàn)核心代碼:
<select id="list" resultType="com.swkj.pojo.Member">
SELECT *
FROM tb_member
WHERE 1=1
<if test="keyword!='' and keyword!=null">
<!--bind 標(biāo)簽的兩個(gè)屬性都是必選項(xiàng), name 為綁定到上下文的變量名,value為OGNL表達(dá)式。-->
<bind name="pattern" value="'%' + keyword + '%'"/>
and CONCAT(username,id) like #{pattern}
</if>
<if test="sdate!='' and sdate!=null">
and starttime>=#{sdate}
</if>
<if test="edate!='' and edate!=null">
and starttime<=#{edate}
</if>
limit #{m},#{n}
</select>
原理分析:
這里其實(shí)就是在where條件后面將id和username通過concat()函數(shù)連接了起來,然后在對(duì)關(guān)鍵字進(jìn)行模糊查詢,就能得到自己想要的結(jié)果了。So easy!
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
Mybatis-Plus Wrapper條件構(gòu)造器超詳細(xì)使用教程
接口方法的參數(shù)中,會(huì)出現(xiàn)各種 Wrapper,比如 queryWrapper、updateWrapper 等。Wrapper 的作用就是用于定義各種各樣的條件(where)。所以不管是查詢、更新、刪除都會(huì)用到Wrapper2022-03-03
Java對(duì)象轉(zhuǎn)JSON三種常用的方法
在Java中可以使用多種方式將對(duì)象轉(zhuǎn)換為JSON字符串,下面這篇文章主要給大家介紹了關(guān)于Java對(duì)象轉(zhuǎn)JSON三種常用的方法,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-04-04
MyBatis使用動(dòng)態(tài)SQL標(biāo)簽的小陷阱
MyBatis是一個(gè)支持普通SQL查詢,存儲(chǔ)過程和高級(jí)映射的優(yōu)秀持久層框架,MyBatis越來越受大家的喜愛了。下面給大家分享MyBatis使用動(dòng)態(tài)SQL標(biāo)簽的小陷阱,感興趣的朋友一起看看吧2016-10-10
SWT(JFace) 簡易瀏覽器 制作實(shí)現(xiàn)代碼
SWT(JFace) 簡易瀏覽器 制作實(shí)現(xiàn)代碼2009-06-06
在IDEA中配置tomcat并創(chuàng)建tomcat項(xiàng)目的圖文教程
這篇文章主要介紹了在IDEA中配置tomcat并創(chuàng)建tomcat項(xiàng)目的圖文教程,需要的朋友可以參考下2020-07-07
Java 字節(jié)數(shù)組類型(byte[])與int類型互轉(zhuǎn)方法
下面小編就為大家?guī)硪黄狫ava 字節(jié)數(shù)組類型(byte[])與int類型互轉(zhuǎn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-02-02

