為 MySQL 的查詢結果新增排名欄位

類別: IT
標籤: sql mysql

我正在用 MySQL 客戶端的時候,突然想到如果可以給查詢結果新增排名該多好啊,然後就找到了一個簡單的解決辦法。

下面是一個示例表的資料:

然後我們要根據 Roll_No 欄位進行排序並給出排名,我們首先必須定義一個初始值為0的變數,然後在查詢結果中使用這個變數。

如下面的程式碼:

SET @counter=0;

SELECT @counter:[email protected]+1 AS Rank,LastName,Roll_no as Roll FROM Students ORDER BY Roll_no ASC;

執行該語句的結果如下:

更多關於自定義變數的內容請看 MySQL 的文件

為 MySQL 的查詢結果新增排名欄位原文請看這裡