본문 바로가기
MySql

MySQL 여러 필드를 단일 필드, 단일 간격으로 CONCAT

by 베이스 공부 2021. 1. 18.
반응형

first middle maiden last 이름 필드를 연결하고이를 사용하여 단일 필드를 업데이트하려고합니다. 이름은 fullname 입니다.

각 사용자에 대해이 4 개의 필드 조합을 채울 수 있습니다. 0에서 모두 4. 그러나 각 이름 사이에 단일 공백이 필요합니다 (여러 공백이 아님).

UPDATE nameTable SET fullname = CONCAT(first, middle, maiden, last);

 

해결 방법

 

MySQL에는 CONCAT_WS 가 있습니다-구분 기호로 연결

CONCAT_WS(' ', first, middle, maiden, last);


아래의 andr 에서 지적한 바와 같이 연결된 필드에 NULL 이 포함되고 빈 문자열 ( '')이 포함되어 있는지 확인하십시오. 그렇지 않으면 double을 얻게됩니다. 출력 공간.


따라서 나중에이 함수를 사용하여 작은 CSV 목록을 만드는 경우주의해야합니다. NULL 필드에 대해 쉼표를 얻지 못하기 때문입니다. 각 nullable 열 주위에 COALESCE (column, '') 래퍼를 수행해야합니다.

 

참조 페이지 https://stackoverflow.com/questions/13712423

 

 

반응형

댓글