-1

mysqli クエリでデータを取得しようとしています。クエリは次のようになります。

SELECT * FROM pxldr_drawings
             ORDER BY RAND()
             WHERE id NOT IN (1,3,4,2)
             LIMIT 1

しかし、次のエラーメッセージが表示されます

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 id NOT IN (1,3,4,2) LIMIT 1' at line 3

NOT IN ('1','3','4','2')とも試し NOT IN(1,3,4,2)ましたが、どちらも機能しませんでした。

ありがとう、LB

4

2 に答える 2

3

WHERE句は句の前にある必要がありますORDER BY

これを試して

      SELECT * FROM pxldr_drawings
          WHERE id NOT IN (1,3,4,2)
          ORDER BY RAND()
          LIMIT 1
于 2013-08-17T15:32:41.323 に答える
1

節の順序は重要order byですwhere

SELECT * FROM pxldr_drawings
             WHERE id NOT IN (1,3,4,2)
             ORDER BY RAND()
             LIMIT 1

さまざまな句を配置する必要がある場所の適切な構文については、「 Select Syntax」ドキュメントを参照してください。

于 2013-08-17T15:32:35.897 に答える