반응형
쉼표로 구분된 문자열을 json 어레이로 마이그레이션
일부 열에 다음과 같이 쉼표로 구분된 문자열이 저장되어 있는 오래된 데이터베이스가 있습니다.technician,director,website designer
MySQL JSON 배열 유형과 관련된 메서드를 사용할 수 있도록 JSON 배열로 변환하고 싶습니다.
그래서 저는 기본적으로 변환 방법을 찾고 있습니다.technician,director,website designer
로.["technician","director","website designer"]
SQL에 있습니다.
목록의 길이는 임의입니다.가장 큰 문제는 쉼표로 구분된 문자열의 각 요소에 SQL 함수를 적용하는 방법입니다(예:JSON_QUOTE()
각 요소에서) 대괄호를 추가하는 것은 간단하기 때문에CONCAT
.
솔루션은 MySQL 5.7용이어야 합니다.
사용할 수 있습니다.REPLACE
원하는 문자열을 가져옵니다.
SELECT CONCAT('["', REPLACE('technician,director,website designer', ',', '","'), '"]')
-- ["technician","director","website designer"]
를 사용하면 변환 결과가 유효한 JSON 값인지 여부를 확인할 수 있습니다.
SELECT JSON_VALID(CONCAT('["', REPLACE('technician,director,website designer', ',', '","'), '"]'))
-- 1
언급URL : https://stackoverflow.com/questions/59576757/migrate-comma-separated-string-to-json-array
반응형
'source' 카테고리의 다른 글
Apache 사용 시 PHP에서 액세스하기 위한 환경 변수 설정 (0) | 2022.11.14 |
---|---|
Python 데코레이터의 일반적인 용도는 무엇입니까? (0) | 2022.11.14 |
MySQL SELECT만 null 값이 아닙니다. (0) | 2022.11.14 |
모델 데이터 및 동작은 어디에 배치해야 합니까?[tl;dr; 서비스 사용] (0) | 2022.11.14 |
"예쁜" 디렉토리 트리를 만들기 위한 ASCII 라이브러리? (0) | 2022.11.14 |