利用sql语句在数据库中创建员工表(Employee)和部门表(department)。 员工表中包含的信息:员工的id,员工的姓名(name),员工的电话号码(phoneNumber),员工的年龄(age)。 部门表包含的信息:部门的id,部门的名称(dept_name)(例如:财务部,销售部等等)。 其中一个员工只能对应一个部门,一个部门可以有多名员工。 (1)利用sql语句向员工表和部门中添加至少三条数据; (2)根据员工的id查询出部门的名称; (3)查询员工表中年龄最大的员工姓名及其所在的部门名称; (4)根据员工id修改员工的电话号码及其所在的部门; (5)根据员工id删除员工信息;
时间: 2023-12-30 14:06:28 浏览: 980
数据库表的使用,通过SQL语句对表的创建,修改,查询操作!
好的,以下是针对你的问题的 SQL 语句:
1. 创建员工表和部门表,插入至少三条数据:
```sql
-- 创建员工表
CREATE TABLE Employee (
id INT PRIMARY KEY,
name VARCHAR(50),
phoneNumber VARCHAR(20),
age INT,
dept_id INT,
FOREIGN KEY (dept_id) REFERENCES Department(id)
);
-- 创建部门表
CREATE TABLE Department (
id INT PRIMARY KEY,
dept_name VARCHAR(50)
);
-- 插入至少三条数据到部门表
INSERT INTO Department (id, dept_name) VALUES
(1, '财务部'),
(2, '销售部'),
(3, '技术部');
-- 插入至少三条数据到员工表
INSERT INTO Employee (id, name, phoneNumber, age, dept_id) VALUES
(1, '张三', '123456789', 28, 1),
(2, '李四', '987654321', 35, 2),
(3, '王五', '135792468', 23, 3);
```
2. 根据员工的 id 查询出部门的名称:
```sql
SELECT dept_name FROM Department
WHERE id = (
SELECT dept_id FROM Employee
WHERE id = [员工id]
);
```
3. 查询员工表中年龄最大的员工姓名及其所在的部门名称:
```sql
SELECT Employee.name, Department.dept_name FROM Employee
INNER JOIN Department ON Employee.dept_id = Department.id
WHERE Employee.age = (
SELECT MAX(age) FROM Employee
);
```
4. 根据员工 id 修改员工的电话号码及其所在的部门:
```sql
UPDATE Employee SET phoneNumber = [新的电话号码], dept_id = [新的部门id]
WHERE id = [员工id];
```
5. 根据员工 id 删除员工信息:
```sql
DELETE FROM Employee WHERE id = [员工id];
```
阅读全文