ORDER BY子句
适用于:砖的SQL砖运行时
返回结果行排序的方式在用户指定的顺序。不像排序条款,这一条款保证顺序输出。
语法
订单通过{{所有(sort_direction](nulls_sort_oder]}|{表达式(sort_direction](nulls_sort_oder]}(,…]}sort_direction(ASC|DESC]nulls_sort_order(零位第一个|零位去年]
参数
所有
适用于:砖的SQL砖运行时12.1及以上
速记相当于指定所有的表情
选择
列表的顺序。如果sort_direction
或nulls_sort_order
指定它们适用于每个表达式。任何类型的一个表达式用于建立一个顺序返回结果。
如果表达式文字INT值解释为一个列在选择列表中的位置。
sort_direction
指定的顺序的排序顺序表达式。
ASC
:这个表达式的排序方向提升。DESC
:这个表达式的排序顺序降序。
如果没有显式地指定排序方向,那么默认行升序排序。
nulls_sort_order
之前/之后可以选择性地指定是否返回NULL值非空值。如果
null_sort_order
没有指定,那么取消第一如果排序顺序是ASC
去年如果排序顺序和nullDESC
。零位第一个
:返回NULL值首先不管排序顺序。零位去年
:返回NULL值的最后不管排序顺序。
当指定多个表达式排序发生左到右。第一个表达式所有行进行排序。如果有重复的值的表达式的第二个表达式是用来解决集团内的订单副本等等。结果为了不确定的所有订单如果有重复的值的表达式。
例子
>创建表人(idINT,的名字字符串,年龄INT);>插入成人值(One hundred.,“约翰。”,30.),(200年,“玛丽”,零),(300年,“迈克”,80年),(400年,“杰瑞”,零),(500年,“丹”,50);——行按年龄排序。默认情况下先用空行按升序排序的方式。>选择的名字,年龄从人订单通过年龄;杰里零玛丽零约翰30.丹50迈克80年——一行以升序的方式保持去年null值。>选择的名字,年龄从人订单通过年龄零位去年;约翰30.丹50迈克80年玛丽零杰里零——以降序方式行按年龄排序,默认为空。>选择的名字,年龄从人订单通过年龄DESC;迈克80年丹50约翰30.杰里零玛丽零——一行以升序的方式保持第一个null值。>选择的名字,年龄从人订单通过年龄DESC零位第一个;杰里零玛丽零迈克80年丹50约翰30.——基于多个列排序行每个列都有不同——排序方向。>选择*从人订单通过的名字ASC,年龄DESC;500年丹50400年杰里零One hundred.约翰30.200年玛丽零300年迈克80年——行基于排序选择列表中的所有列>选择*从人订单通过所有ASC;One hundred.约翰30.200年玛丽零300年迈克80年400年杰里零500年丹50