1.常规排序
Select xxx,xxx
From xxxx.xxx
Order by xxxxx desc
Select: 查询;后面跟的内容是要查的内容;
From:表示要从什么地方开始查
Xxxx.xxx xxxx模式名,xxx表名
Select * from xxxx.xxx; 从xxxx.xxx中查询所有的内容;
Xxx 我们要查询的内容,也就是是列名,需要查询的字段之间用逗号隔开;
Order by 更改排序方式,xxxxx所要更改排序的类容的内容,也就是表里面的列名,
Desc 降序,代表着更改后的排序方式是降序;如果不添加这个就带表着默认是升序;
当我们所有更改的排序类容是中英混杂的时候,是英文的在前面中午的在后面
效果如下:
在这里插入图片描述
2.按多列对结果进行排序;
Select *
From [sales].[customers]
Order by city,first_name
City 我们所要更改排序的类容,类容之间用逗号来分割,
first_name 我们所要更改排序的类容
如果更改的排序只有一列的话,那么其他列也会根据他的排序进行更改,
如果更改的类容有多列的话,在前面的列不会被后面的列的排序的更改跟着一起更改;
如 city,first_name 系统会先更改city的排序,当他更改好后其他的列会随着他一起更改,然后系统在更改first_name的排序,但他的排序变化不会影响到已经更改好的city的排序,但其他的列会跟着first_name排序的变化而变化,
Select *
From [sales].[customers]
Order by city desc,first_name
city 我们所要更改排序的类容,类容之间用逗号来分割,
Desc 降序,
first_name 因为后面什么都没有跟所以默认为升序;
效果如下:
3.不在选择列表的列进行排序;
Select city,first_name
From [sales].[customers]
Order by city desc,customer_id
从上面看我们只查询了city,first_name但是排序的时候我们可以根据我们没有查询出来的列进行排序;
4.排序的关键词;
Desc 降序
Asc 升序一版都不用写默认就是升序;
Len(xxx) 按照xxx的字符串长度排序,谁的名字短谁排前面,xxx列名;