选择顺序...不能找到错误

时间:2013-04-13 09:31:57

标签: mysql sql

我遇到问题,尝试对我的选择请求进行排序 -

SELECT * FROM `table_name`  OREDER BY `score` DESC LIMIT 10 ; 

我收到错误#1064:

  

#1064 - 您的SQL语法出错;检查手册   对应于您的MySQL服务器版本,以便使用正确的语法   在第1行'BY score DESC LIMIT 10'附近

但我真的不知道错误!正如我想的那样,名称和引用是正确的......因为此请求正常运行:

INSERT INTO `table_name` (`uid`, `score`) VALUES ("'.$viewer_id.'","'.$uscore.'") ON DUPLICATE KEY UPDATE `score` = "'.$uscore.'";'; 

有人可以帮帮我!! ??

对不起我的英语(

2 个答案:

答案 0 :(得分:2)

它是ORDER而不是OREDER

SELECT * FROM table_name ORDER BY score DESC LIMIT 10

作为旁注,如果变量的值( s )来自外部,则查询易受SQL Injection攻击。请查看下面的文章,了解如何防止它。通过使用PreparedStatements,您可以摆脱在值周围使用单引号。

答案 1 :(得分:1)

你的语法中有拼写错误'ORDER BY'而不是'OREDER BY'正确的语法应该是:

SELECT * FROM `table_name`  ORDER BY `score` DESC LIMIT 10 ;