order by排序语句的用法

news/2024/10/17 14:16:48/

文章目录

    • 学习连接
    • 语法
      • 用法
      • 示例
        • 1、按单个列的值排序
        • 2、按多个列的值排序
        • 3、按指定的规则排序
        • 4、按中文拼音字母顺序
        • 5、Order by和where条件共用

数据库中常用order by关键字对结果集进行排序,又可使用desc和asc来进行指定规则的排序。

学习连接

数据库:order by排序语句的用法
MySQL 中文排序 ORDER BY CONVERT(ColumnName USING gbk) 函数

语法

select column_name,column_name 
from table_name 
order by column_name,column_name asc|desc

即:select 列名 from 表名 order by 列名 asc|desc

用法

  • 默认:升序

  • asc:指定列按升序排列

  • desc:指定列按降序排列

  • desc/asc :只对后方的第一个列名有效,其他不受影响,仍是默认的升序。

    • order by 列名A,列名B 则默认列A和列B均按升序排列

    • order by 列名A desc,列名B A列降序,B列升序排列

    • order by 列名A,列名B desc A列升序,B列降序排列

示例

如果一个table名字为FF_REQUEST,每列的数据为
在这里插入图片描述

1、按单个列的值排序

select * from FF_REQUEST order by NO desc

执行后的效果为:

在这里插入图片描述

2、按多个列的值排序

Select * From FF_REQUEST order by NO,MOBILE

执行后的效果为:
在这里插入图片描述

3、按指定的规则排序

这个之前没有见过

select * from FF_REQUEST order by charindex(NO,'3,5,2')

执行后的效果为:
在这里插入图片描述

4、按中文拼音字母顺序

在MySQL中,我们经常会对一个字段进行排序,若不是中文字段则可以使用 ORDER BY ColumnName,但进行中文字段排序,对汉字的排序结果往往都是错误的。 这是因为 ORDER BY 是根据对应字符的ASCII码排序

如要实现按照中文拼音的排序,不想改变数据库结构的话,简单的做法是,在SQL语句内加入CONVERT 函数即可。
SELECT * FROM table ORDER BY CONVERT( ColumnName USING gbk);

对比结果如下图:
在这里插入图片描述

5、Order by和where条件共用

Order by必须在where条件之后使用,否则会报错

示例:

select * from FF_REQUEST where to_char(CR_DATE,YYYY-MM-DD) =2019-03-20order by CR_DATE,ID descselect * from FF_REQUEST where to_char(CR_DATE,YYYY-MM-DD) =2019-03-20order by CR_DATE desc,ID asc

http://www.ppmy.cn/news/86661.html

相关文章

当你学会这项python数据提取神器时,请做好升职准备!

一、什么是 jsonpath ● JsonPath 是一种信息抽取类库,是从 JSON 文档中抽取指定信息的工具,提供多种语言实现版本,包括:JavaScript、Python、PHP 和 Java。 *文末领10节自动化精品课* 二、特点 ● 只能提取 JSON 格式的数据 ●…

Pinna的使用以及pinna的持续化存储(两种方法)

一、简介 pinia是 vue3 新的状态管理工具,简单来说相当于之前 vuex,它去掉了 Mutations 但是也是支持 vue2 的,需要的朋友可以参考下 二、使用方法 1.安装 npm install pinia -S 2..引入 import { createPinia,PiniaPluginContext } from p…

1行代码合并多个PPT文件,Python自动化办公

大家好,这里是程序员晚枫,小破站也叫这个名字。 今天继续给大家更新自动化办公的功能:1行代码,合并多个PPT文件。 最近刚换了新工作,功能更新比较慢。大家有需要直接留言,每个留言我都会回复~ 1、上代码 …

公司只有1个测试,领导却让我测试10个项目,这不是为难我....

读者提问:公司只有 1个测试,领导让我同时测试 10个项目,我该怎么办?回答:如果我是那个测试,我会做这三件事 1、向上申请资源2、任务分配到人3、执行测试任务 一、向上申请资源 1个测试同时对接 10个项目&a…

Holocube-第一集

准备工作: 装备: ESP 8266 D1 MINI1.3寸 TFT 屏幕分光棱镜25.4mm面包板、杜邦线、数据线等配件 软件: Arduino(本人使用1.8.16)---驱动ch341 初始arduino简单程序,对esp8266上传代码,能正常运行。正式开始 坑1&…

怎么通过ecs云服务器来给小程序发送消息

如果您想通过 ECS 云服务器向小程序发送消息,可以使用 WebSocket 技术。具体步骤如下: 1. 在 ECS 云服务器上搭建 WebSocket 服务器。您可以使用 Node.js、Java、Python 等编程语言来实现 WebSocket 服务器,具体实现方式可参考相关技术文档或…

Linux系统初始化命令的备忘单,Linux运维工程师收藏!

在管理和维护Linux系统时,有一些常用的命令可以帮助您进行系统初始化和配置。这些命令涵盖了各种任务,包括系统设置、用户管理、软件安装和网络配置等。 本文将为您提供一个Linux系统初始化命令的备忘单,以便在需要时方便查阅和使用。 系统设…

C语言指针

C语言指针 前言1. 指针是什么?1.2 如何编址呢? 2. 指针和指针类型2.1 指针-整数2.2 指针类型的意义 3. 野指针3.1 野指针成因3.1.1 指针未初始化3.1.2 指针越界访问1.1.3 指针指向的空间释放 3.2 如何避免野指针 4. 指针运算4.1 指针 /- 指针4.2 指针 -…