mysql存储过程,传入一个参数为什么查询出来了两条数据?

DELIMITER $
CREATE PROCEDURE test(IN des VARCHAR(100))
BEGIN
SELECT * FROM t_ep_base_statistics WHERE des = des ;
END $
DELIMITER ;

CALL test('水环境质量')

表内容:

img

调用存储过程查询出来结果

img


应该是一条数据才对呀,这是什么原因

自相关的笛卡尔积?

这条件相当于没条件,跟where 1=1 差不多

你把变量换个名字,这不跟列名一样了吗

存储过程变量名要在前面加一个@