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

目录
相关文章
|
1月前
|
关系型数据库 MySQL
mysql基础教程
mysql基础教程
15 0
|
1月前
|
SQL 存储 关系型数据库
MySQL基础 从入门到瑞克五代
MySQL基础 从入门到瑞克五代
|
11月前
|
SQL 存储 Oracle
Mysql基础教程
Mysql基础教程
87 1
|
SQL 存储 关系型数据库
MySQL基础学习(二)
指令通过客户端命令终端发出,数据库管理系统中通过mysqld.exe监听端口接收命令,数据库管理系统把按指令获得的信息返回去,最后客户端把返回来的信息显示出来
108 0
MySQL基础学习(二)
|
SQL Oracle 关系型数据库
SQL基础入门
MySQL是一个关系型数据库管理系统 前世:瑞典MySQLAB公司 今生:属于Oracle旗下产品 MySQL是最好的RDBMS(Relational Database Management System,关系数据库管理系统)应用软件之一。 开软的数据库软件~ 体积小、速度快、总体拥有成本低,招人成本较低,所有人必须会 中小型网站、或者大型网站,集群! SQL 是一种操作数据库的语言,包括创建数据库、删除数据库、查询记录、修改记录、添加字段等。SQL 虽然是一种被 ANSI 标准化的语言,但是它有很多不同的实现版本。
SQL基础入门
|
SQL 存储 Oracle
MySQL基础入门
要想了解MySQL,我们就要先知道数据库的相关概念。
MySQL基础入门
|
SQL 关系型数据库 MySQL
MySQL基础教程
MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
281 0
|
SQL
SQL基础入门-7
SQL基础入门-7
96 0
|
SQL 关系型数据库 数据库
SQL基础入门-8
SQL基础入门-8
133 0
|
SQL 存储 数据库
SQL基础入门-6
SQL基础入门-6
113 0