mysql创建函数根据输入的参数对mysql数据表emp进行查询,参数为部门编号则查询部门所有人员信息,参数为岗位则查询岗位所有人员信息,参数为入职时间则查询早于该入职时间的所有人员
时间: 2023-04-27 11:05:53 浏览: 115
在 MySQL 中创建函数可以使用 CREATE FUNCTION 语句,具体实现如下:
```
DELIMITER $$
CREATE FUNCTION query_emp_info(IN input_param VARCHAR(255))
RETURNS VARCHAR(255)
BEGIN
DECLARE query_sql VARCHAR(255);
IF input_param = 'dept_no' THEN
SET query_sql = CONCAT('SELECT * FROM emp WHERE dept_no = ', input_param);
ELSEIF input_param = 'job' THEN
SET query_sql = CONCAT('SELECT * FROM emp WHERE job = ', input_param);
ELSEIF input_param = 'hire_date' THEN
SET query_sql = CONCAT('SELECT * FROM emp WHERE hire_date < ', input_param);
END IF;
RETURN query_sql;
END $$
DELIMITER ;
```
这个函数接受一个参数 input_param,根据 input_param 的值来确定执行不同的查询语句,返回查询结果。
使用这个函数的时候,可以这样调用:
```
SELECT query_emp_info('dept_no');
SELECT query_emp_info('job');
SELECT query_emp_info('hire_date');
```
注意:这里的函数只是返回查询语句,需要再执行一次才能真正的查询数据。
阅读全文