我有一个包含两个字段(id和word)的表.任何人都可以告诉我为什么:
$query0 = "SELECT * FROM words WHERE id IN ($treated_words) ";
Run Code Online (Sandbox Code Playgroud)
是一个有效的查询.但:
$query0 = "SELECT * FROM words ORDER BY id ASC WHERE id IN ($treated_words) ";
Run Code Online (Sandbox Code Playgroud)
不是.非常感谢
SQL查询中的元素顺序很重要.该ORDER BY条款必须出现在该WHERE条款之后.
查看MySql文档以获取语法规则.你会看到类似的东西
SELECT [ DISTINCT | ALL ]
column_expression1, column_expression2, ....
[ FROM from_clause ]
[ WHERE where_expression ]
[ GROUP BY expression1, expression2, .... ]
[ HAVING having_expression ]
[ ORDER BY order_column_expr1, order_column_expr2, .... ]
Run Code Online (Sandbox Code Playgroud)