【发布时间】:2014-12-03 16:26:04
【问题描述】:
这就是我现在拥有的
需要发生的是,当查询运行时,它应该得到一个记录,其中 id 将等于下一个 id,但是如果记录不存在,它应该抓取下一个,但是当我尝试运行下面的查询时,它会运行并获取最后一条记录是最高记录
说清楚:
数据库中的记录:
- 1
- 5
- 6
- 7
- 8
- 10
因此,如果查询检查记录 2(不存在),它应该得到下一个最高值,即 5 而不是 10,我该怎么做?
$query = "SELECT * FROM images where images >= '$nextid'";
$sql = mysqli_query($conn,$query) or die(mysqli_error($conn));
while($row = mysqli_fetch_array($sql)){
$forwardid = $row['images_id'];
$picname = $row['image_name'];
}
【问题讨论】:
-
它返回最高值,因为您选择 >= 2 返回 5,6,7,8,9。然后循环遍历所有变量,依次将 $forwardid 和 $picname 设置为每一个,当循环完成时,变量中就有最后两个。有关如何更改查询以仅获得一个结果,请参阅下面的答案。
标签: mysql sql select max limit