专业只做数据库实训和认证的品牌机构

微信公众号新浪微博
免费咨询电话:400-0909-964
当前位置: 网站首页 > MySQL培训 > MySQL课程 > MySQL培训教程:分析和处理数据

MySQL培训教程:分析和处理数据

文章来源: 更新时间:2016/7/15 14:34:56

在线老师点击咨询:

最新学讯:近期OCP认证正在报名中,因考试人员较多请尽快报名获取最近考试时间,报名费用请联系在线老师,甲骨文官方认证,报名从速!

我要咨询

MySQL培训教程:分析和处理数据,通过MySQL你不仅可以取回原始数据,还可以对取回的数据进行分析和格式化。例如,假设我们想知道库存中有多少部LeoTolstoy的作品,可以按照如下所示输入包含COUNT(*)函数的SELECT语句:

  1. SELECT COUNT(*)  
  2. FROM books  
  3. JOIN authors USING(author_id)  
  4. WHERE author_last = 'Tolstoy';  
  5.  
  6. +------------+  
  7. COUNT(*) |  
  8. +------------+  
  9. | 12|  
  10. +------------+ 

另一示例,假设我们建立好数据库并创建一个包含客户订单信息的orders表。我们可以通过查询该表得到某本图书的销售总额。例如,想知道WilliamBoyd的作品Armadillo的销售总额,我们可在MySQL客户机中输入下列SQL语句来实现:

  1. SELECT SUM(sale_amount) AS 'Armadillo Sales' 
  2. FROM orders  
  3. JOIN books USING(book_id)  
  4. JOIN authors USING(author_id)  
  5. WHERE title = 'Armadillo' 
  6. AND author_last = 'Boyd';  
  7.  
  8. +-----------------+  
  9. | Armadillo Sales |  
  10. +-----------------+  
  11. | 250.25 |  
  12. +-----------------+ 

在这里,我们把三个表关联起来用以获取我们需要的信息。MySQL将orders表中与WHERE子句相符合的每一行的sale_amount值取出并累加起来,总和显示在指定的列标题之下。

对于那些包含数据或时间信息的列,我们可以使用不同的函数为它们设置显示格式。例如,假设我们想从orders表中提取顾客购买图书的日期信息,这个日期信息是基于顾客的收据码(例如:1250)的,那么收据码就是记录的标识码或sale_id。我们可以输入以下内容得到默认的显示格式,如结果中最后一行所示:

  1. SELECT purchase_date AS 'Purchase Date' 
  2. FROM orders  
  3. WHERE sale_id = '1250';  
  4.  
  5. +---------------+  
  6. | Purchase Date |  
  7. +---------------+  
  8. | 2004-03-01 |  
  9. +---------------+ 

上面的格式(年-月-日)很容易理解。然而,如果想让月份用英语表示,而不是用数字形式显示,那么我们只能使用日期函数了:

  1. SELECT CONCAT(MONTHNAME(purchase_date), ' ',  
  2. DAYOFMONTH(purchase_date), ', ',  
  3. YEAR(purchase_date)) AS 'Purchase Date' 
  4. FROM orders  
  5. WHERE sale_id = '1250';  
  6.  
  7. +---------------+  
  8. | Purchase Date |  
  9. +---------------+  
  10. | March 1, 2004 |  
  11. +---------------+ 

为了能使日期按照美国的典型易读格式显示,可以使用CONCAT()函数以及其他一些日期函数。乍一看,这可能会有点令人困惑:因为我们在第一行的结尾处,月份和日期之间插入了一个空格;在第二行的末尾处,日期后面插入了一个逗号和空格。关于日期函数,第一个函数是从purchase_date列中取出月份,并将其格式化使其显示全称。第二行的第二个日期函数取出日期,在其后输出一个逗号。第三行的第三个日期函数取出年份。

几个函数一起执行,就得到你所看到的结果了。然而,这并不是日期最简洁的组合显示方法。我们可以使用DATE_FORMAT()函数替代上面的方法:

  1. SELECT DATE_FORMAT(purchase_date, "%M %d, %Y")  
  2. AS 'Purchase Date' 
  3. FROM orders  
  4. WHERE sale_id = '1250'

这是一个更为有效的方法,它提供的结果和前面语句的结果一样。你只需知道格式代码就完全可以使用这个函数。第12章中列出了更多的格式代码以及日期和时间函数。

本文地址:http://www.cuug.com.cn/mysql/kecheng/12481411859.html 转载请注明!


在线预约 抢先报名 获取课程排期

Oracle培训机构

金牌讲师<>

冉乃纲-老师CUUG金牌讲师
冉老师 CUUG金牌讲师 Oracle及RedHat高级讲师、Unix/Linux 资深专家...[详细了解老师]

免费咨询上课流程 客服在线中

陈卫星-老师CUUG金牌讲师
陈老师 CUUG金牌讲师 精通Oracle管理、备份恢复、性能优化 11年Ora...[详细了解老师]

免费咨询上课流程 客服在线中

选学校如何选择适合自己的学校

CUUG -CHINA UNIX USER GROUP,是国际UNIX组织UNIFORUM的中国代表,是国内悠久的专业UNIX培训机构,被誉为中国UNIX 的摇篮。多年来,以提高教学质量为本,强调素质教育,积极引进、消化国外的新技术,有效的结合中国....[详情]

一站式服务(从入学到就业一帮到底)

入学

学习

就业

实操

食宿
地址:北京市海淀区田村山南路35号院17号楼
课程咨询:010-59426307 010-59426319 400-0909-964
企业服务:137 1818 8639(陈经理)
部分信息来源于网络,如有错误请联系指正!
版权所有@北京神脑资讯技术有限公司 (CUUG,中国UNIX用户协会) Copyright 2016 ALL Rights Reserved 京ICP备11008061号-1