常见sql面试题

昨天朋友发来一个面试题,心血来潮自己写了下,废话不多说,直接上图和答案

这里是2张表,A表=studenta,学号=student,name=姓名,年龄=age

B表=scoreb 流水号=id ,课程=course,学号=student,分数=score

1.查询成绩大于80分,显示字段:学科,姓名,年龄,分数;

SELECT

a.NAME,

a.age,

b.course,

b.score

FROM

studenta a

INNER JOIN scoreb b ON a.student = b.student

WHERE

b.score > 80

2.查询至少2门以上成绩大于80分的学员,显示字段,学号,姓名;

SELECT

a.student,

a.`name`

FROM

studenta a

JOIN scoreb b ON a.student = b.student

WHERE

b.score > 80

GROUP BY

a.student,

a.NAME

HAVING

COUNT( DISTINCT b.course ) >= 2;

3.学员表增加一个字段性别,并初始化已有学员的性别;

-- 步骤1:修改表结构,向表a中添加性别字段

ALTER TABLE studenta

ADD COLUMN sex VARCHAR(10);

-- 步骤2:更新已有数据,初始化性别信息

-- 假设学号为1的同学性别为男性,学号为2的同学性别为女性

UPDATE studenta SET sex = '男' WHERE student = 1;

UPDATE studenta SET sex = '女' WHERE student = 2;

-- 根据实际情况依次类推

4.5.6比较简单我就不往下写了

相关推荐
ben9518chen4 分钟前
数据库系统概述
数据库
花间相见10 分钟前
【计算基础|MySQL03】【上手】多表查询与聚合
数据库·mysql
小羊没烦恼!22 分钟前
T-SQL查询高级—SQL Server索引中的碎片和填充因子
开发语言·前端·javascript·数据库·后端·python·web安全
the局外人24 分钟前
学会 SQLAlchemy 搭建 Python 与 MySQL 之间的数据访问桥梁 🚀
后端·python·sql
lv__pf34 分钟前
redis【TL redis(6)】
数据库·redis·缓存
冰暮流星38 分钟前
mysql索引失效的情形
数据库·笔记·sql·mysql
IvorySQL39 分钟前
IvorySQL 校园行走进山东大学:从 PostgreSQL 到 AI,连接技术实践与职业成长
数据库·人工智能·postgresql
广州智造40 分钟前
Radioss 材料本构的二次开发
运维·数据库·自动化·建模·后处理·前处理
闲云自留地1 小时前
从零造一台 Ubuntu 24.04:虚拟机、装系统、配 IP 到 root 远程登录一篇通
数据库·tcp/ip·ubuntu
Allen-Steven1 小时前
SQL查询专项:从完整书写到综合判断
运维·服务器·数据库