1. 程式人生 > >Mysql 排序order by

Mysql 排序order by

ORDER BY 關鍵字用於對結果集進行排序。

ORDER BY 語法

SELECT 列1,列2
FROM table_name
ORDER BY 列1,列2 ASC|DESC;

ASC:按照升序對記錄進行排序

DESC:按照降序對記錄進行排序

-- 中文排序
order by convert(user_name using gbk) asc
-- 中文排序,null排序在最後面
order by userName IS NULL, convert(userName using gbk) asc
-- 按照指定順序排序
ORDER BY FIELD(`id`, 5, 3, 7, 1)
-- 多個欄位排序
ORDER BY 欄位1 DESC,欄位2 ASC;

相關推薦

Mysql 排序order by

ORDER BY 關鍵字用於對結果集進行排序。 ORDER BY 語法 SELECT 列1,列2 FROM table_name ORDER BY 列1,列2 ASC|DESC; ASC:按照升序

mysql排序ORDER BY Optimization

有的時候,MySQL不用額外的排序而是使用索引就能滿足order by操作。即使order by不直接匹配索引,索引也能用到,只要所有未用到索引的部分和order by之外的索引列在where字句中,下面的查詢order by部分使用到了索引SELECT * FROM t1

MySqlOrder By 排序

des 需要 .com utf 字符集 條件 itl sele com 你可以使用任何字段來作為排序的條件,從而返回排序後的查詢結果。 你可以設定多個字段來排序。 你可以使用 ASC 或 DESC 關鍵字來設置查詢結果是按升序或降序排列。 默認情況下,它是按升序排列。 你

mysql 使用order by field() 自定義排序

 一、mysql field自定義排序函式的格式 order by field(value,str1,str2,str3,str4,,,,,,strn) 其中value後面的引數自定義,不限制引數個數 含義 將獲取出來的資料根據str1,str2,str3,str4

mysqlorder by排序不正確的問題

那是因為order by 後的欄位的值是一樣的,需要再新加一個欄位來區分排序。 例如,兩個同學的分數都是88分,按分數降序排列,則 select * from student order by score DESC,但是每次查詢,排序結果可能不一樣,需要再加一個欄位來排序

mysqlorder by 指定排序

原 mysql中order by 可以指定排序 2017年05月19日 17:01:26 qq_36340642 閱讀數:27528 這裡

mysqlorder by 可以指定排序

mysql表的排序 ORDER BY field1 [ASC [DESC]], [field2…] [ASC [DESC]],… 這裡是想讓它以 num 排序 但是 num=-1的那條資料單獨為最大值 法一:field( field1,val1,val2,…

mysql查詢order by 指定欄位排序

  當MySQL查詢時排序的欄位不是數字時而是漢字的時候也可以用when  then 來指定排序。   列如yewu_check表的status 欄位不是0,1,2而是漢字待辦,已辦,退回。可以如下寫法: SELECT * FROM yewu_check  OR

MySQL中的排序(ORDER BY)

primary 數據庫 所有 直接 mage pre color 應該 圖片 當使用 SELECT FROM 時,如果不排 序,數據一般將以它在底層表中出現的順序顯示。這可以是數據最初添加到表中的順序。但是,如果數據後來進行過更新或刪除,則此順 序將會受到MySQL重用回收

MySQL優化order by導致的 using filesort

from 永久 idc SM 大於 xid 圖片 sele style using filesort 一般出現在 使用了 order by 語句當中。using filesort不一定引起mysql的性能問題。但是如果查詢次數非常多,那麽每次在mysql中進行排序,還是會有

mysql 使用order by

word sql str1 log http esc ... comment value 1、mysql 使用order by field() 自定義排序 order by field(value,str1,str2,str3,str4......strn) 例如:sele

17.MySQL優化ORDER BY 優化

介紹 本節描述MySQL何時可以使用索引來滿足ORDER BY子句,無法使用索引時使用的filesort操作,和優化器提供的有關ORDER BY的執行計劃資訊。 一個ORDER BY有和沒有 LIMIT可能以不同的順序返回行: 使用索引來優化ORDER BY 使用f

MYSQL "ORDER BY rand()"的坑--容易導致機器負載、CPU佔用過高

在一次微信砍價活動營銷中,使用了4核16G10M頻寬的伺服器支撐業務,本來這個配置跑個PHP+MYSQL+nginx肯定輕輕鬆的事情,可是隨著活動的高潮,併發數一高,機器負載核CPU一下子就達到100% 始終找不到原因,只知道是mysql分配的記憶體不夠,一直給它加,但是重啟m

Mysqlorder by 不唯一欄位】與【limit】混用的坑

背景: 分頁查詢排序後的資料,是一個非常常見的業務場景;但當使用不唯一的欄位排序時,分兩頁查詢的資料可能出現同一條資料,並丟失資料! 示例: 同樣的查詢條件,offset不同,竟然取到了同一條

MySQLORDER BY 詳細解析

1 概述 MySQL有兩種方式可以實現ORDER BY: 1.通過索引掃描生成有序的結果 2.使用檔案排序(filesort) 圍繞著這兩種排序方式,我們試著理解一下ORDER BY的執行過程以及回答一些常見的問題(下文僅討論InnoDB儲存引擎)。

mysqlorder by的一些特殊用法

公司需要查詢資料,排序的時候,需要把一部分資料放在所有資料前面,舉個例子來說,所有資料按照時間排序,有時需要將昨天的排在最前面,有時需要將前天的排在最前面,想了很久不知道從何下手,而我又不想在前端做這件事情,所以想了這麼個方法,直接上程式碼 <select id="f

MySqlorder by和union all同時使用

(SELECT * FROM `idents` where PhotoID = 'badc74d6-58bd-4e46-9a48-aefb3487a61d' AND Selected = 'Yes' ORDER BY IdentTime desc LIMIT 1) UNION ALL (SELECT * F

mysql資料庫order by語句 null 處理

在使用order by語句進行查詢結果排序時,不同的資料庫對於被排序欄位資料行為null的情況,處理方式有所不同,這裡我們主要考慮oracle和MySQL資料庫。 首先我們直接給出結論: leeyee 寫道 【Oracle 結論】  order by colum asc 時,null預設被放在最後

mysqlorder by和group by的詳細區別是詳細區別

order by 排序查詢、asc升序、desc降序示例:select * from 學生表 order by 年齡 查詢學生表資訊、按年齡的升序(預設、可預設、從低到高)排列顯示也可以多條件排序、 比如 order by 年齡,成績 desc 按年齡升序排列後

mysqlorder by,group by和distinct優化

order by,group by和distinct三類操作是在mysql中經常使用的,而且都涉及到排序,所以就把這三種操作放在一起介紹。 order by的實現與優化 order by的實現有兩種方式,主要就是按用沒用到索引來區分: 1. 根據索引欄位排序,利用索引取出的