在SQL select语句中,为什么要使用“1 order by”或“order by 1”?

时间:2015-01-22 07:47:08

标签: mysql sql

在SQL select语句中,有时我们需要使用order by 11 order by。它们之间的主要区别是什么?

3 个答案:

答案 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