2014-01-22 1 views
3

나는 INSERTUPDATE 쿼리와 함께 MySQL의 REPLACE을 사용할 수 있다는 것을 알고 있지만, 선언 된 변수 내에서 문자열을 바꾸려면 어떻게 사용해야합니까? MySQL REPLACE와 변수를 사용하는 방법은 무엇입니까?

내가 노력하고있어 코드이지만, 그것은 작동하지 않습니다 내가 너무 현재 선언 된 변수를 작업 할 수 방법

DECLARE genre_string VARCHAR(255); 

SET genre_string = 'drama, thriller'; 

SET genre_string = REPLACE(genre_string,'drama','Drama'); 

SELECT genre_string; 

? 나를 위해

+0

당신은 당신이 그것을 사용할 때 변수 앞에 @를 추가 할 필요가 없습니다? –

+0

나는 당신이하려고하는 것을 얻지 만, 나는 왜 힘든 시간을 이해하고있다. 때때로 해결책은 증상을 치료하는 것이 아니라 근본적인 문제를 해결하는 것입니다. 왜 이럴 필요가 있니? – kba

+0

일부 데이터를 가져오고, 문자열을 다른 곳에 삽입하기 전에 문자열을 약간 지 웁니다. 가져온 데이터는 Excel 파일에서 가져오고 있습니다. 예, 거기서 정리할 수 있지만 가져 오기가 자주 이루어지기 때문에 이 SP로 청소하는 것이 더 빠를 것입니다. – Ahmad

답변

2

아래 작품 :

DECLARE @genre_string VARCHAR(255); 

SET @genre_string = 'drama, thriller'; 

SET @genre_string = REPLACE(@genre_string,'drama','Drama'); 

SELECT @genre_string 
+1

'@'은 used-defined 변수로 선언되어서는 안됩니다. 마지막 세 줄은 홀로 작동합니다. 지역 변수 만 선언하면됩니다. – kba

+0

문제를 일으키는'REPLACE'에서'genre_string ='을 사용하는 것을 잊었습니다. :) – Ahmad

관련 문제