`
网盛数新
  • 浏览: 10871 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

数据应用达人之SQL基础教程分享10-SQL函数

阅读更多

SQL的函数很有用

2.函数

1、SQL的函数

【知识点介绍】

与大多数的计算机语言一样,SQL里也有函数(functions),它的函数一般是对数据执行的,为数据的转换和处理提供很强大、简介的作用。
它的使用在语法上可以表达为:

SELECT 函数(列) FROM 表;

2、函数类型

【知识点介绍】

在SQL中,函数往往被分为两个类型:
1.Aggregate 函数,也被称为汇总函数或聚集函数,它的函数操作面向列的数据,并返回单一的值;
2.Scalar 函数,它的函数面向单一的值,返回基于该值操作后的单一的值。
这两种类型的具体内容,我们会在接下来的课程中一一介绍。



汇总数据的函数

3.Aggregate函数

1、什么是聚集函数

【知识点介绍】

聚集函数是对某些列的行数据进行计算,并返回一个值,常见的函数有:

函数 描述
AVG( ) 返回某列的平均值
COUNT( ) 返回某列的行数
MAX( ) 返回某列的最大值
MIN( ) 返回某列的最小值
SUM( ) 统计某列值的和

2、avg-求平均值

【知识点介绍】

AVG函数用来返回某列的平均值,它通过对列值之和求得该列的平均值。

【实例】

求植物专业学生的学分评价值。
返回的值是学分的平均值,条件是物理学学生。

SELECT AVG(Credit) FROM student
WHERE Major = 'Botany';

 

3、count-计数

【知识点介绍】

COUNT函数是计数函数,用来统计表中某列有多少行。
我们使用COUNT(*)会对表中行的所有数目进行计数,无论行数据是否为空。而使用COUNT(列)可以对某列进行行数统计,同样无视数据是否为空。

【实例】

查看学生表现在有多少个学生的数据。
(思考下学生表中什么值是不允许为空的)
ID 和SName在当初设计的时候是不允许空值的列。

SELECT COUNT(ID) FROM student;

 

4、max min-最大最小值

【知识点介绍】

MAX和MIN是返回列中的最大值和最小值,它们要求我们指定列名。

【实例】

查询学生表中最低或最高学分。

SELECT MIN(Credit) FROM student;

 

5、sum-总计

【知识点介绍】

SUM是用来返回列值的和(区分计数),适用于数字类型的数据,字符串的和总是返回0。

【实例】

统计女学生的学分。
使用SUM函数,条件子句是满足性别是女性。

SELECT sum(Credit) FROM student
WHERE Sex = 'Female';

 

6、关于HAVING

【知识点介绍】

聚集函数有个很大的问题,即它在WHERE语句中是无法使用的,比如我们要返回学生表中分数最低的学信息,我们不假思索会这样写:

SELECT * FROM student
WHERE Credit = MAX(Credit);  -- 不被SQL支持

 

然后,这样在SQL中是不被支持的!
为了让聚集函数能在WHERE中被使用,SQL里增加了一个HAVING子句来替代WHERE的作用:

SELECT 某列, 聚集函数(某列) FROM 表
WHERE[子句]
GROUP BY 某列
HAVING 聚集函数(某列)[子句]
ORDER BY 某列;

 

注意语句中WHERE、GROUP BY、HAVING、ORDER BY的优先顺序。

【实例】

使用HAVING子句,统计各个专业的学分综合。
选择Major列和SUM(Credit)函数即可;
保险起见,SUM的结果大于0即可。

SELECT Major,SUM(Credit) FROM student
GROUP BY Major
HAVING SUM(Credit) > 0;

 

下文待续。。。。。。

 

欢迎大家前往访问我们的官网:

http://www.datanew.com/datanew/homepage

http://www.lechuangzhe.com/homepage

分享到:
评论

相关推荐

    手把手教你通过案例学SQL教程[视频课程].txt打包整理.zip

    这个“手把手教你通过案例学SQL教程”旨在帮助初学者掌握SQL的基础概念和实际操作技巧,通过视频课程的形式,使得学习更加生动直观。 【SQL基本概念】 1. 数据库(Database):存储数据的系统,它按照特定的结构...

    SQL自学资料

    本教程将带你逐步深入SQL的世界,从基础到进阶,帮助你轻松自学。 一、SQL简史与数据库历史 SQL的历史可以追溯到1970年代,由IBM的研究员Raymond Boyce和Donald Chamberlin共同设计,当时称为SEQUEL(Structured ...

    2018 猎豹网校 教程大全 资源难找赶紧保存吧

    猎豹网校 快速掌握 Python 基础教程[MP4] 猎豹网校 快速掌握 Python Django 1.5 网页开发[MP4] 猎豹网校 快速掌握 MATLAB 经典教程[MP4] 猎豹网校 快速掌握 LoadRunner 测试工具[MP4] 猎豹网校 快速掌握 C# 学习...

    delphi高手经验集--很多达人的经验之谈

    书中会介绍如何连接数据库,执行SQL语句,设计数据驱动的应用程序,并处理事务。 5. **内存管理与性能优化**:理解内存管理是提高程序效率的关键。书中会讲解如何有效地分配和释放内存,避免内存泄漏,以及如何通过...

    #资源分享达人# 代码审计[java安全编程].doc.zip

    【标题】:“#资源分享达人# 代码审计[java安全编程].doc.zip”指出这是一个关于Java安全编程的代码审计主题的资源,其中包含了对Java代码进行安全性审查的实践指南或教程。这个压缩包可能包含了一份详细的文档,...

    MySql手工注入.doc#资源达人分享计划#

    首先,MySQL手工注入的基本原理是通过构造恶意SQL语句,利用Web应用程序中存在的输入验证不足或完全缺失,来获取数据库中的数据。例如,`information_schema`是一个非常关键的虚拟库,它存储了关于所有数据库、表和...

    web后端+mysql.zip

    "资源分享达人计划"标签可能意味着这个压缩包包含的是一个学习资源或教程集合,旨在帮助用户掌握Web后端开发和MySQL数据库的使用技巧。 "web mysql"标签进一步确认了内容的核心,即Web开发中的数据库操作,特别是...

    微信小程序开发-式神猎手带后端案例源码.zip

    本教程将深入探讨“式神猎手”这个微信小程序的开发案例,包括前端界面设计与交互实现,以及后端服务的构建与数据管理。 一、微信小程序基础 微信小程序是腾讯推出的一种运行在微信内的轻应用,用户无需下载安装...

    Web白帽子Python入门.txt打包整理.zip

    1. **Python基础知识**:介绍Python编程语言的基本语法、数据类型、控制结构、函数、模块等,这些都是进行任何Python编程的基础。 2. **Web安全基础**:解释Web安全的基本概念,如XSS(跨站脚本攻击)、SQL注入、...

Global site tag (gtag.js) - Google Analytics