sql分页问题, 页面上有N个复选框,比如。我现在选择了其中的13个。点提交。跳转到下个页面的时候。我希望可以将我所选的13条数据进行分页。每页十行。就是两页。请问用sql应该怎么实现? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 select * from table_name where ... order by ... limit 0,10 mysql> select * from stock;+----+---------+-------+---------+| id | time_id | price | stockid |+----+---------+-------+---------+| 1 | 5 | 12 | 101 || 2 | 6 | 10 | 101 || 3 | 7 | 8 | 101 || 4 | 8 | 13 | 101 || 5 | 9 | 11 | 101 || 6 | 10 | 11 | 101 || 7 | 11 | 11 | 101 || 8 | 12 | 16 | 101 || 9 | 13 | 16 | 101 || 10 | 14 | 15 | 101 || 11 | 15 | 15 | 101 || 12 | 16 | 14 | 101 || 13 | 17 | 11 | 101 || 14 | 18 | 10 | 101 || 15 | 19 | 10 | 101 || 16 | 20 | 10 | 101 || 17 | 21 | 10 | 101 || 18 | 22 | 12 | 101 || 19 | 23 | NULL | 101 || 20 | 24 | 10 | 101 |+----+---------+-------+---------+20 rows in set (0.00 sec)mysql> set @page=1;Query OK, 0 rows affected (0.00 sec)mysql> select * from stock where id between @page*10-9 and @page*10;+----+---------+-------+---------+| id | time_id | price | stockid |+----+---------+-------+---------+| 1 | 5 | 12 | 101 || 2 | 6 | 10 | 101 || 3 | 7 | 8 | 101 || 4 | 8 | 13 | 101 || 5 | 9 | 11 | 101 || 6 | 10 | 11 | 101 || 7 | 11 | 11 | 101 || 8 | 12 | 16 | 101 || 9 | 13 | 16 | 101 || 10 | 14 | 15 | 101 |+----+---------+-------+---------+10 rows in set (0.00 sec)@page 就是你要显示的页码 作为一个参数 前提是你要有一列自增id主键上面的结果是根据id计数的 如果没有唯一id 或者id不连续可以用limit arg1,arg2表示从去结果集的第arg1个记录开始 取arg2条记录 我在重新叙述一下。我选中了N个checkbox。将选中的checkbox放在一个数组中。里面存放的是ID。现在我根据数组的长度依次循环从数据库里获取到一个结果集,比如这个结果集有20行数据。我应该怎么让他能在页面上分两页显示 我选中了N个checkbox。将选中的checkbox放在一个数组中。里面存放的是ID。根据这个checkbox 生成字符串 "id1,id2,id3"现在我根据数组的长度依次循环从数据库里获取到一个结果集,比如这个结果集有20行数据。我应该怎么让他能在页面上分两页显示select * from yourTable where id in (id1,id2,id3) order by fldOrder limit 1,10 单表超过2G,查询结果约800W条的效率问题 一台机器上安装了多个db,有没有什么方法保证这几个db在性能上互不影响? 这段sql还有优化的可能吗? xp使用mysql出现的问题 mysql中文检索 mysq 编码 Postgresql7.3.3性能调查 急 redhat 7.1 的mysql为何装不上 create table 字段default值的问题 关于Mysql WorkBench首页 父类,子类问题 A表记录的多个字段和B表的多记录如何实现关联
select * from table_name where ... order by ... limit 0,10
+----+---------+-------+---------+
| id | time_id | price | stockid |
+----+---------+-------+---------+
| 1 | 5 | 12 | 101 |
| 2 | 6 | 10 | 101 |
| 3 | 7 | 8 | 101 |
| 4 | 8 | 13 | 101 |
| 5 | 9 | 11 | 101 |
| 6 | 10 | 11 | 101 |
| 7 | 11 | 11 | 101 |
| 8 | 12 | 16 | 101 |
| 9 | 13 | 16 | 101 |
| 10 | 14 | 15 | 101 |
| 11 | 15 | 15 | 101 |
| 12 | 16 | 14 | 101 |
| 13 | 17 | 11 | 101 |
| 14 | 18 | 10 | 101 |
| 15 | 19 | 10 | 101 |
| 16 | 20 | 10 | 101 |
| 17 | 21 | 10 | 101 |
| 18 | 22 | 12 | 101 |
| 19 | 23 | NULL | 101 |
| 20 | 24 | 10 | 101 |
+----+---------+-------+---------+
20 rows in set (0.00 sec)mysql> set @page=1;
Query OK, 0 rows affected (0.00 sec)
mysql> select * from stock where id between @page*10-9 and @page*10;
+----+---------+-------+---------+
| id | time_id | price | stockid |
+----+---------+-------+---------+
| 1 | 5 | 12 | 101 |
| 2 | 6 | 10 | 101 |
| 3 | 7 | 8 | 101 |
| 4 | 8 | 13 | 101 |
| 5 | 9 | 11 | 101 |
| 6 | 10 | 11 | 101 |
| 7 | 11 | 11 | 101 |
| 8 | 12 | 16 | 101 |
| 9 | 13 | 16 | 101 |
| 10 | 14 | 15 | 101 |
+----+---------+-------+---------+
10 rows in set (0.00 sec)@page 就是你要显示的页码 作为一个参数
将选中的checkbox放在一个数组中。里面存放的是ID。根据这个checkbox 生成字符串 "id1,id2,id3"
现在我根据数组的长度依次循环从数据库里获取到一个结果集,
比如这个结果集有20行数据。我应该怎么让他能在页面上分两页显示select * from yourTable where id in (id1,id2,id3) order by fldOrder limit 1,10