order by排序
使用order by语句可以对返回的数据进行排序。
准备数据
drop table if exists test.test_zw;
CREATE TABLE if not exists test.test_zw(
name string COMMENT '姓名',
course string comment '课程',
score double comment '成绩'
)
COMMENT '测试表'
STORED as parquet TBLPROPERTIES('parquet.compression'='SNAPPY');
-- 插入数据
insert into test.test_zw values
('小王','A',100),
('小李','A',90),
('小张','A',90),
('小李','B',80),
('小红','A',80),
('小张','B',80),
('小红','B',100);
不排序
不排序,返回的数据可能顺序可能不一样
select name,course,score
from test.test_zw
升序排列
sql默认升序排列,当然也可以使用asc关键字指明升序排列,按照score升序排列。
select name,course,score
from test.test_zw
order by score
降序排列
使用关键字desc指明降序排列,按照score降序排列
select name,course,score
from test.test_zw
order by score desc
两列排序
先按照course升序排列,再按照score 降序排列。
select name,course,score
from test.test_zw
order by course, score desc