2014-10-11 36 views
1

這樣的IM創造接受一個參數namee並返回其名稱是namee怎麼做模式匹配的變量在MySQL

create procedure search_res(IN namee varchar(50)) 
    begin 
    select * from usr where name like %namee%; 
    end 

但即時得到以下錯誤的子串的所有用戶的過程。 #1064 - 您的SQL語法錯誤;檢查與你的MySQL服務器版本相對應的手冊,在'%namee%;'附近使用正確的語法。結束'在第3行。 什麼是正確的語法?

+0

難道你要報價添加到' '%namee%''? – proPhet 2014-10-11 14:15:34

+0

添加引號將與namee匹配,而不是namee中的值。 – 2014-10-11 14:20:38

+0

你可以添加'usr'表格的示例數據 – Ram 2014-10-11 15:07:54

回答

1

使用CONCAT功能

select * from usr where name like CONCAT('%',namee,'%'); 
+0

謝謝你的工作:) – 2014-10-11 20:14:05