按條款排序
適用於:磚的SQL磚運行時
返回結果行排序在每個分區在用戶指定的順序。當有多個分區排序通過
可能部分命令返回結果。這是不同的命令條款保證輸出的總訂單。
參數
任何類型的一個表達式用於建立一個分區本地順序返回結果。
如果表達式是一個文字INT值解釋為一個列在選擇列表中的位置。
sort_direction
指定排序的排序順序表達式。
ASC
:這個表達式的排序方向提升。DESC
:這個表達式的排序順序降序。
如果沒有顯式地指定排序方向,那麼默認行升序排序。
nulls_sort_order
之前/之後可以選擇性地指定是否返回NULL值非空值。如果
null_sort_order
沒有指定,那麼取消第一如果排序順序是ASC
去年如果排序順序和nullDESC
。零位第一個
:返回NULL值首先不管排序順序。零位去年
:返回NULL值的最後不管排序順序。
當指定多個表達式排序發生左到右。分區內的所有行是按第一個表達式。如果有重複的值的表達式的第二個表達式是用來解決集團內的訂單副本等等。結果為了不確定的所有訂單如果有重複的值的表達式。
例子
>創建臨時視圖人(zip_code,的名字,年齡)作為值(94588年,“禪回族”,50),(94588年,“丹·李”,18),(94588年,“阿尼爾K”,27),(94588年,“約翰·V”,零),(94511年,“大衛·K”,42),(94511年,“雅利安人B。”,18),(94511年,“拉B。”,零);——使用“重新分配”提示“zip_code”分區數據——檢查“排序”的行為。這是用於其他——的例子。——排序行“名字”以升序的方式在每個分區>選擇* / / * +重新分區(zip_code)的名字,年齡,zip_code從人排序通過的名字;阿尼爾K2794588年丹李1894588年約翰V零94588年禪回族5094588年雅利安人B。1894511年大衛K4294511年拉蒂B。零94511年——一行在每個分區使用列的位置。>選擇* / / * +重新分區(zip_code)的名字,年齡,zip_code從人排序通過1;阿尼爾K2794588年丹李1894588年約翰V零94588年禪回族5094588年雅利安人B。1894511年大衛K4294511年拉蒂B。零94511年——一行在分區以升序的方式保持零值。>選擇* / / * +重新分區(zip_code)年齡,的名字,zip_code從人排序通過年齡零位去年;18丹李94588年27阿尼爾K94588年50禪回族94588年零約翰V94588年18雅利安人B。94511年42大衛K94511年零拉蒂B。94511年每個分區內,按年齡排序行降序的方式,默認為空。>選擇* / / * +重新分區(zip_code)年齡,的名字,zip_code從人排序通過年齡DESC;50禪回族94588年27阿尼爾K94588年18丹李94588年零約翰V94588年42大衛K94511年18雅利安人B。94511年零拉蒂B。94511年每個分區內,按年齡排序行降序的方式保持第一個null值。>選擇* / / * +重新分區(zip_code)年齡,的名字,zip_code從人排序通過年齡DESC零位第一個;零約翰V94588年50禪回族94588年27阿尼爾K94588年18丹李94588年零拉蒂B。94511年42大衛K94511年18雅利安人B。94511年——一行在每個分區基於多個列,每列——不同的方向。>選擇* / / * +重新分區(zip_code)的名字,年齡,zip_code從人排序通過的名字ASC,年齡DESC;阿尼爾K2794588年丹李1894588年約翰V零94588年禪回族5094588年雅利安人B。1894511年大衛K4294511年拉蒂B。零94511年