12

想象一下我们有下表

create table t
  (item number,
   bin number,
   primary key (bin , item) );

我已经使用 insert into 命令将几个值插入到表中t,现在我对这段代码的作用感兴趣

select * from t
  order by 1,2;

据我所知,它从表中选择所有内容t并对其进行排序,因为 order 意味着使用 order 命令中列出的条件对所选查询进行排序,但order 1,2我不明白这是什么意思,你能帮我吗?

4

3 回答 3

20

它按第一列和第二列对结果进行排序,因此在您的情况下,它与

select *
from t
order by item, bin;
于 2012-06-28T08:27:48.470 回答
3
select * from t
  order by item, bin; // just different written but result is same.

Result将按第一列和第二列排序。

不同之处在于代码的可读性,所以如果有人不知道有关表格的信息,你select什么都不说。人只知道结果将按 1. 和 2. 列排序,仅此而已。

于 2012-06-28T08:28:31.733 回答
3

它将按第一列对结果进行排序,然后,如果第一列中有一些具有相同值的行,它将按第二列对它们进行排序。

于 2012-06-28T09:19:30.140 回答