当前位置:Gxlcms > mysql > 模糊查询和聚合函数_MySQL

模糊查询和聚合函数_MySQL

时间:2021-07-01 10:21:17 帮助过:36人阅读

1.使用 LIKE、BETWEEN、IN 进行模糊查询

2.使用聚合函数统计和汇总查询信息

在模糊查询中,我们要学习的内容:

10.1.1 通配符

10.1.2 使用 LIKE 进行模糊查询

10.1.3 使用 BETWEEN 在某个范围内进行查询

10.1.4 使用 IN 在列举值内进行查询

通配符

简单地讲,通配符是一类字符,它可以代替一个或多个真正的字符,查找信息时作为替代字符出现。T-SQL 中的通配符必须

与 LIKE 关键字一起使用,以完成特殊的约束或要求。

通配符表

通 配 符 解 释 示 例
- 一个字符 A LIKE 'C_', 则符合条件的 A 如 CS、Cd 等
% 任意长度的字符串 B LIKE 'CO%', 则符合条件的 B 如 CONST、COKE 等
[] 括号中所指定范围内的一个字符 C LIKE '9W0[1-2]', 则符合条件的 C 如 9W01 或 9W02
[^]

不在括号中所指定范围内的任

意一个字符

D LIKE '9W0[^1-2]', 则符合条件的 D 如 9W03 或 9W07 等

使用 LIKE 进行模糊查询

LIKE 运算符用于匹配字符串或字符串的一部分,由于该运算符只用于字符串,所以仅与字符数据类型(如 char 或 varchar 等) 联合使用。在数据更新、删除或者查询的时候,依然可以使用 LIKE 关键字进行匹配查找:

select * from student

where Address like '北京'

使用 BETWEEN 在某个范围内进行查询

使用关键字 BETWEEN 可以查找那些介于两个已知值之间的一组未知值,要实现这种查找,必须知道查找的初值和终值,并且初值要小于终值,初值和终值用 AND 关键字分开。如下:

--查找班级在1-3之间的学生

select * from Student

where GradeId between 1 and 3

使用 IN 在列举值内进行查询

查询的值是指定的某些值之一,可以使用带列举值的 IN 关键字来进行查询。将列举值放在圆括号里,用逗号分开。列如:

--查询地址是北京、上海、厦门的学生

select * from student

where address in('北京','上海','厦门')

在使用聚合函数统计和汇总查询信息的学习中,我们主要学习了四种函数:

10.2.1 SUM()函数

10.2.2 AVG()函数

10.2.3 MAX()函数和 MIN()函数

10.2.4 COUNT()函数

SUM()函数

SUM()函数只能用于数字类型的列,不能够汇总字符、日期等其他数据类型。列如:

--查询全班学生的总成绩

select sum(studentresult) as 全班学生的总分

from result

AVG()函数

AVG()函数也只能用于数字类型的列。例如:

--查询全班学生的平均分

select avg(studentresult) as 全班学生的平均分

from result

MAX()函数和 MIN()函数

MAX()函数是返回值表达式中的最大值,MIN()函数是返回值表达式中的最小值,这两个函数同样都忽略任何空值,并且他们都可以用于数字型、字符串及日期/时间类型的列。对于字符序列,MAX()函数查找排序序列的最大值。而MIN()函数同理,返回排序序列的最小值。例如:

--班级的平均分、最高分和最低分

select AVG(Studentresult) as 平均分,MAX(Studentresult) as 最高分,MIN(Studentresult) AS 最低分

from Result

COUNT()函数

COUNT ()函数返回提供的组或记录集中地计数,COUNT()函数可以用于除去 text、image、ntext以外任何类型的列。另外,也可以使用星号(*)作为COUNT的表达式,使用星号可以不必指定特定的列而计算所有的行数,当对所有的行进行计数时,则包括包含空值得行。例如:

--记录总数

select count(Studentresult) as 总记录数

from result

人气教程排行