MySQL,ORDER不工作

时间:2012-05-30 02:45:38

标签: mysql sql-order-by

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

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

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

请帮忙。

3 个答案:

答案 0 :(得分:1)

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

除此之外,几乎可以肯定的是,你的日期除了big-endian之外还有格式。

请尝试使用ORDER BY id DESC - 它会更快,因为它是唯一的(最好是主要的)密钥。

答案 1 :(得分:1)

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

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

答案 2 :(得分:1)

试试这个:     SELECT * FROM guestbook ORDER BY ID DESC

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

最好的问候

相关问题