读书笔记--SQL必知必会03--排序检索数据

3.1 排序数据

子句(clause)
SQL语句由子句构成。一个子句通常由一个关键字加上所提供的数据组成。
ORDER BY子句可以取一个或多个列的名字,将SELECT语句检索出的数据进行排序。
ORDER BY子句可以使用非检索的列排序数据。
ORDER BY子句必须作为SELECT语句中最后一条子句。

MariaDB [sqlbzbh]> SELECT prod_name FROM Products ORDER BY prod_name;
+---------------------+
| prod_name           |
+---------------------+
| 12 inch teddy bear  |
| 18 inch teddy bear  |
| 8 inch teddy bear   |
| Bird bean bag toy   |
| Fish bean bag toy   |
| King doll           |
| Queen doll          |
| Rabbit bean bag toy |
| Raggedy Ann         |
+---------------------+
9 rows in set (0.00 sec)MariaDB [sqlbzbh]> 
MariaDB [sqlbzbh]> SELECT prod_name FROM Products ORDER BY vend_id;
+---------------------+
| prod_name           |
+---------------------+
| 8 inch teddy bear   |
| 12 inch teddy bear  |
| 18 inch teddy bear  |
| Fish bean bag toy   |
| Bird bean bag toy   |
| Rabbit bean bag toy |
| Raggedy Ann         |
| King doll           |
| Queen doll          |
+---------------------+
9 rows in set (0.00 sec)MariaDB [sqlbzbh]> 

3.2 按多个列排序

要按多个列排序,简单指定列名,列名之间用逗号分开即可。
在按多个列排序时,排序的顺序完全按规定进行。也就是说,仅在前一列的多个行具有相同的值时,才按照下一列进行排序。

MariaDB [sqlbzbh]> SELECT prod_id,prod_price,prod_name FROM Products ORDER BY prod_price,prod_name;
+---------+------------+---------------------+
| prod_id | prod_price | prod_name           |
+---------+------------+---------------------+
| BNBG02  |       3.49 | Bird bean bag toy   |
| BNBG01  |       3.49 | Fish bean bag toy   |
| BNBG03  |       3.49 | Rabbit bean bag toy |
| RGAN01  |       4.99 | Raggedy Ann         |
| BR01    |       5.99 | 8 inch teddy bear   |
| BR02    |       8.99 | 12 inch teddy bear  |
| RYL01   |       9.49 | King doll           |
| RYL02   |       9.49 | Queen doll          |
| BR03    |      11.99 | 18 inch teddy bear  |
+---------+------------+---------------------+
9 rows in set (0.00 sec)MariaDB [sqlbzbh]> 

3.3 按列位置排序

ORDER BY支持按相对列位置进行排序。
优点是不用重新输入列名,缺点是容易造成错误排序。个人不建议使用。
如果有必要,可以混合使用实际列名和相对列位置。

MariaDB [sqlbzbh]> SELECT prod_id,prod_price,prod_name FROM Products ORDER BY 2,3;
+---------+------------+---------------------+
| prod_id | prod_price | prod_name           |
+---------+------------+---------------------+
| BNBG02  |       3.49 | Bird bean bag toy   |
| BNBG01  |       3.49 | Fish bean bag toy   |
| BNBG03  |       3.49 | Rabbit bean bag toy |
| RGAN01  |       4.99 | Raggedy Ann         |
| BR01    |       5.99 | 8 inch teddy bear   |
| BR02    |       8.99 | 12 inch teddy bear  |
| RYL01   |       9.49 | King doll           |
| RYL02   |       9.49 | Queen doll          |
| BR03    |      11.99 | 18 inch teddy bear  |
+---------+------------+---------------------+
9 rows in set (0.00 sec)MariaDB [sqlbzbh]> 

3.4 制定排序方向

默认的排序顺序是升序排序(从A到Z)。
可以使用ORDER BY子句进行降序排序(从Z到A),但必须指定DESC关键字。
DESC关键字只应用到直接位于其前面的列名。如果想在多个列上进行降序排序,必须对每一列指定DESC关键字。
DESC是DESCENDING的缩写,这两个关键字都可以使用。
ASC是ASCENDING的缩写,因为升序是默认的,所以不必指定关键字。

MariaDB [sqlbzbh]> SELECT prod_id,prod_price,prod_name FROM Products ORDER BY prod_price;
+---------+------------+---------------------+
| prod_id | prod_price | prod_name           |
+---------+------------+---------------------+
| BNBG01  |       3.49 | Fish bean bag toy   |
| BNBG02  |       3.49 | Bird bean bag toy   |
| BNBG03  |       3.49 | Rabbit bean bag toy |
| RGAN01  |       4.99 | Raggedy Ann         |
| BR01    |       5.99 | 8 inch teddy bear   |
| BR02    |       8.99 | 12 inch teddy bear  |
| RYL01   |       9.49 | King doll           |
| RYL02   |       9.49 | Queen doll          |
| BR03    |      11.99 | 18 inch teddy bear  |
+---------+------------+---------------------+
9 rows in set (0.00 sec)MariaDB [sqlbzbh]>  
MariaDB [sqlbzbh]> SELECT prod_id,prod_price,prod_name FROM Products ORDER BY prod_price DESC;
+---------+------------+---------------------+
| prod_id | prod_price | prod_name           |
+---------+------------+---------------------+
| BR03    |      11.99 | 18 inch teddy bear  |
| RYL01   |       9.49 | King doll           |
| RYL02   |       9.49 | Queen doll          |
| BR02    |       8.99 | 12 inch teddy bear  |
| BR01    |       5.99 | 8 inch teddy bear   |
| RGAN01  |       4.99 | Raggedy Ann         |
| BNBG01  |       3.49 | Fish bean bag toy   |
| BNBG02  |       3.49 | Bird bean bag toy   |
| BNBG03  |       3.49 | Rabbit bean bag toy |
+---------+------------+---------------------+
9 rows in set (0.00 sec)MariaDB [sqlbzbh]> 
MariaDB [sqlbzbh]> SELECT prod_id,prod_price,prod_name FROM Products ORDER BY prod_price DESC, prod_name;
+---------+------------+---------------------+
| prod_id | prod_price | prod_name           |
+---------+------------+---------------------+
| BR03    |      11.99 | 18 inch teddy bear  |
| RYL01   |       9.49 | King doll           |
| RYL02   |       9.49 | Queen doll          |
| BR02    |       8.99 | 12 inch teddy bear  |
| BR01    |       5.99 | 8 inch teddy bear   |
| RGAN01  |       4.99 | Raggedy Ann         |
| BNBG02  |       3.49 | Bird bean bag toy   |
| BNBG01  |       3.49 | Fish bean bag toy   |
| BNBG03  |       3.49 | Rabbit bean bag toy |
+---------+------------+---------------------+
9 rows in set (0.00 sec)MariaDB [sqlbzbh]> 

转载于:https://www.cnblogs.com/anliven/p/6201060.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/397098.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql中编写匿名块_Oracle数据库之Oracle_PL/SQL(1) 匿名块

本文主要向大家介绍了Oracle数据库之Oracle_PL/SQL(1) 匿名块,通过具体的内容向大家展现,希望对大家学习Oracle数据库有所帮助。1. PL/SQL 简介PL/SQL是一种比较复杂的程序设计语言, 用于从各种环境中访问Oracle数据库。为什么使用PL/SQL?Ora…

安装了多个Oracle11g的客户端,哪个客户端的tnsnames.ora会起作用?

如果我们由于需要安装了多个Oracle的client,哪个客户端的tnsnames.ora会起作用呢? 答案是: 在安装好clinent端后,安装程序会把client的bin目录放到path里面,path中在前面的client会被首先搜索,其中的tnsnam…

电脑显示连接了网络但是不能上网_为什么电脑插上网线显示已连接却上不了网...

尝试断一下网,或者重启一下系统看一下是否解决;也可能是开启了网络代理,可以重置一下浏览器或者网络设置;还可以使用安全管家软件,扫描一下网络设置。以下是详细介绍:1、有时候系统显示已经连接其实并没有真…

Atcoder ARC101 E 树dp

https://arc101.contest.atcoder.jp/tasks/arc101_c 题解是也是dp&#xff0c;好像是容斥做的&#xff0c;但是看不懂&#xff0c;而且也好像没讲怎么变n^2&#xff0c;看了写大佬的代码&#xff0c;自己理解了一下 #include <bits/stdc.h> #include <ext/pb_ds/assoc…

compress命令--Linux命令应用大词典729个命令解读

内容来源于人民邮电出版社《Linux命令应用大词典》讲述729个命令&#xff0c;1935个例子学习Linux系统的参考书、案头书&#xff0c;遇到不懂的命令或命令选项一查即可争取每天都发布内容本文出自 “airfish2000” 博客&#xff0c;更多命令查看博客&#xff1a;http://airfish…

javaweb学习总结(三十九)——数据库连接池

javaweb学习总结(三十九)——数据库连接池 数据库连接池的实现及原理 JNDI 在 J2EE 中的角色转载于:https://www.cnblogs.com/daishuguang/p/5041845.html

python getopterror_python3 getopt用法

python channel_builder.py -s /Users/graypn/ -d /Users/graypn/Documents -m 7 --outreport/xx.html参数也分长格式和短格式短格式&#xff1a;-s长格式&#xff1a;--sourceopts, args getopt.getopt(sys.argv[1:], "hs:d:m:v:p:c:",["help", "sr…

excel删除空行_Excel里99.9%的人都踩过的坑,早看早避开!

本文作者丨可可&#xff08;小 E 背后的小仙女&#xff09;本文由「秋叶 Excel」原创发布如需转载&#xff0c;请在公众号发送关键词「转载」查看说明2019 年上班第一天感觉怎么样呢&#xff1f;望着满屏幕铺天盖地的表格&#xff0c;我只能摸摸自己还没下去的小肚子&#xff0…

CentOS 6.5 Zabbix-agent3.2 安装 1.0版

1.关闭防火墙service iptables stop2.更换源、安装zabbix-agentrpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/zabbix-release-3.2-1.el6.noarch.rpmyum install -y zabbix-agent3.修改配置文件vim /etc/zabbix/zabbix_agentd.confServer192.168.8.228 ser…

centos下利用httpd搭建http服务器方法

centos下利用httpd搭建http服务器方法 1. 解决的问题 在开发测试过程中&#xff0c;分析图片任务需要将图片保存在服务器端&#xff0c;通过url来访问和下载该图片&#xff0c;这就需要使用一台图片服务器&#xff0c;但常常遇到图片服务器匮乏的情况&#xff0c;为了解决该问题…

[转]Java7中的ForkJoin并发框架初探(上)——需求背景和设计原理

详见&#xff1a; http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp83 这篇我们来简要了解一下JavaSE7中提供的一个新特性 —— Fork Join 框架。 0. 处理器发展和需求背景 回想一下并发开发的初衷&#xff0c;其实可以说是有两点&#xff0c;或者说可以从两个方面…

安装oculus运行时出现问题_U盘安装windows10出现的问题解决方法

安装windows10 出现的问题之前安装windows10都没什么问题&#xff0c;今天安装windows10出现了好多问题&#xff0c;记录一下。我这个教程我觉得是最好的安装教程安装windows10教程问题1. 我们无法创建新的分区&#xff0c;找不到现有分区&#xff08;或者因为MBR分区表问题&am…

JavaFx导出文件

导出文件格式可选 protected void handExportDateAction(ActionEvent event) {// ShowDialog.showConfirmDialog(FXRobotHelper.getStages().get(0),// "是否导出数据到txt&#xff1f;", "信息");FileChooser fileChooser new FileChooser();FileChooser…

python选择排序从大到小_Python实现选择排序

一、选择排序简介选择排序(Selection sort)是一种简单直观的排序算法。选择排序首先从待排序列表中找到最小(大)的元素&#xff0c;存放到元素列表的起始位置(与起始位置进行交换)&#xff0c;作为已排序序列&#xff0c;第一轮排序完成。然后&#xff0c;继续从未排序序列中找…

【Ubuntu14】Nginx+PHP5+Mysql记录

这次因为工作原因&#xff0c;需要在Linux下进行开发。推荐的环境是Ubuntu14NginxPHPMysql。环境搭建好之后&#xff0c;装上GIT&#xff0c;装上IDE&#xff0c;觉得Mysql命令界面麻烦又装了个Navicat。总体用下来感觉很带感。 【虚拟机与镜像文件】 这里我采用的虚拟机是VMwa…

java句柄数过高怎么解决_主播个人及企业利润高,个税或企业所得税怎么解决...

网络直播在2020年尤为火热&#xff0c;男女老少都纷纷投入其中&#xff0c;究其原因还是其行业表现出来的“利润高”等。也确实有部分人取得了一定的成效&#xff0c;也催生了不少的直播平台、经纪公司的出现。 那么这些主播个人或者企业利润高&#xff0c;个税或企业所得…

杂项-Java:JBoss

ylbtech-杂项-Java&#xff1a;JBoss是一个基于J2EE的开放源代码的应用服务器。 JBoss代码遵循LGPL许可&#xff0c;可以在任何商业应用中免费使用。JBoss是一个管理EJB的容器和服务器&#xff0c;支持EJB 1.1、EJB 2.0和EJB3的规范。但JBoss核心服务不包括支持servlet/JSP的WE…

任务调度及远端管理(基于Quartz.net)

这篇文章我们来了解一些项目中的一个很重要的功能&#xff1a;任务调度 可能有些同学还不了解这个&#xff0c;其实简单点说任务调度与数据库中的Job是很相似的东西 只不过是运行的物理位置与管理方式有点不一样&#xff0c;从功能上来说我觉得还是差不多的&#xff0c; 存储过…

2015/12/15--Document对象

<html> <head> <script type "text/javascript"> //使用document.write()输出流写文本 document.write("hello,world!"); //使用document.write()输出流写HTML document.write("<h1>welcome to my world!</h1>")…

C# 子类实例化基类 基类使用不了子类的方法_C#高级编程面试考题

一、简答题1.简述C#中的所有访问修饰符及访问权限private(私有的)给类&#xff0c;及所有类成员使用所有类成员的默认访问修饰符可访问范围当前类自身public(公开的)给类&#xff0c;及所有类成员使用可访问范围当前类自身所有的子类同一程序集其他类通过实例化也可以访问其他程…