前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MySQL常见基础用法补充

MySQL常见基础用法补充

作者头像
用户7569543
发布2021-12-07 14:23:35
6120
发布2021-12-07 14:23:35
举报

上节课给大家介绍了MySQL中常见的基础用法 MySQL常用基础用法集锦,这节课我们准备对上节课的内容做个补充,本期内容我们想跟大家聊聊MySQL模糊匹配关键字LIKE以及CASE WHEN的基本用法。

1、模糊匹配LIKE

在 MySQL 中,LIKE 关键字主要用于搜索匹配字段中的指定内容。其语法格式如下:

代码语言:javascript
复制
[NOT] LIKE  '字符串'

其中:

  • NOT :可选参数,表示字段中的内容与指定的字符串不匹配时满足条件。
  • 字符串:指定用来匹配的字符串。“字符串”可以是一个完整的字符串,也可以包含 通配符。

注:通配符是一种特殊语句,主要用来模糊查询。当不知道真正字符或者懒得输入完整名称时,可以使用通配符来代替一个或多个真正的字符串。

LIKE 关键字支持百分号“%”和下划线“_”通配符。两者的区别是,“%”能代表任何长度的字符串,字符串的长度可以为 0。“_”只能代表单个字符,字符的长度不能为 0。“%”是 MySQL 中最常用的通配符,下面我们将专门针对“%”通配符进行具体讲解。

1)在titanic乘客信息表中,查找所有以“Green”开头的乘客姓名。

代码语言:javascript
复制
select name from titanic where name like "Green%";

其输出结果如下

可以看到,结果把所有以“Green”开头的乘客姓名都找到了,其中包括Greenfield、Green、Greenberg三种。

2)在titanic乘客信息表中,查找所有姓名中包含Miss的乘客姓名。

代码语言:javascript
复制
select name from titanic
where name like "%Miss%";

其输出结果如下

可以看到,结果把所有乘客姓名中包含“Miss的乘客都找出来了,其中包含姓名以“Miss”开头、以“Miss”结尾或中间包含“Miss”几种情况。

3)在titanic表中,查找所有以“Mr”结尾的乘客姓名。

代码语言:javascript
复制
select name from titanic
where name like "%Mr";

其输出结果如下

可以看到,结果中确实把所有姓名以“Mr”结尾的乘客都找出来了。

2、CASE WHEN

在MySQL中,一般来说CASE WHEN 用法算是进阶用法,但在日常工作中,它也是非常常用的,其语法格式如下:

代码语言:javascript
复制
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
WHEN conditionN THEN resultN
ELSE result
END;

CASE WHEN 经常应用在分组查询场景中。例如,在titanic乘客信息表中,查询乘客id、姓名,当乘客姓名中包含“Mr”时,以“先生”表示尊称;当乘客姓名中包含“Miss”时,以“小姐”表示尊称。

代码语言:javascript
复制
select PassengerId,name
,case when name like "%Mr%" then "先生"
when name like "%Miss%" then "小姐" end resp_name
from titanic ;

其输出结果如下

同时,我们想分组统计尊称中各个取值的人数情况。

代码语言:javascript
复制
select resp_name,count(PassengerId)
from
    ( select PassengerId,NAME,case when name like "%Mr%" then "先生" 
when name like "%Miss%" then "小姐" end resp_name
from titanic ) a 
GROUP by resp_name;

其结果如下

OK,以上就是关于模糊匹配关键字LIKE以及CASE WHEN的基本用法。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 多赞云数据 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档