Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php MySQL查询简单分页_Php_Mysql - Fatal编程技术网

Php MySQL查询简单分页

Php MySQL查询简单分页,php,mysql,Php,Mysql,以下是我的数据清单: news id date name ---------------------- 2 2015-12-01 news1 3 2015-12-04 news2 4 2015-12-07 news3 7 2015-12-08 news4 我正在显示最新的新闻记录id 7,并希望为较旧和较新版本添加导航按钮 那么,获取下一条旧新闻记录ID4的url的最佳方法是什么? 类似于select*from news,其中[date是

以下是我的数据清单:

news
id  date         name
----------------------
2   2015-12-01   news1
3   2015-12-04   news2 
4   2015-12-07   news3 
7   2015-12-08   news4 
我正在显示最新的新闻记录id 7,并希望为较旧和较新版本添加导航按钮

那么,获取下一条旧新闻记录ID4的url的最佳方法是什么? 类似于select*from news,其中[date是当前id的下一个更低的id]

感谢您查询更新的:

select * from news where date > (select date from news where id = X) order by date asc limit 1;
查询旧版本:

select * from news where date < (select date from news where id = X) order by date desc limit 1;
用您的目标id替换X。我假设该id是唯一的


在MySQL 5.5上测试。

在本例中,您可以使用下面的代码参数\u date是记录7的日期

//for newer : 
 SELECT * FROM news where date>parameter_date order by date asc limit 1,1;
//for older : 
  SELECT * FROM news where date<parameter_date order by date desc limit 1,1;
如果你想用id来做这件事,你可以使用下面的代码参数\u id是你的新闻id

//for newer : 
 SELECT * FROM news where date>(select date from news where id=parameter_id) order by date asc limit 1,1;
//for older : 
  SELECT * FROM news where date<(select date from news where id=parameter_id) order by date desc limit 1,1;
您可以使用limitwith range:第一个参数是偏移量,第二个参数是两个返回的项目数 这将为您提供前两条记录:

Select * from news order by id limit 0,2
下面是两个例子:

Select * from news order by id limit 2,2