MYSQL 创建存储过程proc_guozilong,根据输入的sid,查询该商店经理数和员工数,然后显示店内员工的姓名、薪水、职位和所在的商店的店名: 调用存储过程,显示编号2102001的商店
时间: 2024-03-16 07:42:31 浏览: 154
mysql 存储过程详解
好的,以下是创建存储过程 proc_guozilong 的 SQL 代码:
```
CREATE PROCEDURE proc_guozilong(IN sid INT)
BEGIN
SELECT COUNT(CASE WHEN job_title = '经理' THEN 1 ELSE NULL END) AS '经理数',
COUNT(CASE WHEN job_title = '员工' THEN 1 ELSE NULL END) AS '员工数',
emp_name, salary, job_title, store_name
FROM employees e
INNER JOIN stores s ON e.store_id = s.store_id
WHERE s.store_id = sid
GROUP BY emp_name, salary, job_title, store_name;
END
```
然后,以下是调用存储过程以显示编号为 2102001 的商店的员工信息的 SQL 代码:
```
CALL proc_guozilong(2102001);
```
这将会显示编号为 2102001 的商店中所有员工的姓名、薪水、职位和所在的商店的店名,以及该商店的经理数和员工数。注意,这里的存储过程假设员工表为 employees,商店表为 stores,且它们之间存在 store_id 列以关联两个表。
阅读全文