现有员工表(employees)和部门表(departments),请编写SQL查询:
找出每个部门中薪资排名前3的员工信息,包括员工姓名、部门名称和薪资。
参考答案:使用窗口函数RANK() OVER(PARTITION BY department_id ORDER BY salary DESC)
假设需要将某个部门的所有员工薪资上调10%,但同时要求如果该部门员工数超过50人,则取消调薪。
请编写一个完整的事务处理语句。
参考答案:使用BEGIN...COMMIT/ROLLBACK结合IF条件判断
某查询语句执行缓慢:SELECT * FROM orders WHERE order_date BETWEEN '2023-01-01' AND '2023-12-31'
请提出至少三种优化方案并说明理由。
参考答案:1.为order_date字段添加索引 2.使用覆盖索引 3.分区表按年份分区
设计一个电商平台的数据库结构,需要包含用户、商品、订单、订单明细等核心表。
请写出主要表的字段设计并说明表之间的关系。
参考答案:注意一对多、多对多关系的处理,合理设置主外键约束