在SQL select语句中,有时我们需要使用order by 1
或1 order by
。它们之间的主要区别是什么?
答案 0 :(得分:2)
ORDER BY 1
表示您希望按照select中的第一个字段对结果进行排序。您可以编写第一个字段名称(如果有的话,可以编写别名),而不是1。
1 ORDER BY
中的1是SQL中前一个子句的一部分。这与order by子句无关。
答案 1 :(得分:0)
您可以使用order by 1
1
表示select
子句中的列 - 第一列。
select col1, col2 from t1 1 order by
会引发语法错误。
答案 2 :(得分:0)
select id,name,emp_id
from user
where is_active!=0
and 1
order by emp_id
这里可以完全忽略行and 1
,因为它只是第二个条件,它始终为真。记录将按列emp_id
select id,name,emp_id
from user
where is_active!=0
and 1
order by 1
此处的记录将按SELECT
中的第一列排序,即id
。