设置While循环限制并按日期排序

时间:2015-07-01 14:52:19

标签: php mysql sql sorting

我想找到一种方法,我可以设置一个限制,只显示一个表中的一行,并显示最新创建日期的1,也就是该行上的一列。

<?php

$q = "SELECT * FROM nots";
$r = mysqli_query($dbc, $q);

 while ($row = mysqli_fetch_array($r)) {

     echo '<div style="background-color: red; box-sizing: border-box; padding: 20px; margin: 20px 10px; border-radius: 6px; color: #fff;">' . $row['not_name'] . '<br>'  . $row['not_content'] . '</div>';

 }

?>

2 个答案:

答案 0 :(得分:4)

您在查询中执行此操作,然后无需循环,因为只有一个。如果created_date是创建的日期列:

$q = "SELECT * FROM nots ORDER BY created_date DESC LIMIT 1";
$r = mysqli_query($dbc, $q);
$row = mysqli_fetch_array($r);

答案 1 :(得分:3)

假设您有某种ID或日期字段,您可以在该字段上使用ORDER BY [yourfieldname here] DESC来按最新记录排序返回,然后LIMIT 1以获取该记录

$q = "SELECT * 
     FROM nots
     ORDER BY ID DESC
     LIMIT 1";