【2019-2020春学期】数据库作业6:SQL练习3 - SELECT(单表查询)

这篇博客主要介绍了SQL中的SELECT语句用于单表查询的各种操作,包括字符匹配(LIKE, %, _),空值查询(IS NULL),多重条件(AND, OR),排序(ORDER BY),以及聚集函数(COUNT, SUM, AVG, MAX, MIN)。通过实例讲解了如何查询特定学生信息、按条件筛选、分组和聚合等操作,并强调了WHERE子句与HAVING子句的区别。博客作者通过实践巩固了数据库课程的知识,并提醒读者注意细节问题。" 86742247,7445076,微信小程序实现左滑菜单及拖动浮标功能,"['小程序', '左滑删除功能', '拖拽功能', '自定义菜单', '交互设计']
摘要由CSDN通过智能技术生成

接作业五的内容!!!!!

SELECT

4、字符匹配
谓词LIKE可以用来进行字符串的匹配。

[NOT] LIKE<匹配串>[ESCAPE '<换码字符>']

<匹配串>可以是一个完整的字符串,也可以含有通配符%和_。其中:
·%(百分号)代表任意长度(长度也可以为0)的字符串。例如a%b表示以a开头,以b结尾的任意长度的字符串。
·_(下横线)代表着任意单个字符。例如a_b表示以a开头,以b结尾的长度为3的任意字符串。
例3.29
查询学号为201215121的学生的详细情况。

SELECT *
FROM Student
WHERE Sno LIKE '201215121';

注意:这里的LIKE相当于等于的意思,如果LIKE后面的匹配串中不含通配符,则可以用=(等于号)运算符取代LIKE谓词,用!=或<>(不等于)运算符取代NOT LIKE谓词。
例3.30
查询所有姓刘的学生的姓名、学号和性别。

SELECT Sname,Sno,Ssex
FROM Student
WHERE Sname LIKE '刘%';

例3.31
查询姓“欧阳”且全名为三个汉字的学生的姓名。

SELECT Sname,Sno,Ssex
FROM Student
WHERE Sname LIKE '欧阳__';

注意:数据库字符集为ASCII时一个汉字需要两个__;当字符集为GBK时只需要一个_.在我的电脑MySQL里应该是GBK字符集,一个汉字只需要一个_
例3.32
查询名字中第二个为“阳”的学生的姓名和学号。

SELECT Sname,Sno
FROM Student
WHERE Sname LIKE '_阳%';

例3.33
查询所有不姓刘的学生的姓名、学号和性别。

SELECT Sname,Sno,Ssex
FROM Student
WHERE Sname NOT LIKE '刘%';

如果用户要查询的字符串本身就含有通配符%或_,这时就要使用ESCAPE '<换码字符>'短语对通配符进行转义了。
例3.34
查询DB_Design课程的课程号和学分。

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值