在Oracle中,ROW_NUMBER()是一個(gè)窗口函數(shù),用于為查詢結(jié)果集中的每一行分配一個(gè)唯一的連續(xù)整數(shù)值。它可以按照指定的排序條件對結(jié)果集進(jìn)行排序,并為每一行分配一個(gè)唯一的行號。ROW_NUMBER()常用于分頁查詢或?qū)Y(jié)果集進(jìn)行排序和篩選。
以下是一個(gè)使用ROW_NUMBER()函數(shù)的示例:
SELECT
ROW_NUMBER() OVER (ORDER BY column_name) AS row_num,
column1,
column2
FROM
table_name;
在上面的示例中,ROW_NUMBER()函數(shù)按照指定的列(column_name)對結(jié)果集進(jìn)行排序,并為每一行分配一個(gè)唯一的行號(row_num)。通過在ORDER BY子句中指定排序條件,可以控制ROW_NUMBER()函數(shù)分配行號的順序。
需要注意的是,ROW_NUMBER()函數(shù)必須與OVER子句一起使用,并且需要指定排序條件。