只回显插入MYSQL数据库的最后4件事

时间:2011-12-14 21:26:22

标签: php mysql

我有这个脚本,它回应了mysql数据库中的信息 现在一切正常,但我只想回应插入的最后4个语句

这是脚本

               <?php

mysql_connect("localhost", "root", "root") or die(mysql_error());
mysql_select_db("blog") or die(mysql_error());

$result = mysql_query("SELECT * FROM blog") 
or die(mysql_error());  

echo "<table border='1'>";
echo "<tr> <th>Name</th> <th>Age</th> </tr>";
while($row = mysql_fetch_array( $result )) {
    echo "<tr><td>"; 
    echo $row['id'];
    echo "</td><td>"; 
    echo $row['username'];
    echo "</td></tr>"; 
} 

echo "</table>";
?> 

7 个答案:

答案 0 :(得分:4)

修改你的mysql查询(我假设每个条目都是一个升序的id):

SELECT * FROM blog
ORDER BY id DESC
LIMIT 4;

但这会使它们按相反的顺序排列。如果您希望它们按正确的顺序排列,您可以这样做:

SELECT * 
FROM (
    SELECT * FROM blog
    ORDER BY id DESC
    LIMIT 4
) last_four
ORDER BY id ASC;

答案 1 :(得分:1)

如果您有一个自动增加的列作为每个博客帖子的ID,您可以按降序对ID进行排序。使用像这样的查询

mysql_query("SELECT * FROM blog ORDER BY your_id_column DESC LIMIT 4") 

答案 2 :(得分:1)

假设您的blog表格中有一个名为created的列,其中包含帖子的创建日期,此查询应该可以满足您的需求:

SELECT * FROM blog ORDER BY created DESC LIMIT 4

这将按照最近创建的帖子(按时间顺序)排序您的帖子,并且只返回从表中提取的前4行。

答案 3 :(得分:1)

您可以使用查询执行此操作,将查询更改为:

select * from blog order by blog_id desc limit 4

您必须将blog_id更改为您使用的任何内容。

答案 4 :(得分:1)

使用此查询,它将按ID按降序排列记录,并使用限制仅获取最后4位。

SELECT * FROM blog order by ID DESC LIMIT 4

答案 5 :(得分:1)

您可以使用LIMIT和ORDER BY限制SELECT,但为了提供帮助,我们需要了解有关数据库结构的更多信息。你能提供“DESCRIBE博客”的结果吗?

如果您的“id”字段设置了auto_increment,那么可以肯定的是,该字段的较高数字表示最近的帖子。以相反顺序显示输出(“ORDER BY id DESC”)并限制数字(“LIMIT 4”)应该相当简单。

  SELECT * FROM blog ORDER BY id DESC LIMIT 4;

MySQL documentation处查看SELECT命令的精确结构。

答案 6 :(得分:1)

<?php

mysql_connect("localhost", "root", "root") or die(mysql_error());
mysql_select_db("blog") or die(mysql_error());

$result = mysql_query("SELECT * FROM `blog` ORDER BY `id` DESC LIMIT 4") or die(mysql_error());  

echo "<table border='1'>";
echo "<tr> <th>Name</th> <th>Age</th> </tr>";
while($row = mysql_fetch_array( $result )) {
    echo "<tr><td>"; 
    echo $row['id'];
    echo "</td><td>"; 
    echo $row['username'];
    echo "</td></tr>"; 
} 

echo "</table>";
?> 

只需复制并粘贴代码即可。我相信代码会很好用。感谢