Excel零基礎學SQL11:排序,order by子句

SQL中排序使用的是order by子句。

【1】、單列排序

Excel零基礎學SQL11:排序,order by子句

要求:按照評分排序,升序或降序。

select * from [sheet5$] order by 評分

Excel零基礎學SQL11:排序,order by子句

如果order by子句後面沒有指明是升序還是降序,則默認是升序。

asc是升序排列,上面的SQL語句相當於下面的語句。

select * from [sheet5$] order by 評分 asc

Excel零基礎學SQL11:排序,order by子句

降序用desc

select * from [sheet5$] order by 評分 desc

Excel零基礎學SQL11:排序,order by子句

【2】、多列排序

Excel零基礎學SQL11:排序,order by子句

要求:同一部門裡評分降序排序。

select * from [sheet5$] order by 部門,評分 desc

Excel零基礎學SQL11:排序,order by子句

【3】、以上表為數據,提取部門C的數據,並按評分升序排序。

select * from [sheet5$] where 部門="c" order by 評分 asc

Excel零基礎學SQL11:排序,order by子句

該語句的執行順序為:

1、FROM:選擇數據源

Excel零基礎學SQL11:排序,order by子句

2、WHERE:執行條件篩選,選取部門C的數據

Excel零基礎學SQL11:排序,order by子句

3、select:星號 "*"查詢所有數據

Excel零基礎學SQL11:排序,order by子句

如查詢姓名和評分,則返回

Excel零基礎學SQL11:排序,order by子句

4、order by 排序

Excel零基礎學SQL11:排序,order by子句

至此,該SQL語句執行完畢。

【4】、合併表格時union all的order by排序。

Excel零基礎學SQL11:排序,order by子句

要求:將左邊的兩表上下合併(字段數相同,表格結果相同),並按評分升序排序。

1、先將兩表上下合併:

select * from [sheet5$a1:c8]

union all

select * from [sheet5$h1:f3]

Excel零基礎學SQL11:排序,order by子句

2、使用order by子句排序:對合並後的數據進行排序,而不是僅僅對[sheet5$h1:f3] 中的評分進行排序。

select * from [sheet5$a1:c8]

union all

select * from [sheet5$h1:f3]

order by 評分

Excel零基礎學SQL11:排序,order by子句



分享到:


相關文章: