在mysql工作台中创建表值函数时出现错误“not valid position,expecting identifier”

kmpatx3s  于 2023-08-02  发布在  Mysql
关注(0)|答案(1)|浏览(178)
Create function select_gender(@gender as varchar(50)) 
returns table
as
return(select * from employee where gender=@gender);

字符串
第一行@gender出现错误(“无效位置”)
这个问题如何排序?

iklwldmw

iklwldmw1#

您提供的函数定义是用SQL Server语法而不是MySQL语法编写的。

DELIMITER //

CREATE PROCEDURE select_gender(IN gender_val VARCHAR(50))
BEGIN
    SELECT *
    FROM employee
    WHERE gender = gender_val;
END //

DELIMITER ;

字符串
在上面的代码中,我们使用存储过程而不是表值函数。该过程接受一个输入参数gender_瓦尔,并根据gender列条件直接返回结果集。
要使用此过程,您可以像这样调用它:

CALL select_gender('Male');

相关问题