SQL 常见面试题解析 内容简介 本文介绍并分析了 100 道常见 SQL 面试题,主要分为三个模块:SQL 初级查询、SQL 高级查询以及数据库设计与开发
文 章内容结构如下图所示: 本文主要使用三个示例表:员工表(employee)、部门表(department)和职位表(job)
下面是这些示例表的结构图: 部门表(department),包含部门编号(dept_id)和部门名称(dept_name)字段,主键为部门编号
职位表(job),包含职位编号(job_id)和职位名称(job_title)字段,主键为职位编号
员工表(employee),包含员工编号(emp_id)、员工姓名(emp_name)、性别(sex)、部门编号(dept_id)、经理编 号(manager)、入职日期(hire_date)、职位编号(job_id)、月薪(salary)、奖金(bonus)以及电子邮箱(email)
主键为员工编号,部门编号字段是引用部门表的外键,职位编号字段是引用职位表的外键,经理编号字段是引用员工表自身的 外键
所有示例都可以在 Oracle 12c 和 MySQL 8.0 中通用,除非另有说明
SQL 初级查询
1. 什么是 SQL?SQL 有哪些功能?
答案:SQL 代表结构化查询语言,它是访问关系数据库的通用语言,支持数据的各种增删改查操作。SQL 语句可以分为以下
子类:DQL,数据查询语言这个就是 SELECT 语句,用于查询数据库中的数据和信息
DML,数据操作语言
包括 INSERT、UPDATE、DELETE 和 MERGE 语句,主要用于数据的增加、修改和删除
DDL,数据定义语言
主要包括 CREATE、ALTER 和 DROP 语句,用于定义数据库中的对象,例如表和索引TCL,事务控制语言;主要包括 COMMIT、ROLLBACK 和 SAVEPOINT 语句,用于管理数据库的事务
DCL,数据控制语言
主要包括 GRANT 和 REVOKE 语句,用于控制对象的访问权限
解析:SQL 是一种声明性的编程语言,只需要告诉计算机想要什么内容(what),不需要指定具体怎么实现(how)
通过 几个简单的英文单词,例如 SELECT、INSERT、UPDATE、CREATE、DROP 等,就可以完成大部分的数据操作
2. 如何查看员工表中的姓名和性别?
答案: SELECT emp_name, sex FROM employee;
解析:SQL 使用 SELECT
SQL面试题 100讲
于 2022-10-18 21:31:05 首次发布