我有一个简单的数据库来存储一些电子邮件,有没有办法从100个电子邮件的组中获取数据库中的电子邮件???
这是数据库结构
Table structure for table `emails`
--
CREATE TABLE IF NOT EXISTS `emails` (
`email` varchar(100) NOT NULL,
`ip` varchar(15) NOT NULL,
`timestamp` datetime NOT NULL,
PRIMARY KEY (`email`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
理想的结果是获得前100封电子邮件,做一些事情,然后获得下一封100封,然后做其他事情。
谢谢,对不起我的英文
答案 0 :(得分:5)
LIMIT 100
http://dev.mysql.com/doc/refman/5.1/en/select.html#id827984
然后是下一个,LIMIT 100, 100
,然后是LIMIT 200, 100
,依此类推。
第一个数字(当有两个时)是偏移量。
答案 1 :(得分:0)
使用SQL LIMIT <offset>, <row_count>
语法通过SQL进行分页。
假设您要在网页上显示这些结果,我还建议您使用像PEAR::Pager
这样的PHP库来帮助您。有一个很好的教程here。
有一点需要注意,出于性能原因,您应该确保在分页查询中使用ORDER BY
并且使用索引。 MySQL Performance博客有一个很好的explanation。