このSQLへの指摘として正しいものは?
SELECT id, name FROM users LIMIT 10 ORDER BY id;正答
- ORDER BY には ASC か DESC の明記が必須
- LIMIT は ORDER BY の後ろに書く
- LIMIT の数値はクォートで囲む
- id と name の間のカンマは不要
解説
SELECT 文の句は FROM → WHERE → GROUP BY → HAVING → ORDER BY → LIMIT の順に書く決まりで、LIMIT を ORDER BY より前に置くと構文エラーになる。指摘としては「LIMIT と ORDER BY の順が逆」と場所を示すのが伝わりやすい。ASC は省略時の既定値なので明記は必須ではなく、1 番目の指摘は存在しない問題を挙げている。
参考: www.sqlite.org
この問題を含む 指摘・レビュー のテストを制限時間つきで解く
指摘・レビュークイズへ