JSON
1. JSON_EXTRACT()의 결과에서 JSON_UNQUOTE()를 호출하는 것과 동일한 ->> 연산자 추가
JSON_UNQUOTE(JSON_EXTRACT(col->"$.path")) 와 동일
JSON_UNQUOTE(JSON_EXTRACT())를 사용할 수 있는 모든 곳에서 사용 가능
2. JSON 집계 함수 JSON_ARRAYAGG(), JSON_OBJECTAGG() 추가
JSON_ARRAYAGG() : 컬럼 또는 표현식을 인수로 사용하고 결과를 단일 JSON 배열로 집계
JSON_OBJECTAGG() : 키와 값으로 해석되는 두 개의 컬럼 또는 표현식을 사용하여 결과를 단일 JSON 객체로 반환
3. 기존 JSON 값을 읽기 쉬운 형식으로 출력하는 JSON_PRETTY() 함수 추가
4. JSON 컬럼 값의 부분 업데이트에 대한 지원 추가
JSON_SET(), JSON_REPLACE(), JSON_REMOVE()
5. JSON_STORAGE_SIZE(), JSON_STORAGE_FREE() 함수 추가
JSON_STORAGE_SIZE() : 부분 업데이트 전에 JSON 도큐먼트의 바이너리 표현에 사용되는 저장 공간을 바이트 단위로 반환
JSON_STORAGE_FREE() : JSON_SET() 또는 JSON_REPLACE()를 사용하여 부분적으로 업데이트된 후 JSON 유형의 테이블 컬럼에 남아 있는 공간의 크기를 제공
6. XPath 표현식에서 $[1 ~ 5]와 같은 범위에 대한 지원이 DBMS에 추가
$[last]가 항상 배열의 마지막(가장 높은 번호) 요소를 선택하고 $[last-1]이 마지막 요소 이전을 선택하도록 last 키워드 및 상대 주소 지정에 대한 지원 추가
7. RFC 7396을 준수하도록 JSON 병합 함수 JSON_MERGE_PATCH() 추가
2개의 JSON 객체를 아래 조건으로 단일 JSON 객체로 병합
두 번째 객체에 동일한 키를 가진 멤버가 없는 첫 번째 객체의 각 멤버
첫 번째 객체에 동일한 키를 가진 멤버가 없고 값이 JSON null 리터럴이 아닌 두 번째 객체의 각 멤버
두 객체에 모두 존재하는 키가 있고 두 번째 객체의 값이 JSON null 리터럴이 아닌 각 멤버
JSON_MERGE() => JSON_MERGE_PRESERVE() 함수명 변경
8. 중복 키의 "last duplicate key wins" 정규화를 구현
키의 가장 오른쪽 멤버만 보존
9. JSON_TABLE() 함수 추가
JSON 데이터를 받아 지정된 컬럼이 있는 관계형 테이블로 반환
JSON_TABLE(expr, path COLUMNS column_list) [AS] alias)
Last updated
Was this helpful?