最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SQL字符型字段按數(shù)字型字段排序?qū)崿F(xiàn)方法

 更新時(shí)間:2013年03月25日 00:08:32   作者:  
由于是按字母順序排列,所以123排在了2的前面,顯然不符合我們的要求,那么怎樣才能按照我們預(yù)想的數(shù)字順序排序呢

這是很久之前的就遇到的問(wèn)題了,去年寫了個(gè)WP插件:WordPress投票插件Ludou Simple Vote,由于有些使用者需要一個(gè)投票排行榜,所以需要用一條SQL來(lái)讀取按得分排序的文章列表。

     Ludou Simple Vote的投票得分結(jié)果是以自定義欄目的方式存儲(chǔ)在WordPress的postmeta中,分值存放在meta_value字段,而meta_value字段類型是longtext,如果直接使用下面的SQL查詢語(yǔ)句來(lái)排序:

復(fù)制代碼 代碼如下:
ORDER BY `meta_value`

     那么按得分排序得到的結(jié)果可能是:
1
10
11
123
1234
2
25
253
3

     由于是按字母順序排列,所以123排在了2的前面,顯然不符合我們的要求,那么怎樣才能按照我們預(yù)想的數(shù)字順序排序呢?下面介紹兩種方法。

一、采用MySQL的cast函數(shù),轉(zhuǎn)換字段格式

     這里我們將meta_value字段轉(zhuǎn)換成數(shù)值類型的字段DECIMAL,然后再進(jìn)行排序:

復(fù)制代碼 代碼如下:
ORDER BY CAST(`meta_value` AS DECIMAL)

     需要注意的是,你所要排序的meta_value字段的值必須都是可轉(zhuǎn)換成數(shù)字,否則將會(huì)出錯(cuò)。

二、使用MySQL絕對(duì)值函數(shù)ABS

     使用MySQL絕對(duì)值函數(shù)ABS,它告訴MySQL使用絕對(duì)值來(lái)處理處理這個(gè)字段:

復(fù)制代碼 代碼如下:
ORDER BY ABS(`meta_value`)

相關(guān)文章

  • 解析Mysql Profiling的使用

    解析Mysql Profiling的使用

    本篇文章是對(duì)Mysql Profiling的使用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • MySQL 5.6.51 解壓版(zip版)安裝配置圖文方法

    MySQL 5.6.51 解壓版(zip版)安裝配置圖文方法

    這兩天剛試用了一下MySQL5.6.51,感覺(jué)還不錯(cuò),有兄弟戲稱是一個(gè)高富帥版本。現(xiàn)將MySQL5.6.51 zip解壓版本的安裝配置過(guò)程記錄如下,希望能給需要安裝該版本的朋友一點(diǎn)參考作用
    2015-08-08
  • CentOS7下mysql 8.0.16 安裝配置方法圖文教程

    CentOS7下mysql 8.0.16 安裝配置方法圖文教程

    這篇文章主要為大家詳細(xì)介紹了CentOS7下mysql 8.0.16 安裝配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • 12個(gè)優(yōu)化MySQL的技巧小整理

    12個(gè)優(yōu)化MySQL的技巧小整理

    這篇文章主要介紹了12個(gè)優(yōu)化MySQL的技巧小整理,包括表連接和WHERE語(yǔ)句等基本的優(yōu)化點(diǎn)等內(nèi)容,已經(jīng)了解的也不妨加深一下印象,需要的朋友可以參考下
    2015-06-06
  • MySQL的雙寫緩沖區(qū)Doublewrite Buffer詳解

    MySQL的雙寫緩沖區(qū)Doublewrite Buffer詳解

    這篇文章主要介紹了MySQL的雙寫緩沖區(qū)Doublewrite Buffer詳解,InnoDB是MySQL中一種常用的事務(wù)性存儲(chǔ)引擎,它具有很多優(yōu)秀的特性,其中,Doublewrite Buffer是InnoDB的一個(gè)重要特性之一,本文將介紹Doublewrite Buffer的原理和應(yīng)用,需要的朋友可以參考下
    2023-07-07
  • MySQL 數(shù)據(jù)庫(kù)函數(shù)庫(kù)

    MySQL 數(shù)據(jù)庫(kù)函數(shù)庫(kù)

    MySQL 數(shù)據(jù)庫(kù)函數(shù)庫(kù)...
    2006-12-12
  • MySQL4 File ‘c:\mysql\share\charsets\?.conf’ not found (Errcode: 22)的解決方法

    MySQL4 File ‘c:\mysql\share\charsets\?.conf’ not found (Errc

    File ‘c:\mysql\share\charsets\?.conf’ not found (Errcode: 22) Character set ‘#33′ is not a compiled character set and is not specified in the ‘c:\mysql\share\charsets\Index’ file
    2013-08-08
  • Advanced SQL Injection with MySQL

    Advanced SQL Injection with MySQL

    Advanced SQL Injection with MySQL...
    2006-12-12
  • Linux下如何通過(guò)MySQL二進(jìn)制包安裝MySQL5.7

    Linux下如何通過(guò)MySQL二進(jìn)制包安裝MySQL5.7

    這篇文章主要介紹了Linux下如何通過(guò)MySQL二進(jìn)制包安裝MySQL5.7,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-07-07
  • MySQL復(fù)制之GTID復(fù)制的具體使用

    MySQL復(fù)制之GTID復(fù)制的具體使用

    從MySQL 5.6.5開始新增了一種基于GTID的復(fù)制方式,本文主要介紹了MySQL復(fù)制之GTID復(fù)制的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05

最新評(píng)論

报价| 惠安县| 绥德县| 静宁县| 德兴市| 永修县| 南京市| 密云县| 绍兴县| 新营市| 湖南省| 周宁县| 太原市| 兴化市| 齐齐哈尔市| 平邑县| 关岭| 海口市| 祁连县| 团风县| 探索| 寿光市| 游戏| 云霄县| 桃源县| 安岳县| 美姑县| 白水县| 墨竹工卡县| 乐业县| 湖北省| 上蔡县| 铅山县| 新安县| 石嘴山市| 凤翔县| 丹棱县| 洞口县| 青冈县| 集安市| 临沭县|