2015-10-05 111 views
1

我想订购“排名”,但它不起作用, 我尝试了很多事情,但我找不到解决方案。ORDER BY(row)DESC

$query = $handler->query("SELECT * FROM login ORDER BY rank DESC WHERE rank > 4 AND rank < 7 LIMIT 10"); 
  • 我怎样才能得到上面的代码才能正常工作?

事情我已经尝试:

  • ORDER BY rank DESC末,和;
  • 删除DESC,但这也没有奏效。

我不知道如何解决这个问题,因为网页甚至没有加载请求它。

+2

'选择:在哪里order'。如果你的查询调用有错误处理,你会被告知有关语法错误。 –

+0

是的,你的下一个任务(包括:学习和实现)确实应该是错误处理。否则你会浪费你的时间与野生猜测这几乎肯定会导致迷信和巫术;-) – VolkerK

+0

另外,你还需要防止[SQL注入](http://stackoverflow.com/questions/ 60174/how-can-i-prevent-sql-injection-in-php)。这并不严格适用于这个问题中的例子,但它始终是一个问题:) – Brian

回答

4

整理后应在where子句

$query = $handler->query("SELECT * FROM login WHERE rank > 4 AND rank < 7 ORDER BY rank DESC LIMIT 10"); 
+0

噢,不错,我在极限10后试过它,这就是为什么它不工作,我认为... –

+0

是的,因为它没有工作。 –

0

尝试这样

$query = $handler->query("SELECT * FROM login WHERE rank > 4 AND rank < 7 ORDER BY rank DESC LIMIT 10") 
+0

我已经在接受的答案前9秒添加了我的答案。我需要删除这个吗? –