模糊查询(like关键字)
例子
-- 把含有“龙”字的 realname 字段搜索出来
select * from user where realname like '%龙%'
格式
SELECT 字段 FROM 表 WHERE 某字段 Like 条件
模糊查询的三种匹配模式
- %:表示任意个或多个字符。可匹配任意类型和长度的字符。
- _:表示任意单个字符。匹配单个任意字符,它常用来限制表达式的字符长度语句:(可以代表一个中文字符)
- 正则表达式(由于博主还没有详细了解,所以这里就不误人子弟了)
- 由MySQL提供的模式匹配的其他类型是使用扩展正则表达式。当你对这类模式进行匹配测试时,使用REGEXP和NOT REGEXP操作符(或RLIKE和NOT RLIKE,它们是同义词)。
Null 函数
Null函数的三种用法
isnull(exper)
判断exper是否为空,是则返回1,否则返回0ifnull(exper1,exper2)
判断exper1是否为空,是则用exper2代替nullif(exper1,exper2)
如果expr1= expr2 成立,那么返回值为NULL,否则返回值为 expr1。
分组查询(GROUP BY)
介绍
- GROUP BY 语句用于结合聚合函数,根据一个或多个列对结果集进行分组。分组是使用数据库时必须处理的最重要任务之一。 要将行分组,请使用GROUP BY子句。GROUP BY子句是SELECT语句的可选子句,它根据指定列中的匹配值将行组合成组,每组返回一行。
- GROUP BY和聚合函数,一起使用,可以统计出某个,或者某些字段在一个分组中的最大值、最小值、平均值
语法
SELECT
column1,
column2,
聚合函数(column3)
FROM
table1
GROUP BY
column1,
column2;
聚合函数
-
MySQL 5.7中的聚合函数
除非另有说明,否则组合函数会忽略NULL值
-
函数的详解
AVG() 平均数
AVG([DISTINCT] expr)
- DISTINCT则用于返回expr的不同值的平均值。
- 如果没有匹配的行,AVG()返回null。
COUNT()
COUNT(expr)
-
返回SELECT语句检索的行中expr的非NULL值的计数。
-
返回结果是BIGINT值。
-
如果没有匹配的行,count()返回0.
-
count(*)有些不同,它返回取回的行的行数的计数,无论它们是否包含NULL值。