MySQL PHP

【MySQL・PHP】WHERE句とORDER BY句を使った#1064エラーについて

投稿日:

スポンサードリンク

MySQLで次のようなクエリを出すとエラーとなって帰ってきました。

SELECT * from history ORDER BY date DESC WHERE value="0"

dateという日付のカラムがあり、それの新しい順にソートして「value」が0のレコードだけを取り出したいと思ったのですが、これだとうまく動かず次のようなエラーがでてきます。

#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 'WHERE value="0" LIMIT 0, 30' at line 1

ダブルクオテーションが悪いのかとか悩んだのですが、よくよく考えればWHEREとORDER BYの順番が逆でした。

SELECT * from history WHERE value="0" ORDER BY date DESC

過去にももこの失敗で悩んだというのを思い出したのですが、この辺の条件指定についての順番も注意しておかないと駄目ですね。

スポンサードリンク

-MySQL, PHP

Copyright© めめんと , 2019 All Rights Reserved Powered by AFFINGER5.