Notice
Recent Posts
Recent Comments
Link
반응형
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- aws cli s3 cp
- in memory
- jenkins 배포
- jpa json type
- mysql json type
- h2 연동
- h2 intellij
- aws cli s3 exclude folder
- Transactiona
- json type index
- AWS IAM MFA
- oracle cloud
- spring boot 멀티모듈
- 프리티어 인스턴스
- aws cli s3 exclude directory
- json type column 생성
- multi module
- IAM MFA
- json type 활용
- 멀티모듈
- Jenkins
- server mode
- aws cli s3
- Oracle Linux 8
- 트랜잭션 전파속성
- 무료 인스턴스
- JSON type
- IAM이란
- 선언적 트랜잭션
- jpa 환경에서 json type 활용하기
Archives
- Today
- Total
Chris Devlog
Mysql에서 Json type 활용하기(1) 본문
반응형
들어가며
이번 글에서는 Mysql에서 Json 데이터를 어떻게 insert하고 쿼리하는지 그리고 어떻게 활용 할 수 있는지에 대해 이야기 해보려고 합니다.
아래 글에 없는 더 자세한 설명은 https://dev.mysql.com/doc/refman/8.4/en/json.html에 잘 나와있기 때문에 직접 확인해 보시는걸 추천드리고, 이 글은 최종적으로 Spring Jpa 환경에서 json 타입의 데이터를 어떻게 활용 할 수 있는지를 이야기하기 위한 글이기 때문에 그에 필요한 내용들만 간단히 설명하도록 하겠습니다
Mysql에서 Json type
장점
- RDB에서 Json을 사용함으로써 불필요한 테이블이 추가되는걸 방지
- 서비스 로직에서 외부 API를 통한 데이터를 저장할 때 DTO생성없이 간단하게 저장 가능
단점
- json 타입 저장으로 인한 쿼리의 복잡도 상승
Create & Insert
# 테이블 생성
CREATE TABLE json_test (json_data JSON);
# json 데이터 입력
INSERT INTO json_test VALUES('{"key1": "value1", "key2": 30000, "key3": "2024-12-30 02:27:00"}');
Select
데이터 조회

json 데이터 조회 - 함수

json 데이터 조회 - 연산자

json 데이터 더블쿼테이션(") 삭제 - 함수

json 데이터 더블쿼테이션(") 삭제 - 연산자

Add Column
Json 데이터를 컬럼으로 등록하여 사용함으로써 보다 전략적으로 Json 데이터 활용이 가능해집니다
데이터는 기본적으로 "읽기전용"입니다
데이터의 변경이 필요하다면 json데이터의 값을 변경하면됩니다
데이터의 타입값을 지정 할 수 있기 때문에 원하는 타입으로 등록이 가능합니다
등록된 컬럼 데이터는 기존 방식으로 쿼리가 가능해 집니다
컬럼으로 등록

데이터 확인

Add Index
json데이터 활용에 대해 쿼리 속도에 대해 고려중이라면 index를 생성하여 해결하면됩니다
index는 json데이터가 아닌 생성된 컬럼을 기준으로 생성하여 사용합니다

반응형
'Spring Boot > JPA' 카테고리의 다른 글
Mysql에서 Json type 활용하기(3) (0) | 2025.01.02 |
---|---|
Mysql에서 Json type 활용하기(2) (1) | 2024.12.31 |