温馨提示×

MAX函数在Oracle分页查询中的应用

小樊
83
2024-08-28 04:01:01
栏目: 云计算

在Oracle数据库中,可以使用ROW_NUMBER()窗口函数进行分页查询

SELECT *
FROM (
    SELECT t.*, ROW_NUMBER() OVER (ORDER BY t.column_name) row_num
    FROM your_table t
)
WHERE row_num BETWEEN start_row AND end_row;

其中:

  • your_table 是要查询的表名。
  • t.column_name 是排序依据的列名。
  • start_rowend_row 分别表示分页查询的起始行号和结束行号。

例如,假设有一个名为employees的表,包含idnamesalary列。现在想要按照salary列降序排列,并获取第2页(每页10条记录)的数据,可以使用以下查询:

SELECT *
FROM (
    SELECT t.*, ROW_NUMBER() OVER (ORDER BY t.salary DESC) row_num
    FROM employees t
)
WHERE row_num BETWEEN 11 AND 20;

这里,start_row为11,end_row为20。

0