2014-12-26 3 views
1

mysql에서 행의 일부를 삭제하고 싶습니다. 이 같은 :데이터베이스에서 일부 행 삭제 (데이터베이스 행 집합의 값)

내 행 : 1,2,3,4

내가 만들고 싶어 그것을 : 1,2,3

내가 어떻게 할 수 있습니까?

나는이 코드로 할 수 있다는 것을 알고 있지만 더 좋은 방법이 있습니까? 보안을 위해

UPDATE Table SET message = REPLACE(message, ",4", "") WHERE id = 1;

+0

값 1,2,3,4가 하나의 열에 올바르게 있습니까? –

+0

u 업데이트 열 (예 : UPDATE 테이블 SET message = "1,2,3"WHERE id = 1; – Trushali

+0

'UPDATE 테이블 SET 메시지 = "1,2,3"WHERE id = 1; 시도하십시오 ... –

답변

3

이렇게하면됩니다.

UPDATE Table SET message = CASE 
WHEN message LIKE '4,%' 
THEN // enter code here to replace '4,' in message with '' 
WHEN message LIKE '%,4,%' 
THEN // enter code here to replace ',4,' in message with ',' 
WHEN message LIKE '%,4' 
THEN // enter code here to replace ',4' in message with '' 
ELSE // this means all other occurances of 4 like 14,41,44,etc do nothing here or skip this else condition 
END; 
0

는 fistly 당신은 테스트 서버에서 코드를 테스트합니다. 4,

바꿀 것입니다 경우, 4, MySQL을 대체 할, 40도

당신은 문자열

, 1,2,3,4,

을 변경해야합니다 당신은 대체해야

+0

그 이유는 그가 WHERE 조건에서 ID를 사용하는 이유입니다 :) –