SQL基础入门-8

简介: SQL基础入门-8
  1. SQL函数说明

SQL函数说明

  1. 使用AVG()函数。

AVG()函数返回数值列的平均值。AVG()语法如下。

SELECT AVG(column_name) FROM table_name

SELECT AVG(column_name) FROM table_name;
a. 执行如下SQL语句,在Test数据库中创建数据表access_log。

CREATE TABLE access_log (
aid int(11) NOT NULL AUTO_INCREMENT,
site_id int(11) NOT NULL DEFAULT '0' COMMENT '网站id',
count int(11) NOT NULL DEFAULT '0' COMMENT '访问次数',
date date NOT NULL,
PRIMARY KEY (aid)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
b. 执行如下SQL语句,向数据表access_log插入数据。

INSERT INTO access_log VALUES ('1', '1', '45', '2016-05-10'), ('2', '3', '100', '2016-05-13'), ('3', '1', '230', '2016-05-14'), ('4', '2', '10', '2016-05-14'), ('5', '5', '205', '2016-05-14'), ('6', '4', '13', '2016-05-15'), ('7', '3', '220', '2016-05-15'), ('8', '5', '545', '2016-05-16'), ('9', '3', '201', '2016-05-17');
c. 执行如下SQL语句,从access_log数据表的count列获取平均值。

SELECT AVG(count) AS CountAverage FROM access_log;
返回结果如下。

  1. 使用COUNT()函数 。

COUNT()函数返回匹配指定条件的行数。COUNT()函数有三种语法,如下所示。

COUNT(column_name)语法 :COUNT(column_name)函数返回指定列的值的数目(NULL不计入)。

SELECT COUNT(column_name) FROM table_name;
COUNT() 语法 COUNT() :函数返回表中的记录数。

SELECT COUNT(*) FROM table_name;
COUNT(DISTINCT column_name)语法 :COUNT(DISTINCT column_name)函数返回指定列的不同值的数目 。

SELECT COUNT(DISTINCT column_name) FROM table_name;
测试方法如下:

a. 执行如下SQL语句,计算access_log数据表中site_id=3的总访问量。

SELECT COUNT(count) AS nums FROM access_log WHERE site_id=3;
返回结果如下。

b. 执行如下SQL语句,计算access_log数据表中总记录数。

SELECT COUNT(*) AS nums FROM access_log;
返回结果如下。

c. 执行如下SQL语句,计算access_log数据表中不同site_id的记录数。

SELECT COUNT(DISTINCT site_id) AS nums FROM access_log;
返回结果如下。

  1. 使用MAX()函数 。

MAX()函数返回指定列的最大值。MAX()语法 如下。

SELECT MAX(column_name) FROM table_name;
执行如下SQL语句,获取web数据表中rank列的最大值。

SELECT MAX(rank) AS max_rank FROM web;

  1. 使用MIN()函数 。

MIN()函数返回指定列的最小值。MIN()语法 如下。

SELECT MIN(column_name) FROM table_name;
执行如下SQL语句,获取web数据表中rank列的最小值。

SELECT MIN(rank) AS min_rank FROM web;
返回结果如下。

  1. 使用SUM()函数 。

SUM()函数返回数值列的总数。SUM()语法 如下。

SELECT SUM(column_name) FROM table_name。
执行如下SQL语句,获取access_log数据表的count字段的总数。

SELECT SUM(count) AS nums FROM access_log;

  1. 使用GROUP BY语句。

GROUP BY语句用于结合聚合函数,根据一个或多个列对结果集进行分组。GROUP BY语法如下。

SELECT column_name, aggregate_function(column_name)

FROM table_name
WHERE column_name operator value

GROUP BY column_name;
执行如下SQL语句,获取access_log数据表各个site_id的访问量。

SELECT site_id, SUM(access_log.count) AS nums
FROM access_log GROUP BY site_id;

  1. 使用EXISTS运算符。

EXISTS运算符用于判断查询子句是否有记录,如果有一条或多条记录存在返回 True,否则返回False。EXISTS语法 如下。

SELECT column_name(s)

FROM table_name

WHERE EXISTS

(SELECT column_name FROM table_name WHERE condition);
执行如下SQL语句,查找查找count字段大于200的网站是否存在。

SELECT web.name, web.url
FROM web

目录
相关文章
|
设计模式 监控 Java
深入浅出 Spring:核心概念和基本用法详解
深入浅出 Spring:核心概念和基本用法详解
278 0
|
安全 C++
【自定义类型:结构体,枚举,联合】内存对齐的原理和原因
【自定义类型:结构体,枚举,联合】内存对齐的原理和原因
139 0
|
7月前
|
Dart 网络协议 调度
番外·卓伊凡参加 [2025年2月HDD·鸿蒙赋能交流会·成都站] 线下活动的心得体会-优雅草卓伊凡
番外·卓伊凡参加 [2025年2月HDD·鸿蒙赋能交流会·成都站] 线下活动的心得体会-优雅草卓伊凡
125 3
番外·卓伊凡参加 [2025年2月HDD·鸿蒙赋能交流会·成都站] 线下活动的心得体会-优雅草卓伊凡
|
算法 程序员 开发者
代码之舞:编程艺术与实践的交响
在数字化世界的舞台上,编程不仅是技术的展现,更是艺术的创作。本文将带领读者穿梭于代码的行间,探索那些隐藏在逻辑严谨性背后的创造性思维。从初学者的困惑到资深开发者的洞见,我们一同见证编程如何从一项技能升华为一种艺术形式,以及这一过程对个人成长和问题解决能力的影响。
90 4
|
JavaScript 前端开发 程序员
TypeScript 类
TypeScript 类
|
弹性计算 运维 Linux
ECS多场景迁移上云最佳实践
阿里云弹性计算团队十三位产品专家和技术专家共同分享云上运维深度实践,详细阐述如何利用CloudOps工具实现运维提效、弹性降本。
687 0
|
人工智能 供应链 搜索推荐
给大家隆重介绍一下“瓴羊One”!
给大家隆重介绍一下“瓴羊One”!
549 0
|
运维 监控 Serverless
Serverless 应用引擎产品使用合集之函数没有绑定自定义域名,如何在公网访问该函数
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
JavaScript
给原始数据类型加属性和方法为什么不会报错?包装类——阿里面试题
给原始数据类型加属性和方法为什么不会报错?包装类——阿里面试题
|
JavaScript 数据库
关系数据库:关系数据结构基础与概念解析
关系数据库:关系数据结构基础与概念解析
140 1