订单1,2做了什么

dat*_*ili 8 sql oracle11g

想象一下,我们有下表

create table t
  (item number,
   bin number,
   primary key (bin , item) );
Run Code Online (Sandbox Code Playgroud)

我使用insert into命令将多个值插入表中t,现在我对这段代码感兴趣

select * from t
  order by 1,2;
Run Code Online (Sandbox Code Playgroud)

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

a_h*_*ame 15

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

select *
from t
order by item, bin;
Run Code Online (Sandbox Code Playgroud)


Ida*_*gar 6

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