기록을 찾기 쉽게, 생각을 다시 움직이게.

혁신을 이룹니다, 오딘박스(OdinBOX)

글

무엇을 기록하나요

추천 글

직접 고른 글

최신 글

더 보기

PostgreSQL 16

Oracle vs PostgreSQL, STRING_AGG(LISTAGG) 가이드

Oracle과 PostgreSQL에서 문자열 집계를 손쉽게 처리하는 STRING_AGG(LISTAGG) 함수의 개념과 활용법STRING_AGG(LISTAGG) 이 글 하나면 끝!SQL을 쓰다 보면 여러 행의 값을 한 줄로 모아야 할 때가 많습니다. 예를 들어, 한 부서의 직원 이름을 콤마로 연결하거나, 여러 제품 코드를 한 칸에 모아 보여주고 싶을 때가 그렇습니다. 이럴 때 유용한 함수가 Oracle의 LISTAGG와 PostgreSQL의 STRING_AGG입니다. 두 함수 모두 여러 행의 문자열을 하나로 합쳐주는 집계 함수로, 보고서 작성이나 데이터 요약에 자주 활용됩니다.목차SQL - STRING_AGG소개STRING_AGG는 여러 행의 문자열 값을 하나의 문자열로 결합해 주는 집계 함수로, Orac..

DEVELOPMENT 2025.07.27
PostgreSQL, 자세히 알아보기

PostgreSQL 도입을 위한 기술적 기준과 실무 적용 사례 총정리PostgreSQL에 대해서 자세히 알아봅시다. 개발을 하다보면 꼭 마주하게 되는 기술이 있는데 그것이 바로 데이터베이스(DB)입니다, 그리고 그중에서도 많이 듣게 되는 이름 중 하나가 이번에 소개하는 PostgreSQL입니다. 오픈소스임에도 불구하고 상용 데이터베이스와 비교해도 뒤쳐지지 않는 성능과 기능을 가지고 있습니다. PostgreSQL에 대해서 자세히 알아보시죠! 목차PostgreSQL소개PostgreSQL은 1986년 미국 UC버클리에서 시작된 POSTGRES 프로젝트를 기반으로 만들어진 오픈소스 데이터베이스이며, 1996년부터 현재의 이름으로 불리기 시작했고 지금은 전세계적으로 널리 사용되는 대표적인 관계형 데이터베이스이며 ..

DEVELOPMENT 2025.04.11
PostgreSQL - DATE_TRUNC 알아보기

postgresql, 날짜형식, 더하기, 빼기, 쿼리, SQL 날짜 자르기 어떻게 하면 좋을까요? 쿼리를 사용하다 보면 날짜 형식을 서로 다른 형식으로 되어있는 것을 비교하는 경우가 많이 있습니다. 이럴 때 쉽게 자를 수 있는 방법이 있으면 좋을 거라는 생각을 하게 됩니다. 날짜 비교를 할 수 있는 다양한 방법을 지원을 하고 있는데 이번엔 그중 DATE_TRUNC에 대해서 알아보도록 하겠습니다. 목차 DATE_TRUNC 사용해보기 PostreSQL기준으로 설명을 먼저 드리면 공식문서[#]를 참고하여 설명합니다. DATE_TRUNC(FIELD, SOURCE [, TIME_ZONE ]) 필드(Field)에 넣을 수 있는 것은 아래와 같이 존재하고 있습니다. 1. microseconds 2. milliseco..

DEVELOPMENT 2023.11.05
PostgreSQL - WITH RECURSIVE 알아보기

postgresql,WITH RECURSIVE,재귀적,계층형,반복문 계층형, 재귀적 쿼리 - WITH RECURSIVE SQL을 사용을 하다 보면 쓰게 될 WITH RECURSIVE를 알아보려고 합니다. 계층형 및 재귀적 쿼리를 사용할 때 주로 사용을 하는 WITH RECURSIVE구문에 대해서 사용방법과 함께 실제로 어떻게 쓰면 될지에 대해서 알아봅시다. 목차 WITH RECURSIVE postgresql 기준으로 작성이 되었고, Oracle, SQL도 잠깐 설명을 하도록 하겠습니다. postgresql 공식문서[#] SQL 공식문서[#] WITH RECURSIVE ODINBOX_SEL AS ( SELECT 1 AS NUMBER UNION ALL SELECT NUMBER + 1 FROM ODINBOX_..

DEVELOPMENT 2023.09.18
SQL, 테이블 복사 및 데이터 복사

SQL로 테이블 구조와 데이터를 한 번에 복사하는 방법을 DBMS별로 정리합니다.설마, 데이터를 하나하나 입력하고 계신 건 아니죠?업무를 하다 보면 비슷한 구조의 테이블이나 데이터를 복사해야 하는 경우가 자주 있습니다. 저도 처음엔 이 방법을 몰라 비효율적으로 작업하며 시간을 많이 허비했는데, 공부하면서 알게 된 뒤로는 가장 유용하게 쓰는 방법 중 하나가 되었습니다. 이 글에서는 SQL로 테이블 구조만 복사하기, 구조와 데이터를 함께 복사하기, 일부 컬럼만 골라 복사하기를 PostgreSQL·Oracle·MySQL 기준으로 정리합니다. 저처럼 입문 단계의 분들에게 도움이 되길 바랍니다.목차1. 테이블 구조만 복사하기데이터는 빼고, 컬럼 구성만 동일한 빈 테이블을 만들고 싶을 때 사용합니다. DBMS마다 ..

DEVELOPMENT 2023.03.11
SQL, EXIST, NOT EXIST 알아보기

SQL EXISTS와 NOT EXISTS의 개념과 사용법, IN·JOIN과의 차이를 정리합니다.EXISTS와 NOT EXISTS, 쉽고 정확하게 정리SQL을 사용하다 보면 "어떤 조건을 만족하는 데이터가 다른 테이블에 존재하는가/존재하지 않는가"를 기준으로 결과를 걸러야 할 때가 많습니다. 이럴 때 쓰는 것이 EXISTS와 NOT EXISTS입니다. 저도 아직 배우는 입장이지만, 개념과 사용법, 그리고 자주 비교되는 IN·JOIN과의 차이까지 예제와 함께 정리해 보겠습니다.목차EXISTS란EXISTS는 서브쿼리(Sub Query)의 결과가 한 건이라도 존재하면 참(TRUE)으로 판단하는 연산자입니다. 쉽게 말해 "메인 테이블의 각 행에 대해, 서브쿼리 조건을 만족하는 데이터가 존재하면 그 행을 보여줘!"..

DEVELOPMENT 2023.02.25