mybatis-plus QueryWrapper條件查詢器

liuting52001發表於2020-12-15

接上一章進行學習

@Controller
@RequestMapping("/")
public class TkController {
    @Autowired
    private TkDao tkDao;

    @RequestMapping("/getList")
    public @ResponseBody List<TkBean> getTkList(HttpSession session)throws Exception{
        QueryWrapper<TkBean> wrapper=new QueryWrapper<TkBean>();
        wrapper.eq("id","151");//id =151
        wrapper.eq("name","151");//查詢名稱為151的資料
        wrapper.isNotNull("name");//名稱不為空
        wrapper.isNull("name");//名稱為空
        wrapper.ge("id","151");//查詢id大於等於151,id>=151
        wrapper.gt("id","151");//查詢id小於等於151,id<>>=151
        wrapper.between("id","100","150");//查詢id為100到150之間的資料
        wrapper.like("name","151");//查詢name裡含有151的資料,相等於%151%
        wrapper.notLike("name","151");//查詢name裡不含有151的資料
        wrapper.likeLeft("name","100");//查詢名稱開頭為100的資料,相等於100%
        wrapper.likeRight("name","100");//查詢名稱結尾為100的資料,相等於%100
        wrapper.orderByDesc("id");//降序
        wrapper.orderByAsc("id");//升序
        wrapper.inSql("id","select id from user where sid=20"); //一個SQL語句寫的子查詢

        List<TkBean> list=tkDao.selectList(wrapper);
        return list;
    }

 

條件引數說明

查詢方式說明
setSqlSelect設定 SELECT 查詢欄位
whereWHERE 語句,拼接 + WHERE 條件
andAND 語句,拼接 + AND 欄位=值
andNewAND 語句,拼接 + AND (欄位=值)
orOR 語句,拼接 + OR 欄位=值
orNewOR 語句,拼接 + OR (欄位=值)
eq等於=
allEq基於 map 內容等於=
ne不等於<>
gt大於>
ge大於等於>=
lt小於<
le小於等於<=
like模糊查詢 LIKE
notLike模糊查詢 NOT LIKE
inIN 查詢
notInNOT IN 查詢
isNullNULL 值查詢
isNotNullIS NOT NULL
groupBy分組 GROUP BY
havingHAVING 關鍵詞
orderBy排序 ORDER BY
orderAscASC 排序 ORDER BY
orderDescDESC 排序 ORDER BY
existsEXISTS 條件語句
notExistsNOT EXISTS 條件語句
betweenBETWEEN 條件語句
notBetweenNOT BETWEEN 條件語句
addFilter自由拼接 SQL
last拼接在最後,例如:last("LIMIT 1")

相關文章