首頁 > 資料庫 > mysql教程 > 如何在 SQL 中顯示唯一值的行號?

如何在 SQL 中顯示唯一值的行號?

Patricia Arquette
發布: 2024-12-25 18:17:11
原創
128 人瀏覽過

How to Display Row Numbers for Unique Values in SQL?

使用SQL 顯示唯一值的行號

SQL 中的DISTINCT 關鍵字用於僅擷取唯一值來自指定列。在這種特殊情況下,您的目標是使用 ROW_NUMBER() 函數顯示列中唯一值的行號。

但是,您提供的查詢:

SELECT DISTINCT id, ROW_NUMBER() OVER (ORDER BY id) AS RowNum
FROM table
WHERE fid = 64
登入後複製

沒有返回預期的結果,因為它使用 DISTINCT 有效地消除了重複項。因此,它的行為類似於以下查詢:

SELECT DISTINCT id FROM table WHERE fid = 64
登入後複製

要獲得所需的輸出,您可以使用 DENSE_RANK() 函數。 DENSE_RANK() 依指定的順序為每個不同的值分配唯一的行號,即使存在重複的值也是如此。

這是修改後的查詢:

SELECT DISTINCT id, DENSE_RANK() OVER (ORDER BY id) AS RowNum
FROM table
WHERE fid = 64
登入後複製

This查詢將為您提供與滿足條件WHERE fid = 的行的指定列中的唯一值相對應的行編號64.

以上是如何在 SQL 中顯示唯一值的行號?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板