mysql分條件查詢 choose

2021-10-25 11:30:20 字數 899 閱讀 6274

一、問題描述

在完成某個介面時,發現需求是這樣的:如果是管理員角色,要查詢所有資訊;如果是非管理員使用者,則按照當前登入使用者的類別來進行查詢,最簡單是拆分成兩個sql語句,但是這種寫法有點low,還是寫成乙個分條件查詢sql語句。

二、實現

(1)業務層關鍵**實現

hashmapmap = new hashmap<>();

map.put("flag",flag);

map.put("banktype",banktype);

map.put("userid",userid);

map.put("searchtext",searchtext);

listgetusermenuid(mapmap);
(3)xml中sql語句

select * from user

where 1= 1

and concat(ifnull(username,''),ifnull(userid,''))

like

concat("%",#,"%")

where bank_type = #

and concat(ifnull(username,''),ifnull(userid,''))

like

concat("%",#,"%")

where userid = #

and concat(ifnull(username,''),ifnull(userid,''))

like

concat("%",#,"%")

多條件查詢使用choose關鍵字即可,上面的sql語句中還新增了多字段模糊匹配,使用concat函式。

mysql查詢條件 Mysql查詢條件的使用

mysql查詢條件的使用 方法 解釋 gt 大於 gte 大於等於 lt 小於 lte 小於等於 例如 article article.objects.filter id gt 5 startswith 以指定某個字串開始,大小寫敏感 istartswith 以指定某個字串開始,大小寫不敏感 end...

mysql條件查詢

語法 select 查詢列表 from 表名where 篩選條件 分類 一.按條件表示式篩選 條件運算子 不等於 二.按邏輯表示式篩選 邏輯運算子 and or not 三.模糊查詢 like between and in is null 四.排序查詢 語法 select 查詢列表 from 表 w...

MySQL 查詢條件

使用where子句對錶中的資料篩選,結果為true的行會出現在結果集中 語法如下 select from 表名 where 條件 例 select from students where id 1 where後面支援多種運算子,進行條件的處理 比較運算子 邏輯運算子 模糊查詢 範圍查詢 空判斷等於 ...