PostgreSQL LIMIT 子句
PostgreSQL 中的 limit 子句用于限制 SELECT 语句中查询的数据的数量。
语法
带有 LIMIT 子句的 SELECT 语句的基本语法如下:
SELECT column1, column2, columnN FROM table_name LIMIT [no of rows]
下面是 LIMIT 子句与 OFFSET 子句一起使用时的语法:
SELECT column1, column2, columnN FROM table_name LIMIT [no of rows] OFFSET [row num]
实例
创建 COMPANY 表(下载 COMPANY SQL 文件 ),数据内容如下:
yssmxdb# select * from COMPANY; id_name _age_address _salary ----+-------+-----+-----------+-------- 1_Paul _ 32_California| 20000 2_Allen_ 25_Texas _ 15000 3_Teddy_ 23_Norway _ 20000 4_Mark _ 25_Rich-Mond_ 65000 5_David_ 27_Texas _ 85000 6_Kim _ 22_South-Hall| 45000 7_James_ 24_Houston _ 10000 (7 rows)
下面实例将找出限定的数量的数据,即读取 4 条数据:
yssmxdb=# SELECT * FROM COMPANY LIMIT 4;
得到以下结果:
id_name _age_address _salary ----+-------+-----+-------------+-------- 1_Paul _ 32_California _ 20000 2_Allen_ 25_Texas _ 15000 3_Teddy_ 23_Norway _ 20000 4_Mark _ 25_Rich-Mond _ 65000 (4 rows)
但是,在某些情况下,可能需要从一个特定的偏移开始提取记录。
下面是一个实例,从第三位开始提取 3 个记录:
yssmxdb=# SELECT * FROM COMPANY LIMIT 3 OFFSET 2;
得到以下结果:
id_name _age_address _salary ----+-------+-----+-----------+-------- 3_Teddy_ 23_Norway _ 20000 4_Mark _ 25_Rich-Mond_ 65000 5_David_ 27_Texas _ 85000 (3 rows)