SQL | 排序检索的数据

3-排序检索的数据

使用order by语句排序检索到的数据。

3.1-排序数据

使用SQL语句返回一个数据表的列。

select prod_id 
from products;

+---------------------+

| 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)

并没有固定的排序,如果不指定排序方式,默认检索出的数据是按照数据在表中的数据。

子句,SQL语句是由子句构成的,有些子句是必须的,有些子句是可选的。

一个子句通常由:一个关键字加上所提供的数据组成。

子句的例子有我们在前面看到的SELECT语句的FROM子句。

为了明确排序select检索出的数据,使用order by子句。order by子句取一个或多个列的名字。

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)

使用order by子句时,保证它是最后一条子句,如果不是最后一条子句,可能会报错。

上述子句按照字母顺序从前往后排序。

有时候需要按照多列进行排序。

select prod_id,prod_name,prod_price
from products
order by prod_price, prod_name;

+---------+---------------------+------------+

| prod_id | prod_name | prod_price |

+---------+---------------------+------------+

| BNBG02 | Bird bean bag toy | 3.49 |

| BNBG01 | Fish bean bag toy | 3.49 |

| BNBG03 | Rabbit bean bag toy | 3.49 |

| RGAN01 | Raggedy Ann | 4.99 |

| BR01 | 8 inch teddy bear | 5.99 |

| BR02 | 12 inch teddy bear | 8.99 |

| RYL01 | King doll | 9.49 |

| RYL02 | Queen doll | 9.49 |

| BR03 | 18 inch teddy bear | 11.99 |

+---------+---------------------+------------+

9 rows in set (0.00 sec)

检索出的结果首先按照prod_price排序,如果prod_price相同,就按照prod_name进行排序。

如果price的值都是唯一的,则不会按照name进行排序。

除了使用列名进行排序,还可以使用相对列位置进行排序。

select prod_id,prod_price,prod_name
from products
order by 2,3;

2表示使用第二列进行排序,也就是id,price,name中的第二列进行排序,3表示使用第三列进行排序。

好处是不用重复输入列名,但是坏处是容易搞错要排列的列,修改select语句时,可能忘记更改排列。

3.2-指定排序方向

数据排序默认的排序是A到Z,可以使用order by子句进行降序排序,从Z到A排序。使用关键字desc。

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)

按照price从高到低进行排序。

3.3-多列排序

select prod_id,prod_price,prod_name
from products
order by prod_price desc,prod_name;

上述语句先对prod_price进行降序排列(价格由高到低),如果遇到价格相同的两行,则按照名称升序排列(从A到Z)。

注意:如果想要在多个列上进行降序排列,必须对每一列指定desc关键字。默认为asc,升序排序。

desc是descending的缩写,这两个关键字都可以使用。与desc相对的是asc,是ascending的缩写。

默认情况下,在字典排序顺序中,A被视为与a相同,这是大多数数据库管理系统的默认做法。

许多DBMS允许数据库管理员在需要时改变这种行为。

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

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

相关文章

高并发数据抓取实战:使用HTTP爬虫ip提升抓取速度

又到每天一期学习爬虫的时间了,作为一名专业的爬虫程序员,今天要跟你们分享一个超实用的技巧,就是利用HTTP爬虫ip来提升高并发数据抓取的速度。听起来有点高大上?别担心,我会用通俗易懂的话来和你们说,让你…

【论文阅读】基于深度学习的时序预测——FEDformer

系列文章链接 论文一:2020 Informer:长时序数据预测 论文二:2021 Autoformer:长序列数据预测 论文三:2022 FEDformer:长序列数据预测 论文四:2022 Non-Stationary Transformers:非平…

【C++】stack容器

1.stack基本概念 英stk 美stk n.&#xff08;整齐的&#xff09;一堆&#xff1b;<英> 垛&#xff0c;堆&#xff1b;大量&#xff0c;许多&#xff1b;&#xff08;尤指工厂的&#xff09;大烟囱&#xff1b;&#xff08;图书馆的&#xff09;藏书架&#xff0c;双面书架…

C#字符串占位符替换

using System;namespace myprog {class test{static void Main(string[] args){string str1 string.Format("{0}今年{1}岁&#xff0c;身高{2}cm&#xff0c;月收入{3}元&#xff1b;", "小李", 23, 177, 5000);Console.WriteLine(str1);Console.ReadKey(…

科大讯飞星火模型申请与chatgpt 3.5模型以及new bing的对比

科大讯飞星火模型 申请科大讯飞星火认知大模型账号科大讯飞星火认知大模型使用1.界面介绍2. 在编程能力上与chatgpt 3.5对比科大讯飞星火模型chatgpt 3.5模型 3. 在图片生成能力上与new bing对比 总结 申请科大讯飞星火认知大模型账号 注册网址&#xff1a; 科大讯飞星火认知大…

【C++11保姆级教程】delete和default关键字

文章目录 前言一、delete关键字1.1 什么是delete关键字&#xff1f;1.2delete关键字的语法和用法1.3delete关键字的作用和优势 二、default关键字2.1 什么是default关键字&#xff1f;2.2default关键字的语法和用法2.3 default关键字的作用和优势 总结 前言 欢迎来到本教程&am…

竞赛项目 深度学习验证码识别 - 机器视觉 python opencv

文章目录 0 前言1 项目简介2 验证码识别步骤2.1 灰度处理&二值化2.2 去除边框2.3 图像降噪2.4 字符切割2.5 识别 3 基于tensorflow的验证码识别3.1 数据集3.2 基于tf的神经网络训练代码 4 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x…

ASP.NET WEB API通过SugarSql连接MySQL数据库

注意&#xff1a;VS2022企业版可以&#xff0c;社区版可能存在问题。实体名称和字段和数据库中的要一致。 1、创建项目&#xff0c;安装SqlSugarCore、Pomelo.EntityFrameworkCore.MySql插件 2、文件结构 2、appsettings.json { “Logging”: { “LogLevel”: { “Default”: …

张俊林:由ChatGPT反思大语言模型(LLM)的技术精要

转自&#xff1a;https://mp.weixin.qq.com/s/eMrv15yOO0oYQ-o-wiuSyw 导读&#xff1a;ChatGPT出现后惊喜或惊醒了很多人。惊喜是因为没想到大型语言模型&#xff08;LLM,Large Language Model&#xff09;效果能好成这样&#xff1b;惊醒是顿悟到我们对LLM的认知及发展理念&a…

Cesium--一些实验过程中的效果记录

1.一种反射效果&#xff1a; 片元着色器代码 fragmentShaderSource:in vec3 v_positionMC;in vec3 v_positionEC;in vec2 v_st;void main(){czm_materialInput materialInput;vec3 normalEC normalize(czm_normal3D * czm_geodeticSurfaceNormal(v_positionMC, vec3(0.0), ve…

Git命令详解

1 常用命令 1&#xff09;初始化本地仓库 git init <directory> 是可选的&#xff0c;如果不指定&#xff0c;将使用当前目录。 2&#xff09;克隆一个远程仓库 git clone <url> 3&#xff09;添加文件到暂存区 git add <file> 要添加当前目录中的所…

vim键盘图

国外&#xff1a;http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html&#xff0c;原创&#xff0c;有SVG图&#xff0c;有分步骤的图。 国内翻译&#xff1a;[https://blog.csdn.net/qq_41052753/article/details/101031847 有几个配色&#xff0c;很高清&…