我在哪里把DESC放在mysql查询中? (PHP)

时间:2014-01-08 05:51:24

标签: php html mysql sql syntax

这是我的疑问:

$query = "SELECT * FROM table ORDER BY 'timestamp' LIMIT $startAt, $perPage";

我正在尝试按最新(最新的)排序结果,所以我尝试添加DESC。 但是我把它放在查询中它给了我一个错误,它没有给出错误的唯一方法就是这样:

$query = "SELECT * FROM movies ORDER BY 'timestamp' DESC  LIMIT $startAt, $perPage";

但即使它没有出错,它仍然无效。

这可能看起来像是一件愚蠢的事情,但这真的让我发疯了

3 个答案:

答案 0 :(得分:1)

在时间戳上尝试反击:

$query = "SELECT * FROM movies ORDER BY `timestamp` DESC  LIMIT $startAt, $perPage";

使用反引号允许您使用替代字符

然而,我认为,不是强制你是否可以使用反引号,而是应该有一个名称标准。它解决了更多“真正的”问题。

答案 1 :(得分:1)

Timestamp是MySQL中的数据类型。因此,请始终尽量避免在表中使用此类列名。即使如果你有一个名为timestamp的列,你也必须使用反引号。因此,请使用以下查询:

  $query = "SELECT * FROM table ORDER BY `timestamp` LIMIT $startAt, $perPage";

答案 2 :(得分:0)

不要在字段名称中使用引号。试试这个:

  $query = "SELECT * FROM movies ORDER BY timestamp DESC  LIMIT $startAt, $perPage";