select * from content order by id desc limit 0, 10
--limit是MySQL中特有的分页语法,用法如下:
--举例:
select * from tableName limit 5--返回前5行
select * from tableName limit 0,5--同上,返回前5行
select * from tableName limit 5,10--返回6-15行
1、首先我们建立一个表表的数据,这个表里有25条数据,id从1到25。(下图是部分截图)
2、要分页数据,首先我们假设一页有10条数据,我们可以用mysql的 limit关键字来限定返回多少条数据。并且用order by来排序数据,这里用 id来排序。所以第一页的sql可以如图这样写。
3、执行后得到的数据如图,就是 id从1到10的前10条数据,因为我们是按id升序来排序的。
4、上面第一页的sql是简化的写法,完整的写法如图,得到的结果和上图的一模一样。代码里 limit 0, 10 的意思是从第一条数据开始,取10条数据。(注意的是第一条数据是从0开始的)
5、那么第二页的数据,关键是要知道是从哪一条数据开始,可以用这个公式得到: (页码-1) * 每页显示多少条,即 (2-1) * 10 = 10, 所以sql语句如图, limit 10, 10。
6、执行后,结果正确,得到id从11到20的10条数据。
7、同理第三页数据的sql如图,<br/>就是 limit 20, 10。
8、查询的结果如图,因为这页只剩下5条数据了,所以只显示5条数据。如果你有更多页的数据,后面的数据只需要按上面的公式,得到从哪行开始,就可以写对应的sql语句了。
我也是刚开始学mysql,下面是我从网上找到的,我刚才试过了,可以, 我的是mysql5.0的mysql 服务器支持 # 到该行结束、-- 到该行结束 以及 /* 行中间或多个行 */ 的注释方格:
mysql>SELECT 1+1# 这个注释直到该行结束
mysql>SELECT 1+1-- 这个注释直到该行结束
mysql>SELECT 1 /* 这是一个在行中间的注释 */ + 1
mysql>SELECT 1+
/*
这是一个
多行注释的形式
*/
1
注意 -- (双长划) 注释风格要求在两个长划后至少有一个空格!
尽管服务器理解刚才描述的注释句法,但 MySQL 客户端的语法分析在 /* ... */ 注释方式上还有所限止:
单引号和双引号被用来标志一个被引用字符串的开始,即使是在一个注释中。如果注释中的引号没有另一个引号与之配对,那和语法分析程序就不会认为注释结束。如果你以交互式运行 mysql,你会产生困惑,因为提示符从 mysql>变为 '>或 ">。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)