2013-05-14 3 views
1

필드 F1, F2 및 F3이있는 mysql 테이블 (AWS RDS)이 있습니다. F1에는 'abc-def'와 같은 문자열이 있습니다. 내가해야 할 일은 F1 값을 하이픈으로 두 개의 문자열 ('abc'와 'def')로 나눠서 같은 행의 F2와 F3에 저장하는 것입니다. 기록을 변경하기 전에mysql 테이블 필드에 문자열을 분할하고 두 개의 필드에 저장

:

F1: abc-def 
F2: 
F3: 

기록을 변경 한 후에는 :

F1: abc-def 
F2: abc 
F3: def 

MySQL이 정규 표현식하지만 다시없는 참조를 지원하지 않습니다 것으로 보인다. 내 마지막 수단은 mysqldump를 사용하는 것이지만 mysql에서 직접이 작업을 수행 할 수있는 방법이 있는지 알고 싶다.

답장을 보내 주시면 감사하겠습니다.

+0

가능한 복제본 [MySQL 쿼리에서 필드를 분할/분해 할 수 있습니까?] (http://stackoverflow.com/questions/471914/can-you-split-explode-a-field-in-a-mysql -query) –

답변

-1

다음 해당 장소에 저장할 수 있습니다

$exploded = explode('-', 'abc-def'); 

가 배열에 DEF ABC를 넣어 것입니다 ... (가) 같은 하이픈에서 기능을 폭발 사용해보십시오

f2 = $exploded[0]; <-- meaning abc 
f3 = $exploded[1]; <-- meaning def 
+0

그는 PHP에 대해 언급 한 적이 없다 ... 사실 그는 구체적으로 MySQL을 직접 사용하려고한다고 말합니다. –

+0

예, MySQL CLI에서이 작업을 수행해야합니다. – pdgetrf

+0

그럼 MySQL 설명서를 읽지 않은 것 같습니다 ... http://dev.mysql.com/doc/refman/5.1/en/string-functions.html –

0

Can Mysql Split a column?에있는 구분 기호로 쉼표를 사용하여이를 설명하는 또 다른 게시물입니다. substring_index 결과에 두 개의 열을 설정하는 업데이트 절차 만 수행하면됩니다.

관련 문제