본문 바로가기
공부/PostgreSQL

[17] PostgreSQL – JSON 데이터 유형

by 혼밥맨 2023. 4. 15.
반응형

[17] PostgreSQL – JSON 데이터 유형

PostgreSQL의 JSON 데이터 유형은 PostgreSQL에서 지원하는 다양한 데이터 유형 중 하나이다. JSON은 JavaScript Object Notation의 약어로, 데이터를 표현하기 위한 경량 데이터 교환 형식이다. JSON 데이터 유형을 사용하면 PostgreSQL 데이터베이스에 JSON 데이터를 저장할 수 있으며, 이를 검색하고 쿼리할 수 있다.

JSON 데이터 유형은 테이블 열의 데이터 유형으로 지정될 수 있다. 이렇게하면 JSON 데이터를 테이블 열에 삽입하고 검색하는 데 사용할 수 있다. JSON 데이터를 저장하는 경우 PostgreSQL은 JSON 데이터를 구문 분석하여 내부 데이터 구조로 변환하며, 이를 사용하여 JSON 데이터를 쿼리하고 조작할 수 있다.

JSON 데이터 유형의 장점 중 하나는 구조적으로 유연하다는 것이다. JSON 데이터는 중첩된 데이터 구조를 포함할 수 있으며, 이를 사용하여 복잡한 데이터를 저장하고 검색할 수 있다. 또한 JSON 데이터 유형은 PostgreSQL의 다른 기능과 통합될 수 있으며, 예를 들어 인덱스를 사용하여 JSON 데이터를 더 빠르게 검색할 수 있다.

JSON 데이터 유형을 사용하여 데이터를 저장하고 검색하는 방법에 대한 자세한 정보는 PostgreSQL 문서에서 확인할 수 있다. PostgreSQL은 다양한 JSON 데이터 유형 함수와 연산자도 제공하므로, 이를 사용하여 JSON 데이터를 쿼리하고 조작할 수 있다. 이러한 기능들은 PostgreSQL 데이터베이스의 사용자 및 개발자에게 유용한 정보를 제공할 것으로 예상된다.

예시 01: 

1
2
3
4
CREATE TABLE orders (
    ID serial NOT NULL PRIMARY KEY,
    info json NOT NULL
);
cs

이제 다음과 같이 일부 데이터를 주문 테이블에 삽입합니다.

1
2
3
4
5
INSERT INTO orders (info)
VALUES
    (
        '{ "customer": "Raju Kumar", "items": {"product": "coffee", "qty": 6}}'
    );
cs

이제 아래 명령을 사용하여 주문 정보를 쿼리합니다.

1
2
3
4
SELECT
    info
FROM
    orders;
cs

결과: 

예시 02: 

위의 예에서는 주문 테이블을 만들고 여기에 단일 JSON 데이터를 추가했습니다. 이 예에서는 아래 명령을 사용하여 동일한 테이블에 여러 JSON 데이터를 삽입하는 방법을 살펴봅니다.

1
2
3
4
5
6
7
8
9
10
11
INSERT INTO orders (info)
VALUES
    (
        '{ "customer": "Nikhil Aggarwal", "items": {"product": "Diaper", "qty": 24}}'
    ),
    (
        '{ "customer": "Anshul Aggarwal", "items": {"product": "Tampons", "qty": 1}}'
    ),
    (
        '{ "customer": "Naveen Arora", "items": {"product": "Toy Train", "qty": 2}}'
    );
cs

이제 아래 명령을 사용하여 주문 정보를 쿼리합니다.

1
2
3
4
SELECT
    info
FROM
    orders;
cs

결과:

반응형

댓글