Skip to main content

제 8장: 비관계형 데이터 작업 - JSON, XML 및 배열

Views 619약 2분

PostgreSQL는 관계형 데이터베이스로서 데이터를 테이블 구조로 구성하는 것이 주력입니다. 하지만 현대의 데이터베이스 요구에서 비정형 데이터의 관리도 점차 중요해지고 있습니다. 이 장에서는 비관계형 데이터를 PostgreSQL에서 관리하는 방법, 특히 JSON, XML, 그리고 배열(array) 데이터를 다루는 방법을 살펴보겠습니다.

JSON 데이터

JSON(JavaScript Object Notation)은 데이터 교환 형식이며, 인간과 기계가 쉽게 읽고 쓸 수 있도록 설계되었습니다. PostgreSQL은 JSON 데이터를 손쉽게 저장하고 질의할 수 있는 강력한 기능을 제공합니다.

  • JSON 데이터 타입: PostgreSQL에서는 두 가지 JSON 데이터 타입을 제공합니다: json과 jsonb. jsonb는 바이너리 형식으로 저장되어 더 효율적인 검색 및 처리를 제공합니다.

  • JSON 데이터 삽입:

INSERT INTO my_table (json_data) VALUES ('{"key": "value"}');
  • JSON 데이터 질의:

SELECT json_data ->> 'key' AS value FROM my_table;

XML 데이터

PostgreSQL는 XML 데이터를 지원하며, XML 데이터 타입 역시 제공됩니다. XML 데이터는 특정 애플리케이션 영역에서 많이 사용되며, PostgreSQL에서는 기본적인 삽입 및 검색 기능을 제공합니다.

  • XML 데이터 삽입:

INSERT INTO my_table (xml_data) VALUES ('<note><to>Tove</to><from>Jani</from></note>');

배열 데이터

PostgreSQL는 배열형 데이터 타입도 기본적으로 지원하며, 이는 한 필드에 여러 값을 저장해야 할 때 유용합니다.

  • 배열 데이터 삽입:

INSERT INTO my_table (array_data) VALUES ('{1,2,3}');
  • 배열 데이터 검색 및 작업:

SELECT array_data[1] AS first_element FROM my_table;

JSON, XML, 배열 데이터를 잘 활용하면 관계형 데이터베이스에서 비정형 데이터 요구사항도 충족할 수 있는 유연한 솔루션을 설계할 수 있습니다.

참조 자료

책 목록

데이터베이스 기초 가이드: PostgreSQL 완전 정복

전체 목차 보기

이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.

틸노트는 사용자가 AI를 활용해 노트를 쉽게 작성하거나 편집할 수 있는 서비스입니다.

AI 스퀘어 단톡방에 함께해요

AI 활용과 틸노트 사용 팁을 나누는 오픈채팅방입니다. 입장 비밀번호는 tilnote입니다.

참여하기