MySql必知必会实战练习(二)数据检索

在上篇博客MySql必知必会实战练习(一)表创建和数据添加中完成了各表的创建和数据添加,下面进行数据检索和过滤操作。1.Select子句使用顺序select>DISTINCT>f

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

  在上篇博客MySql必知必会实战练习(一)表创建和数据添加中完成了各表的创建和数据添加,下面进行数据检索和过滤操作。

1. Select子句使用顺序

  select—>DISTINCT—>from—>where—>GROUP BY—>HAVING—>ORDER BY—>LIMIT

(1)DISTINCT

  select verd_id from products;

MySql必知必会实战练习(二)数据检索

  使用DISTINCT检索出不同值的列表
  select DISTINCT verd_id from products;

MySql必知必会实战练习(二)数据检索

(2)Group By

  首先看下下面3个查询语句的结果:

  select count(*) from products;
  select * from products where verd_id = 1003;
  select count(*) from products where verd_id = 1003;

(1)MySql必知必会实战练习(二)数据检索(2)MySql必知必会实战练习(二)数据检索 (3) MySql必知必会实战练习(二)数据检索

  (1)表示products表的总项数14

  (2)列出了verd_id为1003的所有项

  (3)显示verd_id为1003的总项数7

  再看下面语句的输出结果:

  select verd_id, count(*) as num_prods from products GROUP BY verd_id;

MySql必知必会实战练习(二)数据检索

  结果一目了然,分别对verd_id进行分组,并显示各组的总项数。

  注:如果再select中使用表达式,则必须再GROUP BY字句中指定相同的表达式,不能使用别名。

(3)HAVING

  HAVING语句主要是对分组语句进行过滤,WHERE过滤指定的是行而不是分组,事实上,WHERE没有分组的概念

  HAVING与WHERE的唯一差别就是WHERE过滤行,HAVING过滤分组

  select verd_id, count(*) as num_prods from products GROUP BY verd_id HAVING count(*)>2;

  MySql必知必会实战练习(二)数据检索

  select verd_id, count(*) as num_prods from products GROUP BY verd_id HAVING verd_id = 1003;

  MySql必知必会实战练习(二)数据检索

(4)ORDER BY

  select cust_name,cust_address,cust_zip from customers;

  MySql必知必会实战练习(二)数据检索

  对cust_zip排序

  select cust_name,cust_address,cust_zip from customers ORDER BY cust_zip;

  MySql必知必会实战练习(二)数据检索

  对多列进行排序

  select cust_name,cust_address,cust_zip from customers ORDER BY cust_address,cust_zip;

  MySql必知必会实战练习(二)数据检索

  指定排序方向:默认升序(ASC),为了进行降序排序,必须指定DESC关键字

  select cust_name,cust_address,cust_zip from customers ORDER BY cust_zip DESC;

  MySql必知必会实战练习(二)数据检索

(5)LIMIT

  LIMIT关键子对输出的行数限制,指定其实行和行数

  select cust_name,cust_address,cust_zip from customers ORDER BY cust_zip DESC LIMIT 2,4;

  MySql必知必会实战练习(二)数据检索

(6)综合使用

  select verd_id, count(*) as num_prods from products GROUP BY verd_id HAVING count(*) > 0 ORDER BY verd_id DESC LIMIT 1,3;

  MySql必知必会实战练习(二)数据检索

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/120054.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • spring ORM是什么,spring的七大模块有哪些「建议收藏」

    spring ORM是什么,spring的七大模块有哪些「建议收藏」spring ORM是什么,spring的七大模块有哪些

  • python中delay__python delay函数「建议收藏」

    python中delay__python delay函数「建议收藏」Python中的sleep函数本人是Python菜鸟一枚,今天用python时,发现如果按照下图所示来写程序在我的Python环境(Win7+Python2.7.9)下测试没问题,是等待5秒后再输出m。你的问题可能是被标准输出流的缓冲区缓冲了,给stdout加一个flush就可以了:fromtimeimportsleepfromsysimportstdoutprint…

  • mmap 内存映射详解

    mmap 内存映射详解mmap基础概念mmap是一种内存映射的方法,这一功能可以用在文件的处理上,即将一个文件或者其它对象映射到进程的地址空间,实现文件磁盘地址和进程虚拟地址空间中一段虚拟地址的一一对映关系。在编程时可以使某个磁盘文件的内容看起来像是内存中的一个数组。如果文件由记录组成,而这些记录又能够用结构体来描述的话,可以通过访问结构数组来更新文件的内容。实现这样的映射关系后,进程就可以采用指针的方式读写操…

  • Android 自定义 HorizontalScrollView 打造再多图片(控件)也不怕 OOM 的横向滑动效果「建议收藏」

    Android 自定义 HorizontalScrollView 打造再多图片(控件)也不怕 OOM 的横向滑动效果「建议收藏」转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38140505自从Gallery被谷歌废弃以后,Google推荐使用ViewPager和HorizontalScrollView来实现Gallery的效果。的确HorizontalScrollView可以实现Gallery的效果,但是HorizontalScrollView存在一个

  • 嵌入式学习路线图「建议收藏」

    嵌入式学习路线图「建议收藏」可能是年前跳槽的比较多,遇到不少同学咨询到嵌入式行业发展和职业规划的问题,这里总结一下嵌入式行业的机遇和选择,希望对读者们有所帮助。我们暂且宏观上把程序员分为3类:业务类,专业类,系统类。 业务类 业务类更多的是在应用程序。随着移动互联网的快速发展出现一批UI设计师,这里的设计师是指APP的界面设计,在注重用户体验的今天对于界面的设计出现水涨船高的需求。一时间Android…

  • pycharm 掌握这些快捷键,你就是大神!!

    pycharm 掌握这些快捷键,你就是大神!!最重要的快捷键1.ctrl+shift+A:万能命令行2.shift两次:查看资源文件新建工程第一步操作1.module设置把空包分层去掉,compactemptymiddlepackage2.设置当前的工程是utf-8,设置的Editor–>FileEncodings–>全部改成utf-8,注释1.ctrl+/:单行注释…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号