1

首先,我制作了一个简单的留言簿,现在我希望最后一条评论出现在网站的首位。我的计划是按日期或 ID 以降序对数据库中的行进行排序。这是代码片段:

mysql_query("SELECT * FROM `guestbook` ORDER BY `Date` DESC") or die("Mysql error: " . mysql_error());

此代码不会导致任何错误,但注释显示为第一次。我也从 phpMyAdmin 复制了代码,但结果是一样的。ID 的类型当然是 INT with auto_increment,而 Date 的类型是VARCHAR(我将日期和时间存储在一个变量中)。

请帮忙。

4

3 回答 3

1

我希望您知道有一个完全可用的DATETIME字段,甚至TIMESTAMP可以返回格式化的日期?

除此之外,这几乎可以肯定是由于您的日期格式不是大端格式。

试试ORDER BY id DESC吧——它会快得多,因为它是唯一的(最好是主键)。

于 2012-05-30T02:49:16.867 回答
1

Date将列更改为DATETIME列类型,它将正确排序。

排序VARCHAR将取决于您存储数据的格式。

于 2012-05-30T02:50:10.850 回答
1

试试这个:SELECT * FROM guestbookORDER BY IDDESC

而不是您的日期,如果您希望您的日期顺序正确,请确保您的日期数据类型是日期时间。

最好的祝福

于 2012-05-30T02:50:12.497 回答