无法使用存储过程使用%mysql过滤行

时间:2015-03-11 00:07:59

标签: mysql stored-procedures

我的想法是使用%和IN变量来过滤行,我正在调用此过程,但它不会过滤行。例如: 如果用户键入09,则应显示带有09 ...的所有行。我也试过使用concat但也不能过滤。我很感激你能给我的任何帮助。

这是程序

delimiter //
create procedure p (in cedula1 varchar(10))
begin
    select * from view_pacientes
-- THIS PART IS WRONG BUT I DONT KNOW HOW TO CORRECT IT TO WORK PROPERLY.
    where cedula1+"%" like cedula;

end//

1 个答案:

答案 0 :(得分:2)

它认为这是你想要的MySQL语法:

select *
from view_pacientes
where cedula like concat(cedula1, '%') ;

当你在MySQL中定义一个存储过程时,我建议你在你的参数前面添加一些特殊的东西。我的偏好是in_out_用于"在"和" out"参数。