国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Mybatis ORDER BY 排序失效 & ORDER BY 與 CASE WHEN THEN 排序問(wèn)題

這篇具有很好參考價(jià)值的文章主要介紹了Mybatis ORDER BY 排序失效 & ORDER BY 與 CASE WHEN THEN 排序問(wèn)題。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

一、ORDER BY 排序失效

如果傳遞給 mapper 的參數(shù)值是以 #{test_參數(shù)} 的形式,那么就會(huì)報(bào)錯(cuò)

具體如下:

傳遞參數(shù)是 name 排序規(guī)則是升序 asc

package com.ruoyi.web.mapper;
public interface TestMapper {
 List<TestEntity> getTestData( @Param("testcolumn") String testColumn, @Param("rule") String rule);
}
<mapper namespace="com.test.mapper.TestMapper">

<select id="getTestData" resultType="com.test.entity.TestEntity">
        SELECT * FROM test_table ORDER BY #{testcolumn} #{rule}
        
    </select>
</mapper>

ORDER BY 后 使用 #{ } 獲取參數(shù)值,運(yùn)行后,會(huì)報(bào)錯(cuò)的,必須改成 ${ },井號(hào)改成 美元符號(hào)。

如下所示:

<mapper namespace="com.test.mapper.TestMapper">

<select id="getTestData" resultType="com.test.entity.TestEntity">
        SELECT * FROM test_table ORDER BY ${testcolumn} ${rule}
        
    </select>
</mapper>

二、ORDER BY 與 CASE WHEN THEN 排序問(wèn)題

數(shù)據(jù)庫(kù)表 test_table 的真實(shí)字段名: test_id

測(cè)試參數(shù)值:

testcolumn 參數(shù)賦予內(nèi)容是 testId

rule 排序規(guī)則是升序 asc

package com.ruoyi.web.mapper;
public interface TestMapper {
 List<TestEntity> getTestData( @Param("testcolumn") String testColumn, @Param("rule") String rule);
}
<mapper namespace="com.test.mapper.TestMapper">

<select id="getTestData" resultType="com.test.entity.TestEntity">
        SELECT * FROM test_table ORDER BY 
		CASE 
		WHEN "${testcolumn}" = 'testId' 
		THEN test_id
        END   ${rule}
        
    </select>
</mapper>

注意:

${ } 一定要被雙引號(hào)包含,否則不會(huì)進(jìn)行一個(gè)字符串匹配,即和 'testId' 進(jìn)行對(duì)比,會(huì)報(bào)錯(cuò)的,然后返回值的就不需要加雙引號(hào)或單引號(hào)了, 直接就是數(shù)據(jù)庫(kù)表 test_table 的字段名


參考鏈接

1. Mybatis實(shí)現(xiàn) 動(dòng)態(tài)排序

2. MyBatis排序時(shí)使用order by 動(dòng)態(tài)參數(shù)時(shí)需要注意,用$而不是#

3. Mybatis Order By動(dòng)態(tài)參數(shù)詳解

4. mybatis中orderBy(排序字段)和sort(排序方式)引起的bug

5. Mybatis動(dòng)態(tài)字段排序防注入-簡(jiǎn)單粗暴上代碼的方式

6. Mybatis自定義排序詳解CASE WHEN

7. Mybatis CASE WHEN 的用法

8. Mybatis中case when 配合 trim的使用方法

9. MYBATIS中CASE WHEN的使用

10. Mybatis CASE WHEN 的用法

11. mysql 某列指定值靠前排序:order by 高級(jí)用法之case when

12. MyBatis 排序時(shí)使用 order by 動(dòng)態(tài)參數(shù)文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-667466.html

到了這里,關(guān)于Mybatis ORDER BY 排序失效 & ORDER BY 與 CASE WHEN THEN 排序問(wèn)題的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • hive SQL: case when + group by 的用法

    假設(shè)有一個(gè)數(shù)據(jù)表,包含了不同人員的信息,其中包括姓名、性別、年齡等字段。現(xiàn)在需要統(tǒng)計(jì)不同年齡區(qū)間的人數(shù),并按照年齡區(qū)間進(jìn)行分組??梢允褂萌缦?SQL 語(yǔ)句實(shí)現(xiàn): ``` SELECT? ? CASE? ? ? WHEN age BETWEEN 0 AND 10 THEN \\\'0-10\\\'? ? ? WHEN age BETWEEN 11 AND 20 THEN \\\'11-20\\\'? ? ? WHEN a

    2024年02月08日
    瀏覽(74)
  • 【MySQL】union (all) 后 order by 子查詢排序不生效問(wèn)題解決方案

    2308. 按性別排列表格 表:Genders Column Name Type user_id int gender varchar user_id 是該表的主鍵(具有唯一值的列)。 gender 的值是 ‘female’,‘male’,‘other’ 之一。 該表中的每一行都包含用戶的 ID 及其性別。 表格中 ‘female’,‘male’,‘other’ 數(shù)量相等。 編寫一個(gè)解決方案以重新

    2024年01月17日
    瀏覽(36)
  • Mybatis 常用條件語(yǔ)句,大于小于、if、for、模糊搜索、case when、choose

    Mybatis 常用條件語(yǔ)句,大于小于、if、for、模糊搜索、case when、choose

    目錄 大于小于 if 條件判斷? for循環(huán) LIKE?模糊搜索 case when choose選擇語(yǔ)句 前言-與正文無(wú)關(guān) ????????生活遠(yuǎn)不止眼前的苦勞與奔波,它還充滿了無(wú)數(shù)值得我們?nèi)ンw驗(yàn)和珍惜的美好事物。在這個(gè)快節(jié)奏的世界中,我們往往容易陷入工作的漩渦,忘記了停下腳步,感受周圍的世

    2024年02月01日
    瀏覽(27)
  • mysql GROUP BY 怎么 order by 排序

    在 MySQL 中使用 GROUP BY 子句時(shí),如果需要對(duì)結(jié)果進(jìn)行排序,可以使用 ORDER BY 子句來(lái)對(duì)分組后的結(jié)果進(jìn)行排序。 ORDER BY 子句應(yīng)該放在 GROUP BY 子句之后,使用逗號(hào)來(lái)分隔需要排序的列,并在排序列后指定排序順序。例如: 在這個(gè)例子中,SELECT 語(yǔ)句選擇了表 table1 中的列 column1 和

    2024年02月16日
    瀏覽(16)
  • 【mysql學(xué)習(xí)篇】Order by與Group by優(yōu)化以及排序算法詳解

    【mysql學(xué)習(xí)篇】Order by與Group by優(yōu)化以及排序算法詳解

    Case1: 分析: 利用 最左前綴 法則:中間字段不能斷,因此查詢用到了name索引,從key_len=74也能看出,age索引列用在排序過(guò)程中,因?yàn)镋xtra字段里沒(méi)有using filesort 注意: order by age 雖然用到了索引,但是不會(huì)在key_len列體現(xiàn) Case 2: 分析: 從explain的執(zhí)行結(jié)果來(lái)看:key_len=74,查詢

    2024年02月15日
    瀏覽(25)
  • MySQL使用SELECT 語(yǔ)句不加ORDER BY默認(rèn)是如何排序的?

    MySQL使用SELECT 語(yǔ)句不加ORDER BY默認(rèn)是如何排序的?

    大家好,我是阿飛云 怕什么真理無(wú)窮,進(jìn)一步有近一步的歡喜 記錄一個(gè) MySQL 查詢排序的問(wèn)題,一個(gè)SQL語(yǔ)句沒(méi)有加 order by ,那么查詢出來(lái)的結(jié)果到底是按照什么規(guī)則排序的呢?查詢了網(wǎng)上的一些資料,分享如下: ?MyISAM 表 MySQL Select 默認(rèn)排序是按照物理存儲(chǔ)順序顯示的(不

    2024年02月10日
    瀏覽(23)
  • MySQL 數(shù)據(jù)庫(kù)查詢與數(shù)據(jù)操作:使用 ORDER BY 排序和 DELETE 刪除記錄

    使用 ORDER BY 語(yǔ)句按升序或降序?qū)Y(jié)果進(jìn)行排序。 ORDER BY 默認(rèn)按升序排序。要按降序排序結(jié)果,使用 DESC 。 示例按名稱按字母順序排序結(jié)果: ORDER BY DESC 使用 DESC 以降序排序結(jié)果。 示例按名稱以字母逆序排序結(jié)果: 您可以使用\\\"DELETE FROM\\\"語(yǔ)句從現(xiàn)有表格中

    2024年02月05日
    瀏覽(39)
  • 玩轉(zhuǎn)Mysql系列 - 第8篇:詳解排序和分頁(yè)(order by & limit),及存在的坑

    這是Mysql系列第7篇。 環(huán)境:mysql5.7.25,cmd命令中進(jìn)行演示。 代碼中被[]包含的表示可選,|符號(hào)分開(kāi)的表示可選其一。 本章內(nèi)容 詳解排序查詢 詳解limit limit存在的坑 分頁(yè)查詢中的坑 排序查詢(order by) 電商中:我們想查看今天所有成交的訂單,按照交易額從高到低排序,此

    2024年02月11日
    瀏覽(20)
  • mysql order by 索引問(wèn)題綜合分析

    mysql order by 索引問(wèn)題綜合分析

    一,文章1 Mysql-索引失效 order by優(yōu)化_orderby索引失效_zyk1.的博客-CSDN博客 總結(jié): 0,索引 與 查詢條件 與 排序字段關(guān)系,Using filesort出現(xiàn)場(chǎng)景 1.聯(lián)合索引,最左匹配原則,不僅查詢條件需要遵循,排序也需要遵循,查詢+排序組合也要遵循 2.extra 避免出現(xiàn)filesort,使用index排序

    2024年02月07日
    瀏覽(20)
  • 【PowerMockito:編寫單元測(cè)試過(guò)程中采用when打樁失效的問(wèn)題】

    【PowerMockito:編寫單元測(cè)試過(guò)程中采用when打樁失效的問(wèn)題】

    正如上圖所示,采用when打樁了,但是,實(shí)際執(zhí)行的時(shí)候還是返回null。 打樁時(shí)直接用any() 但是這樣可能出現(xiàn)一個(gè)mybatisplus的異常,所以在測(cè)試類中需要加入以下代碼片段:

    2024年02月02日
    瀏覽(18)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包