今天我们来讲sql命令中的参数order by的用法

order by

  • order by:可以理解成【以某个字段排序】
  • order by a,b // a和b都按升序
  • order by a,b desc // a升序,b降序
  • order by a desc, b // a降序,b升序
  • order by a desc,b desc //a和b都按降序
  • 如果不指定排序的标准,则默认是升序,升序用asc表示,默认可以不写。为一个字段指定的排序标准并不会对另一个字段产生影响,强烈建议为每个字段都指定排序的标准。
  • asc是升序的意思 默认可以不写 desc是降序

下面我们来看例子来详细分析sql命令中的参数order by

这些sql命令的样例都是基于scott数据库中的emp表


select * from emp order by sal; -- //如果不加什么排序标准的话,则默认是按照升序排序
-- //下面我们来分析这条sql命令
-- //首先会执行这个from emp,来找到emp表。
-- //然后执行order by sal,按照sal这个字段进行升序排序
-- //注意这个order by这个命令,我认为,在这个sql命令的底层中应该用了某种算法。
-- //当第一次执行到order by sal 的时候,他应该就能遍历整个emp表的sal字段
-- //然后按照sal这个字段的值进行排序。
-- //这时候每条记录都以sal这个字段的值按升序排好了
-- //然后开始查询第一条记录,并且输出第一条记录所有字段的值
-- //然后查询第二条记录,然后第三条记录。。。。。。
-- //直到查询到最后一条记录

下面是上面这条sql命令所执行的结果



我们可以看到sal这个字段的值都在增加

我们再来看一个sql命令

      select * from emp order by deptno, sal      -- //先按照deptno升序排序,如果deptno相同,再按照sal升序排序
-- //执行的的顺序和上面一样。

下面是上面这条sql命令所执行的结果



我们可以看到deptno是按升序排序的,当deptno相同时,再按照sal进行升序排序

因为比较简单,所以下面的例子我就不一一分析了

select * from emp order by deptno desc, sal;
--先按deptno降序排序 如果deptno相同 再按照sal升序排序
--记住sal是升序不是降序
--order by a desc, b, c, d desc只对a产生影响 不会对后面的b c d 产生影响 select * from emp order by deptno, sal desc
--问题:desc是否会对deptno产生影响?
--答案:不会
--先按deptno升序,如果deptno相同,再按sal降序

这一讲就到这里,下一讲我们来说模糊查询

如果还有什么不懂的,可以加我qq485536603

SqlServer2005 查询 第七讲 order by的更多相关文章

  1. SqlServer2005 查询 第八讲 order by

    今天我们来说模糊查询 模糊查询 -- --模糊查询[主要用在搜索中]格式:select 字段的集合 from 表名 where 某个字段名 like 匹配条件 --注意:匹配条件通常含有通配符,通配符 ...

  2. SqlServer2005 查询 第六讲 null

    今天们来讲sql命令中的这个null参数 null null: 可以理解成[没有值,空值]的意思 注意以下几点 --1.零和null是不一样的,null表示空值,而零表示的一个确定的值 --2.nul ...

  3. SqlServer2005 查询 第四讲 in

    今天我们来说sql中的命令参数in in --in用于查询某个字段的指定的值的记录信息 注意一下:--对或(or)取反是并且(and),对并且(and)取反是或(or 数据库中不等于表示有两种:!= ...

  4. 《ArcGIS Engine+C#实例开发教程》第七讲 图层符号选择器的实现2

    原文:<ArcGIS Engine+C#实例开发教程>第七讲 图层符号选择器的实现2 摘要:在第七讲 图层符号选择器的实现的第一阶段中,我们完成了符号选择器窗体的创建与调用.在第二阶段中, ...

  5. Stanford机器学习---第七讲. 机器学习系统设计

    原文:http://blog.csdn.net/abcjennifer/article/details/7834256 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归 ...

  6. [SQL基础教程] 3-4 对查询结果进行排序/ORDER BY

    [SQL基础教程] 3-4 对查询结果进行排序/ORDER BY ORDER BY SELECT <列名1>,<列名2>,<列名2>... FROM ORDER B ...

  7. PE格式第七讲,重定位表

    PE格式第七讲,重定位表 作者:IBinary出处:http://www.cnblogs.com/iBinary/版权所有,欢迎保留原文链接进行转载:) 一丶何为重定位(注意,不是重定位表格) 首先, ...

  8. python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍

    目录 python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍 一丶元祖 1.元祖简介 2.元祖变量的定义 3.元祖变量的常用操作. 4.元祖的遍历 5.元祖的应用场景 p ...

  9. Linux基础知识第七讲,用户权限以及用户操作命令

    目录 Linux基础知识第七讲,用户权限以及用户操作命令 一丶简介linux用户,用户权限,组的概念. 1.1 基本概念 1.2 组 1.3 ls命令查看权限. 二丶用户权限修改命令 1.chmod ...

随机推荐

  1. 部署在本服务器上,Jenkins无法启动Tomcat

    今天在部署Jenkins的过程中,有一个需要部署在本服务器上的Web服务,而且Jenkins给我的反馈也是成功的部署了,且Tomcat启动起来了,但是实际打开项目发现其实并没有启动起来 在查看日志的时 ...

  2. eclipse提交代码到GitHub

    1.配置git 2.右键项目--> Team--> Share Project... 3.右键项目--> Team--> Commit...

  3. 判断一字串String中是否包含某一串字符串

    String ostype = data.getString("osType").toUpperCase(); //转换为大写 if (ostype.contains(" ...

  4. C++ 构造函数的执行过程(一) 无继承

      引言 C++ 构造函数的执行过程(一) 无继承 本篇介绍了在无继承情况下, C++构造函数的执行过程, 即成员变量的构建先于函数体的执行, 初始化列表的数量和顺序并不对构造函数执行顺序造成任何影响 ...

  5. java实现,使用opencv合成全景图,前端使用krpano展示

    这周花三天做了一demo,算上之前的,怎么也有五天,上一篇是opencv介绍,以及定义native方法,通过本地图片路径传参,底层调用Opencv图像库合成,有兴趣的可以看看,这篇重点在于krpano ...

  6. Mybaits 源码解析 (五)----- 面试源码系列:Mapper接口底层原理(为什么Mapper不用写实现类就能访问到数据库?)

    刚开始使用Mybaits的同学有没有这样的疑惑,为什么我们没有编写Mapper的实现类,却能调用Mapper的方法呢?本篇文章我带大家一起来解决这个疑问 上一篇文章我们获取到了DefaultSqlSe ...

  7. Apollo报错找不到apollo.meta的问题解决方案

    问题描述 Apollo报错,找不到apoll.meta,但是明明配置了apollo-env.properties到apollo-client内了. apollo-env.properties pro. ...

  8. element ui实现手动上传文件,且只能上传单个文件,并能覆盖上传。

    element ui提供了成熟的组件场景,但实际工作中难免会遇到认(sha)真(diao)的产品.比如,最近遇到的,要求实现手动上传特定格式文件(用户点击“上传文件”按钮,确定之后,只是单纯选择了文件 ...

  9. django-URL重定向(八)

    HttpResponseRedirect()不常用 redirect(to,permanent=False,*args,**kwargs) to:指重定向的位置,可以是视图,也可以是url地址,也可以 ...

  10. 【Leetcode 做题学算法周刊】第二期

    首发于微信公众号<前端成长记>,写于 2019.11.05 背景 本文记录刷题过程中的整个思考过程,以供参考.主要内容涵盖: 题目分析设想 编写代码验证 查阅他人解法 思考总结 目录 20 ...