91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

mybatis?QueryWrapper的apply、last、select怎么用

發布時間:2022-03-22 15:04:37 來源:億速云 閱讀:5598 作者:iii 欄目:開發技術

這篇“mybatis QueryWrapper的apply、last、select怎么用”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“mybatis QueryWrapper的apply、last、select怎么用”文章吧。

QueryWrapper條件構造之apply、last、select

場景: 查詢數據庫限制條數時

mysql上的limit使用 

QueryWrapper needSyn = new QueryWrapper();
needSyn.ge("ModifyDate",lmtSynRec.getLatestDate());
needSyn.last("limit 200");
List<CusCarInfo> needData = cusCarInfoMapper.selectList(needSyn);

如果是oracle則可以用apply

needSyn.apply("rownum < {0}" , 200);

如果是sqlserver

建議自己寫sql查詢語句

<select id="getSynList" resultType="com.xmeport.project.model.entity.CusCarInfo">
    select top ${top}  *  from CUS_CAR_INFO t where t.ModifyDate > cast(#{latestDate} as datetime) orderBy 
 t.ModifyDate asc
</select>
List<CusCarInfo> getSynList(int top, Date latestDate);

或者使用QueryWrapper的select

QueryWrapper<CusCarInfo> wrapper  = new QueryWrapper();
wrapper.select("top 200 *");
return this.list(wrapper);

以上就是根據最新時間查詢top條數據

傳入的字段是時間類型,就用#{} 占位符接收。如果是具體的一個數字或字符可以用 ${ }來接收。

條件構造器QueryWrapper實例

我們再搞幾個實例來深入理解下條件構造器QueryWrapper的用法:

案例一

查詢姓李的,并且出生日期范圍是1993-02-09到1994-04-09的員工

sql實現:

SELECT * FROM t_employee WHERE DATE_FORMAT(birthday,'%Y-%m-%d')>='1993-02-09' AND DATE_FORMAT(birthday,'%Y-%m-%d')<='1994-04-09' AND NAME LIKE '李%'

mp實現:

/**
 * 查詢姓李的,并且出生日期范圍是1993-02-09到1994-04-09的員工
 * sql:SELECT * FROM t_employee WHERE DATE_FORMAT(birthday,'%Y-%m-%d')>='1993-02-09' AND DATE_FORMAT(birthday,'%Y-%m-%d')<='1994-04-09' AND NAME LIKE '李%'
 */
@Test
public void selectByQueryWrapper3(){
  QueryWrapper<Employee> queryWrapper=new QueryWrapper();
  // QueryWrapper<Employee> queryWrapper2=Wrappers.<Employee>query();
  queryWrapper.apply("DATE_FORMAT(birthday,'%Y-%m-%d')>={0} and DATE_FORMAT(birthday,'%Y-%m-%d')<={1}","1993-02-09","1994-04-09").likeRight("name","李");
  List<Employee> employeeList = employeeMapper.selectList(queryWrapper);
  System.out.println(employeeList);
}

案例二

查詢姓李的或者郵箱不為空并且是女性的員工

sql實現:

SELECT * FROM t_employee WHERE NAME LIKE '李%' OR (email IS NOT NULL AND gender ='女')

mp實現:

/**
 * 查詢姓李的或者郵箱不為空并且是女性的員工
 * sql:SELECT * FROM t_employee WHERE NAME LIKE '李%' OR (email IS NOT NULL AND gender ='女')
 */
@Test
public void selectByQueryWrapper4(){
  QueryWrapper<Employee> queryWrapper=new QueryWrapper();
  // QueryWrapper<Employee> queryWrapper2=Wrappers.<Employee>query();
  queryWrapper.likeRight("name","李").or(wq->wq.isNotNull("email").eq("gender","女"));
  List<Employee> employeeList = employeeMapper.selectList(queryWrapper);
  System.out.println(employeeList);
}

案例三

查詢姓李的并且郵箱不為空或者是女性的員工

sql實現:

SELECT * FROM t_employee WHERE NAME LIKE '李%' AND (email IS NOT NULL OR gender ='女')

mp實現:

/**
 * 查詢姓李的并且郵箱不為空或者是女性的員工
 * sql:SELECT * FROM t_employee WHERE NAME LIKE '李%' AND (email IS NOT NULL OR gender ='女')
 */
@Test
public void selectByQueryWrapper5(){
  QueryWrapper<Employee> queryWrapper=new QueryWrapper();
  // QueryWrapper<Employee> queryWrapper2=Wrappers.<Employee>query();
  queryWrapper.likeRight("name","李").and(wq->wq.isNotNull("email").or().eq("gender","女"));
  List<Employee> employeeList = employeeMapper.selectList(queryWrapper);
  System.out.println(employeeList);
}

案例四

查詢屬于編號1,2,3部門的并且薪水小于等于3500的員工 根據年齡從大到小排序顯示

sql實現:

SELECT * FROM t_employee WHERE salary<=3500 AND departmentId IN (1,2,3) ORDER BY birthday ASC

mp實現:

/**
 * 查詢屬于編號1,2,3部門的并且薪水小于等于3500的員工 根據年齡從大到小排序顯示
 * sql:SELECT * FROM t_employee WHERE salary<=3500 AND departmentId IN (1,2,3) ORDER BY birthday ASC
 */
@Test
public void selectByQueryWrapper6(){
  QueryWrapper<Employee> queryWrapper=new QueryWrapper();
  // QueryWrapper<Employee> queryWrapper2=Wrappers.<Employee>query();
  queryWrapper.likeRight("name","李").and(wq->wq.isNotNull("email").or().eq("gender","女"));
  List<Employee> employeeList = employeeMapper.selectList(queryWrapper);
  System.out.println(employeeList);
}

以上就是關于“mybatis QueryWrapper的apply、last、select怎么用”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

建德市| 星座| 苏州市| 涞源县| 上栗县| 宜昌市| 郑州市| 东明县| 齐河县| 上犹县| 民丰县| 临高县| 百色市| 集安市| 万源市| 临海市| 嵩明县| 新沂市| 梧州市| 温泉县| 齐齐哈尔市| 太仓市| 福建省| 吴川市| 门源| 长汀县| 巴南区| 阳泉市| 高安市| 崇仁县| 杨浦区| 阜南县| 南皮县| 大名县| 宜君县| 大新县| 睢宁县| 成都市| 玛曲县| 公安县| 安顺市|