资源描述
2026年数据库(MySQL应用)考题及答案
(考试时间:90分钟 满分100分)
班级______ 姓名______
第I卷(选择题 共30分)
(总共6题,每题5分,每题只有一个正确答案,请将正确答案填写在题后的括号内)
w1. 以下关于MySQL数据库中创建表的语句,正确的是( )
A. CREATE TABLE my_table (id INT, name VARCHAR(50));
B. CREATE DATABASE my_table (id INT, name VARCHAR(50));
C. INSERT TABLE my_table (id INT, name VARCHAR(50));
D. UPDATE TABLE my_table (id INT, name VARCHAR(50));
w2. 在MySQL中,要查询一个表中所有记录,使用的SQL语句是( )
A. SELECT FROM table_name;
B. SHOW FROM table_name;
C. DELETE FROM table_name;
D. UPDATE FROM table_name;
w3. 若要给MySQL数据库表中的某一列添加唯一约束,应使用( )
A. PRIMARY KEY
B. UNIQUE
C. FOREIGN KEY
D. CHECK
w4. 以下哪种数据类型适合存储日期和时间( )
A. INT
B. VARCHAR
C. DATE
D. BOOLEAN
w5. 在MySQL中,修改表结构的语句是( )
A. ALTER TABLE
B. UPDATE TABLE
C. DELETE TABLE
D. CREATE TABLE
w6. 要删除MySQL数据库中的一个表,使用的语句是( )
A. DELETE TABLE table_name;
B. DROP TABLE table_name;
C. REMOVE TABLE table_name;
D. ERASE TABLE table_name;
第II卷(非选择题 共70分)
w7. (10分)简述在MySQL中如何创建一个包含多个字段的表,每个字段具有不同的数据类型。
w8. (15分)写出SQL语句实现:从一个名为“students ”的表中查询出年龄大于20岁的学生的姓名和年龄。
w9. (15分)现有一个“orders ”表记录订单信息,包含订单号、客户ID、订单金额等字段。请用SQL语句统计每个客户的总订单金额,并按总金额降序排列。
w10. (20分)材料:在一个电商数据库中,有“products ”表存储商品信息,“orders ”表存储订单信息,“order_items ”表存储订单明细,关联关系如下:“orders ”表的订单号关联“order_items ”表的订单号,“order_items ”表的商品ID关联“products ”表的商品ID。
问题:请写出SQL语句查询出所有订单中包含商品名称为“手机”的订单号和客户姓名。假设“orders ”表中有客户姓名字段“customer_name ”。
w11. (20分)材料:某公司数据库中有“employees ”表存储员工信息,包含员工ID、姓名、部门、入职时间等字段,“departments ”表存储部门信息,包含部门ID、部门名称等字段,“employees ”表的部门ID关联“departments ”表的部门ID。
问题:请写出SQL语句查询出每个部门的平均入职时间,并按平均入职时间升序排列。
答案:
w1. A
w2. A
w3. B
w4. C
w5. A
w6. B
w7. 使用CREATE TABLE语句,例如CREATE TABLE my_table (id INT, name VARCHAR(50), age DATE); 其中id为整数类型,name为可变长度字符串类型,age为日期类型。
w8. SELECT name, age FROM students WHERE age > 20;
w9. SELECT customer_id, SUM(order_amount) AS total_amount FROM orders GROUP BY customer_id ORDER BY total_amount DESC;
w10. SELECT o.order_id, o.customer_name FROM orders o JOIN order_items oi ON o.order_id = oi.order_id JOIN products p ON oi.product_id = p.product_id WHERE p.product_name = '手机';
w11. SELECT d.department_name, AVG(e.hire_date) AS avg_hire_date FROM employees e JOIN departments d ON e.department_id = d.department_id GROUP BY d.department_name ORDER BY avg_hire_date ASC;
展开阅读全文