ORDER BY子句用於根據指定的列名對查詢和分析結果進行排序。
文法
ORDER BY 列名 [DESC | ASC]
-
您可以指定多個列名,按照不同的排序方式排序。例如
ORDER BY 列名1 [DESC | ASC], 列名2 [DESC | ASC]。 -
如果您未配置關鍵字DESC或ASC,則系統預設對查詢和分析結果進行升序排列。
-
當排序的目標列中存在相同的值時,每次排序結果可能不同。如果您希望每次序列結果相同,可指定多個列進行排序。
參數說明
|
參數 |
說明 |
|
列名 |
列名即為日誌欄位名稱或彙總函式計算結果列,即支援按照日誌欄位名稱(KEY)或彙總函式計算結果列進行排序。 |
|
DESC |
降序排列。 |
|
ASC |
升序排列。 |
樣本
-
樣本1:統計不同請求狀態代碼對應的請求次數,並按照請求次數降序排列。
-
查詢和分析語句
* | SELECT count(*) AS PV, status GROUP BY status ORDER BY PV DESC -
查詢和分析結果:查詢結果按PV降序排列,返回資料包括:狀態代碼
200對應PV為163135,狀態代碼206對應PV為1224,狀態代碼207對應PV為1186,狀態代碼305對應PV為1185,狀態代碼301對應PV為1184,狀態代碼307對應PV為1182,狀態代碼302對應PV為1180,狀態代碼203對應PV為1177。
-
-
樣本2:計算各個LogStore的平均延遲時間,並按照平均延遲時間進行降序排列。
-
查詢和分析語句
* | SELECT avg(latency) AS avg_latency, LogStore GROUP BY LogStore ORDER BY avg_latency DESC -
查詢和分析結果包含三條記錄:Logstore test 的 avg_latency 為 3833.0,Logstore website_log 的 avg_latency 為 2691.13,Logstore date 的 avg_latency 為 2608.06。
-
-
樣本3:計算不同請求時間長度對應的請求數量,並按照請求時間長度進行升序排序。
其中,content、time和request_time為JSON日誌中的欄位。
重要在查詢和分析JSON類型的日誌時,需注意以下事項。更多資訊,請參見查詢和分析JSON日誌。
-
必須給欄位名稱加上JSON中父路徑首碼,例如content.time.request_time。
-
分析語句中的JSON欄位名稱必須使用雙引號("")包裹,例如"content.time.request_time"。
-
查詢和分析語句
* | SELECT "content.time.request_time", count(*) AS count GROUP BY "content.time.request_time" ORDER BY "content.time.request_time" -
查詢和分析結果返回三條記錄:
content.time.request_time為 10.0 時count為 145,為 11.0 時count為 123,為 12.0 時count為 113。
-