2012-10-22 4 views
0

REPLACE MySQL의 문자열 + 다음 문자는 가능합니까? 같은 LIKE 밑줄.mysql 대체 문자열 + 다음 한 문자

예를 들어

, text 열이있는 경우 : 12 13 14 14_B 15 14_A, 빈 문자로 모든 14_*REPLACE, 대체 텍스트가 있어야한다 : 12 13 14 15

+0

아마도 정규 표현식에 대한 작업. – Randy

+0

예제를 수정하거나 자세히 설명해 주실 수 있습니까? 당신이 * 결과 *에 어떻게 도착했는지는 불분명합니다. –

+0

@JasonMcCreary : 결과는 대체 된 텍스트 (최종 텍스트)를 의미합니다. – mrdaliri

답변

3

당신이 정규 표현식 UDF에서를 사용 할 찾고있을거야 MySQL. check here

  • 정규 표현식 자체
  • 당신이 적 교체 필요 이들 중 4 2 참조 경우, 가난한 사람의 작업 방식 - 주요 성분은

    1. 정규 표현식 UDF 있습니다 (SQL Fiddle) :

      SELECT *,IF(LOCATE('14_',B)+3<=Length(B), 
           INSERT(B,LOCATE('14_',B),4,''),B) C 
      FROM 
      (
          SELECT *,IF(LOCATE('14_',A)+3<=Length(A), 
            INSERT(A,LOCATE('14_',A),4,''),A) B 
          FROM (
          SELECT *,IF(LOCATE('14_',x)+3<=Length(X), 
            INSERT(X,LOCATE('14_',x),4,''),X) A 
          FROM X 
      ) Q1 
      ) Q2 
      

      나는 단지 3 대체 음식을 장만했습니다 패턴을 쉽게 확장 할 수 있습니다. 가장 바깥 쪽 쿼리에 필요한 기본 테이블의 열만 포함하십시오.