PostgreSQL 与 MySQL 在分页查询上的区别
1.如果从第一条开始取记录 , pg与mysql都支持 select * from tb limit A;2.当从至少第二条数据取记录时 , pg 仅支持 limit A offset B , 而 mysql 除了支持 pg 的分页之外 , 还支持 limit B,A
1.PostgreSQL分页
limit分页语法:select * from tb limit A offset B;解释:A就是你需要显示多少行;B就是查询的起点位置。示例:select * from tb limit 5;等价于select * from tb limit 5 offset 0; -- 不包含第0条,当然数据库第1条数据,就是第1条,而不是第0条意思是,从第一条开始查询,返回5条数据。select * from tb limit 15 offset 5 ; -- 取第6条开始,取15条数据意思是,起点5开始查询,返回15条数据。分页并显示行号,类似oracle里的rownum:select *,row_number() over() as rownum from tb limit 5 offset 0;
2.MySQL分页
1.自己的语法SELECT * FROM 表名 limit m,n;m代表从m+1条记录行开始检索,n代表取出n条数据。(m为0时,表示从第一行开始取数据)示例如:SELECT * FROM tb limit 6,5;表示:从第7条记录行开始算,取出5条数据如果要从第1条记录行开始取数据如:SELECT * FROM tb limit 6; 等价于 SELECT * FROM tb limit 0,6;表示:取出前6条记录行。2.兼容 pg 语法SELECT * FROM table LIMIT rows OFFSET offset示例SELECT * FROM tb limit 5 offset 6;表示:从第7条记录行开始算,取出5条数据SELECT * FROM tb limit 5 offset 0; 等价于 SELECT * FROM tb limit 5;表示:从第1条记录行开始算,取出5条数据
本站文章,未经作者同意,请勿转载,如需转载,请邮件customer@csudata.com.
0 评论
添加一条新评论