• 快速实战SQL - 排序检索数据


    😄 每天5min小学一下,拒绝内卷,休息~

    ⭐ 简单声明:

    • 关系数据库设计理论认为,如果不明确规定排序顺序,则不应该假定检索出的数据的顺序有任何意义。
    • SQL语句由子句组成,有些子句必须,有些可选。
    • SELECT 语句的 ORDER BY 子句。ORDER BY子句取一个或多个列的名字,据此进行排序。
    • ORDER BY 子句要放在SELECT语句中的最后一条子句位置。
    • 默认排序是升序。
    • 对文本性数据排序时,A与a可能相同也有可能不同,这取决与数据库的设置方式,大多数DBMS将A与a视为相同。无法根据ORDER BY改变。

    本文学习如何排序检索数据【5 mins 快速入门】 -> SELECT 语句的 ORDER BY 子句。

    🚀导航:

    1、排序数据:

    SELECT c1
    FROM tb1
    ORDER BY c1; # 按别的列排序也ok。
    
    • 1
    • 2
    • 3

    2、按多个列排序:

    经常需要按不止一个列进行数据排序。
    下面代码先按c2排序好,再针对c2列的值相同的组里按c3排序。也就是说,如果根据c2列全部值唯一,那不会按c3排序,只按c2排序。

    SELECT c1, c2, c3
    FROM tb1
    ORDER BY c2, c3; 
    
    • 1
    • 2
    • 3

    3、按列位置排序:

    可以根据SELECT清单后的列位置进行ORDER BY。主要是为了方便不用重新输入列名。

    SELECT c1, c2, c3
    FROM tb1
    ORDER BY 2, 3;  # 等价于ORDER BY c2, c3; 当然也可以混着用。
    
    • 1
    • 2
    • 3

    4、指定排序方向:

    默认升序(关键字ASC,也可ASCENDING),可指定DESC关键字来降序。(在列名后加DESC,也可DESCENDING)
    如果想对多个列进行降序,那必须对每一列指定DESC关键字。

    SELECT c1, c2
    FROM tb1
    ORDER BY c1 DESC; 
    # 也可ORDER BY c1 DESC, c2; 
    
    • 1
    • 2
    • 3
    • 4
  • 相关阅读:
    ros2原来本是一个通信协议
    机器学习基础:随机变量及其概率分布
    机器学习模型3——支持向量机SVM
    tcpdump
    高等教育学:态度与品德的形成
    搭建linux vsftpd服务器
    vscode开发STM32(四)--- 技巧篇
    【模式识别】贝叶斯决策模型理论总结
    Hadoop
    迭代器的封装与反向迭代器
  • 原文地址:https://blog.csdn.net/weixin_43646592/article/details/127913538