我怎样才能使用mysql实现这个概念?

时间:2010-06-16 09:21:30

标签: mysql

我的目标是制作一个带文本的程序 - 可以包含成语 - 作为输入,输出应该是用替换每个成语后的文本,这意味着它们是一个名为“idioms”的表,它有两列:第一个是成语,叫做“成语”,第二个是成语意思,叫做“成语”,这是我的工作到现在为止:

delimiter //
create procedure idioms_search (in input text, out output text )

begin

   WHILE EXISTS (SELECT idiom  FROM idioms  WHERE input LIKE CONCAT('%',@idiom,'%');)  

       SELECT REPLACE (@input,@idiom,@idiomMeaning ) INTO output;

end while;

end

//

delimiter ;

但是之前的代码包含错误,有任何建议吗?

1 个答案:

答案 0 :(得分:0)

在mysql中存在没有调用的循环。循环编码类似于下面给出的例子

while x<=5 do
select x;
end while;`

尝试使用游标。按照下面的说明重新选择您的选择语句,然后尝试

SELECT idiom  FROM idioms  WHERE idiom like concat('%',input,'%');