HQL,SQL刷题简单查询,基础,尚硅谷

今天刷SQL简单查询,大家有兴趣可以刷一下

目录

相关表数据:

题目及思路解析:

总结归纳:

知识补充:

关于LIKE操作符/运算符

LIKE其他使用场景包括

LIKE模糊匹配情况


相关表数据:

1、student_info表

2、score_info表

3、course_info表

4、techer_info 表

题目及思路解析:

1、查询姓名中带"冰"的学生名单

select
    *
from student_info
where stu_name like '%冰%';

这里主要考察where查询与like运算符的结合使用

2、查询姓"王"老师的个数

select
    count(*)
from teacher_info
where tea_name like '王%';

这里主要是使用了count()聚合函数

3、检索课程编号为"04"且分数小于60的学生的课程信息,结果按分数降序排列

select
   *
from score_info
where course_id=04 and score<60
order by score desc;

这道题简单条件过滤+order by 聚合函数的使用

4、查询数学成绩不及格的学生和其对应的成绩,按照学号升序排序

select
    s.stu_id,
    s.stu_name,
    t1.score
from student_info s
join ( select
      stu_id,
      score
    from score_info
    where course_id=(select course_info.course_id 
                    from course_info 
                    where course_name ='数学' ) and score < 60)t1 
on t1.stu_id=s.stu_id
order by s.stu_id  ;

这题,使用了简单的Join多表连接,以及嵌套子查询

首先根据题意我们需从student_info表中获取stu_id,stu_name,以及score,但我们需要的是符合题目条件的的信息,我们需要学习了课程为数学的学生成绩,但我们不知道数学的couse_id

因此需要先嵌套从couse_info表获取数学的couse_id,接着筛选分数不及格(<60)的学生信息,最后join上面的student_info表,以student_id为连接条件,最终获取到符合题意的信息。

总结归纳:

上面题目考察了like使用,聚合函数,嵌套子查询等,不过主要是简单的使用

第4题,需要清楚题目需要的数据以及其逻辑顺序

知识补充:

关于LIKE操作符/运算符

like运算符主要使用场景是结合where进行模式匹配(或通配符匹配),通常可配合通配符%(匹配0个或多个任意字符)与_(匹配1个任意字符)

LIKE 其他使用场景包括

·转义字符:在某些情况下,你可能需要匹配包含通配符或特殊字符的字符串。为了实现这 一点,你可以使用转义字符(\)

·结合其他运算符使用:LIKE还可以与其他Hive运算符结合使用,如AND、OR和NOT

·正则表达式匹配:尽管LIKE运算符在Hive中功能有限,但它可以与正则表达式结合使用进 行更复杂的模式匹配。

LIKE 模糊匹配情况

在使用关键字like进行模糊匹配,需要匹配0个或多个任意字符时

·如果是使用select ,则使用 %'

·若使用show tables,databases,founctions, 则使用 ' * '
需要注意的是,LIKE操作符只能用于模糊查询,不能用于精确匹配。此外,使用LIKE操作符时需要注意性能问题,尽量避免使用通配符开头的查询条件,因为这种查询方式可能导致全表扫描,影响查询效率。

相关推荐
初晴~14 分钟前
【Redis分布式锁】高并发场景下秒杀业务的实现思路(集群模式)
java·数据库·redis·分布式·后端·spring·
盖世英雄酱5813619 分钟前
InnoDB 的页分裂和页合并
数据库·后端
YashanDB2 小时前
【YashanDB知识库】XMLAGG方法的兼容
数据库·yashandb·崖山数据库
独行soc2 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍11基于XML的SQL注入(XML-Based SQL Injection)
数据库·安全·web安全·漏洞挖掘·sql注入·hw·xml注入
风间琉璃""3 小时前
bugkctf 渗透测试1超详细版
数据库·web安全·网络安全·渗透测试·内网·安全工具
drebander3 小时前
SQL 实战-巧用 CASE WHEN 实现条件分组与统计
大数据·数据库·sql
IvorySQL3 小时前
IvorySQL 4.0 发布:全面支持 PostgreSQL 17
数据库·postgresql·开源数据库·国产数据库·ivorysql
18号房客3 小时前
高级sql技巧进阶教程
大数据·数据库·数据仓库·sql·mysql·时序数据库·数据库架构
Dawnㅤ3 小时前
使用sql实现将一张表的某些字段数据存到另一种表里
数据库·sql
张声录13 小时前
【ETCD】【实操篇(十二)】分布式系统中的“王者之争”:基于ETCD的Leader选举实战
数据库·etcd