按 1,2,3,4 排序

Rob*_*zzo 8 sql sql-server

order by 1, 2, 3, 4代表什么?

mkR*_*ani 16

按列的顺序位置排序

\n\n

SQL Server 允许您根据选择列表中出现的列的顺序位置对结果集进行排序。

\n\n

以下语句按名字和姓氏对客户进行排序。但它没有显式指定列名,而是使用列的序号位置:

\n\n
SELECT\n    first_name,\n    last_name\nFROM\n    sales.customers\nORDER BY\n    1,\n    2;\n
Run Code Online (Sandbox Code Playgroud)\n\n

在此示例中,1 表示first_name 列,2 表示last_name 列。

\n\n

由于多种原因,在 ORDER BY 子句中使用列的序数位置被认为是不好的编程实践。

\n\n
    \n
  1. 首先,表中的列 don\xe2\x80\x99t 具有序数位置,需要按名称引用。
  2. \n
  3. 其次,当您修改选择列表时,您可能会忘记在 ORDER BY 子句中进行相应的更改。
  4. \n
\n\n

因此,最好始终在 ORDER BY 子句中显式指定列名。

\n\n

欲了解更多详情,请前往这里

\n


Zay*_*hin 6

order by 1, 2, 3, 4代表:

order by column1, column2, column3, column4 
Run Code Online (Sandbox Code Playgroud)

从您的查询选择列的位置,因此如果您的选择 ID 如下所示

select col1, col3, col4, col2 from table order by 1, 2, 3, 4
Run Code Online (Sandbox Code Playgroud)

这里的order by 1,2,3,4意思是

order by col1, col3, col4, col2
Run Code Online (Sandbox Code Playgroud)