数据库sql语句练习(较难)

简介: 数据库sql语句练习(较难)

例题:关系较复杂

f4825e8e85dc4b9aa37bed63fdda840b.png747182779add4c7c98344d4c896cf783.png


 personinstory表                                 love表

7716e3aa6bac4894a323ecbf90ea0557.pngdff3e3a6535c448188b76827c2cc8dde.png


先按照性别,然后按照美丽程度由高往低的顺序, 列出所有人物的名字,性别和美丽程度


select Person.pname 名字,Person.psex性别,Person.pbeauty美丽程度
from Person
order by psex,pbeauty desc


先按照人名,然后按照被爱的人名的顺序,列出 所有爱情关系的施爱人,被爱人,爱情指数,受伤指 


select p1.pname 施爱人,p2.pname 被爱人,love.love_index爱情指数,love.iniury_index受伤指数
from Person p1,Person p2,love
where p1.pid =love.pid
and p2.pid=love.lovepid
order by pl.pname,p2.pname


哪些男人没有得到任何一个女人的爱?


select Person.pname没有得到爱的男人
from Person
where Person.psex='男'
and Personpid not in
(select love.lovepid
from love)


哪些男人至少爱着2个女人?


select Person.pname 至少爱着两个女人的男人
from love,Person
group by love.pid,Person.pname,Person.pid
having count(love.pid)>1
and Person.pid=love.pid
and love.pid in(
select Person.pid
from Person
where Person.psex='男')


哪个人得到了最多人的爱情?


select Person.pname 得到了最多爱的人
from Person
where Person.pid=(
select top(1) love.lovepid
from love
group by love.lovepid
order by count(*) desc)


列出所有人的姓名,以及爱他的人的数量


select Person.pname,
(select count(*) from love where love.pid=Person.pid) 爱他的人的数量
from Person
order by 2 desc


8eea9c2630f34f64841d3bb3a291db41.png


列出男人的追求者的平均美貌程度


select p1.pname 被追求者姓名,avg(p2.pbeauty) '平均美貌程度'
from love,Person p1,Person p2
where p1.pid=love.lovepid and p1.psex=’男’and p2.pid=love. pid
group by pl.pnane


列出追求者的平均爱情指数最低的男人的姓名,及其追求者的姓名和爱情指数


select p1.pname 追求者的平均爱情指数最低的男人,p2.pname 追求者,love.love_index 追求者的爱情指数
from Person p1,Person p2,love
where p1.pid=love.lovepid
and p2.pid=love.pid and p2.pid in(
select top 1 love.lovepid
from love,Person
where Person.psex='男'
and love.lovepid=Person.pid
group by love.lovepid
order by avg(love.love_index)
)
目录
相关文章
|
3天前
|
SQL Oracle 数据库
使用访问指导(SQL Access Advisor)优化数据库业务负载
本文介绍了Oracle的SQL访问指导(SQL Access Advisor)的应用场景及其使用方法。访问指导通过分析给定的工作负载,提供索引、物化视图和分区等方面的优化建议,帮助DBA提升数据库性能。具体步骤包括创建访问指导任务、创建工作负载、连接工作负载至访问指导、设置任务参数、运行访问指导、查看和应用优化建议。访问指导不仅针对单条SQL语句,还能综合考虑多条SQL语句的优化效果,为DBA提供全面的决策支持。
24 11
|
1月前
|
SQL 缓存 监控
大厂面试高频:4 大性能优化策略(数据库、SQL、JVM等)
本文详细解析了数据库、缓存、异步处理和Web性能优化四大策略,系统性能优化必知必备,大厂面试高频。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
大厂面试高频:4 大性能优化策略(数据库、SQL、JVM等)
|
17天前
|
SQL 关系型数据库 MySQL
MySQL导入.sql文件后数据库乱码问题
本文分析了导入.sql文件后数据库备注出现乱码的原因,包括字符集不匹配、备注内容编码问题及MySQL版本或配置问题,并提供了详细的解决步骤,如检查和统一字符集设置、修改客户端连接方式、检查MySQL配置等,确保导入过程顺利。
|
16天前
|
SQL 监控 安全
SQL Servers审核提高数据库安全性
SQL Server审核是一种追踪和审查SQL Server上所有活动的机制,旨在检测潜在威胁和漏洞,监控服务器设置的更改。审核日志记录安全问题和数据泄露的详细信息,帮助管理员追踪数据库中的特定活动,确保数据安全和合规性。SQL Server审核分为服务器级和数据库级,涵盖登录、配置变更和数据操作等事件。审核工具如EventLog Analyzer提供实时监控和即时告警,帮助快速响应安全事件。
|
27天前
|
SQL 关系型数据库 MySQL
体验使用DAS实现数据库SQL优化,完成任务可得羊羔绒加厚坐垫!
本实验介绍如何通过数据库自治服务DAS对RDS MySQL高可用实例进行SQL优化,包含购买RDS实例并创建数据库、数据导入、生成并优化慢SQL、执行优化后的SQL语句等实验步骤。完成任务,即可领取羊羔绒加厚坐垫,限量500个,先到先得。
145 12
|
23天前
|
SQL 存储 BI
gbase 8a 数据库 SQL合并类优化——不同数据统计周期合并为一条SQL语句
gbase 8a 数据库 SQL合并类优化——不同数据统计周期合并为一条SQL语句
|
23天前
|
SQL 数据库
gbase 8a 数据库 SQL优化案例-关联顺序优化
gbase 8a 数据库 SQL优化案例-关联顺序优化
|
28天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第16天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括配置系统源、安装 SQL Server 2019 软件包以及数据库初始化,确保 SQL Server 正常运行。
|
1月前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第8天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统准备、配置安装源、安装 SQL Server 软件包、运行安装程序、初始化数据库以及配置远程连接。通过这些步骤,您可以顺利地在 CentOS 系统上部署和使用 SQL Server 2019。
|
1月前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第7天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统要求检查与准备、配置安装源、安装 SQL Server 2019、配置 SQL Server 以及数据库初始化(可选)。通过这些步骤,你可以成功安装并初步配置 SQL Server 2019,进行简单的数据库操作。
下一篇
DataWorks