2014-01-08 2 views
-1

Это мой запрос:Где я могу поместить DESC в запрос mysql? (PHP)

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

Я пытаюсь сортировать результаты по последним (последний сверху), так что я пытался добавить DESC. Но где бы я положил его в запросе он дает мне ошибку, единственный способ не дает ошибку, как это:

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

Но даже если он не выдаст ошибку, она по-прежнему не работает.

Это, вероятно, кажется, что глупо спрашивать, но это действительно сводит меня с ума

+0

Удалить цитаты из метки времени. И сделайте немного больше исследований, если вы хотите подарки: 3 (Также yadda yadda Я надеюсь, что вы, избегая этих переменных и не используя 'mysql_query') – Amelia

+0

Добавьте пример данных и желаемый результат. Потому что синтаксис прав. Какова конкретная проблема? –

ответ

1

Timestamp - это тип данных в MySQL. Поэтому всегда старайтесь избегать такого имени столбца в вашей таблице. Даже если у вас есть столбец с именем timestamp, вам, вероятно, придется использовать backtick. Таким образом, используйте следующий запрос:

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

Попробуйте кавычка на временной метки:

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

Использование кавычку позволяет использовать альтернативные символы

Я думаю, однако, , вместо того, чтобы указывать, можете ли вы использовать обратные ссылки, у них должен быть стандарт для имен. Он решает больше «реальных» проблем.

+0

Стоит ли исправить ваш ответ, чтобы объяснить, почему нужен обратный ход. Многие пользователи не могут узнать отличия – Rottingham

+0

@ Dk-Macadamia: это не обратная ссылка - это одна цитата –

0

Не используйте цитату в поле. Попробуйте следующее:

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

@Ayoub: вы пробовали это? –

Смежные вопросы