2016-10-12 4 views
-2

Я пытаюсь вывести результаты из двух таблиц в одной БД, используя определенный столбец (используя JOIN), а затем отсортировать по определенному столбцу в одной из двух таблиц. Проблема заключается во второй половине моего утверждения - я не вижу, как указать, какую таблицу и столбец я хочу сортировать.Ошибка синтаксиса синтаксиса MySQL для получения результатов заказа

SELECT * FROM general_assessment INNER JOIN location_info USING (general_id) ORDER FROM location_info BY timestamp desc limit 0,1 

Я не могу показаться, чтобы получить синтаксис ORDER части правильно. Я знаю, что не могу просто указать ORDER BY, потому что он будет неоднозначным, не указав сначала таблицу. Как мне сделать таблицу ORDER BY и колонку, которую я хочу?

Сообщение об ошибке:

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM location_info BY timestamp desc limit 0,1' at line 1' in C:\wamp\www\Dropbox\pip\testing\tim\results.php on line 22 
+0

@u_mulder, что не работает, либо (уже пробовали что). 'Неустранимая ошибка: исключить исключение« PDOException »с сообщением« SQLSTATE [42000]: ошибка синтаксиса или нарушение доступа: 1064 У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с 'FROM location_info ORDER BY timestamp desc limit 0,1' в строке 1 'в C: \ wamp \ www \ Dropbox \ pip \ testing \ tim \ results .php в строке 22' –

+1

ORDER BY table.field, поэтому 'ORDER BY location_info.timestamp' – aynber

+1

http://dev.mysql.com/doc/refman/5.7/en/select.html – aynber

ответ

0

Ответ был прост и не требует "ORDER или FROM" просто нужно соединяющую .

SELECT * FROM general_assessment INNER JOIN location_info USING (general_id) ORDER BY location_info.timestamp desc limit 0,1"; 
Смежные вопросы