postgres 5

[PostgreSQL] 함수와 뷰 활용하기

함수 함수란? 함수란 원하는 목적의 달성을 위해 일련의 SQL문 작업들을 하나의 단위로 묶은 것을 의미합니다. 즉, 여러 작업들을 ㅎ묶어 하나의 함수 이름으로 부를 수 있습니다. 다른 DBMS에서는 저장프로시저라고도 합니다. 함수를 사용하는 이유 함수를 사용하는 이유는 복잡하고 시간이 많이 걸리는 작업들을 일일이 수행하기는 비효울적이니, 하나의 단위로 묶어서 작업을 쉽게 하기 위해서입니다. 함수 사용 여부에 따라 서버와 사용자(클라이언트)간의 통신 횟수가 현저히 차이가 납니다. 함수를 사용하지 않으면 각각의 쿼리를 일일이 서버와 통신해야 하는 반면 함수를 사용하면 한번의 통신만 하면 작업이 가능합니다. 이처럼 함수를 사용하면 여러번의 통신 횟수가 줄어들어 DBMS의 작업 처리가 더 빨라질 수 있습니다. ..

DataScience 2023.06.21

[PostgreSQL] 데이터의 집계 및 결합

다양한 데이터의 결합 방법 데이터베이스로부터 원하는 형태의 데이터를 애플리케이션에 불러오다 보면 가끔 원하는 데이터가 분산되어 있다는 것을 알게 됩니다. 원하는 정보가 분산되어 있는 상황은 여러 가지가 있습니다. 한 테이블에 여러 줄로 원하는 데이터가 분산되어 있는 경우: GROUP BY절을 이용해 “그룹화” 과정을 거쳐야 합니다. 여러 테이블에 같은 유형의 데이터가 분산되어 있는 경우: UNION 혹은 UNION ALL 연산자를 사용해야 합니다. 여러 테이블에 서로 다른 유형의 데이터가 분산되어 있는 경우: FROM절에 두 테이블을 부르고 WHERE절에 조건을 걸어 합치거나 JSON 연산자를 사용해야 합니다. 데이터 그룹화 DISTINCT 알아보기 테이블에서 중복되는 데이터를 없애는 DISTINCT절은..

DataScience 2023.06.20

[postgreSQL] 쿼리에 사용되는 연산자와 함수

연산자와 함수 다양한 연산을 하기 위한 기호나 문자를 연산자라고 합니다. 함수도 마찬가지로 특정 기능을 위한 구문입니다. 논리, 비교 연산자와 조건문 함수 연산자/함수 예시/형식 결과 AND a AND b TRUE, FALSE 또는 NULL OR a OR b TRUE, FALSE 또는 NULL NOT NOT a TRUE, FALSE 또는 NULL IS TRUE IS TRUE TRUE, FALSE 또는 NULL IS FALSE IS FALSE TRUE, FALSE 또는 NULL IS NULL IS NULL 또는 IS UNKNOWN TRUE, FALSE 또는 NULL BETWEEN BETWEEN AND - CASE CASE WHEN THEN … END - COALESCE() COALESCE(매개변수1, 매개..

DataScience 2023.06.19

[PostgreSQL] 보안과 백업

보안 보안을 유지한다는 것은, 안전한 곳에 보관된 데이터에 접근할 수 있는 사람과 그렇지 않은 사람을 구분하고 제한한다는 것과 같습니다. 보안의 정도는 데이터의 중요도에 따라 그리고 누가 얼마나 데이터에 접근할 수 있는지에 따라 달라집니다. DBMS에서 보인이 이루어지는 구조는 사용자가 시스템에 접속할 기본적인 권리가 있다는 것을 확인해주는 인증 단계를 거쳐야합니다. 일반적으로 Id와 Password를 통해 홈페이지에 로그인 하는 방법으로 이 인증 단계를 통과합니다. 인증 단계를 통해 시스템에 접속했다면 시스템내에서 특정 기능에 접근할 수 있는지에 대한 여부를 결정하는 권한 설정 단계를 거쳐야 합니다. 이 단계에서는 사용자가 접근하는 것에 대한 승인이 필요합니다. 권한 설정 단계를 마쳤다면, 사용자는 데..

DataScience 2023.05.31

[PostgreSQL] 트랜잭션

트랜잭션 트랜잭션은 PostgreSQL을 비롯한 DBMS에서 작업 수행의 단위로 쓰이는 논리적인 개념입니다. 데이터를 처리하는 작업 중에 오류가 발생하여 원하는 결과값이 나오지 못할 상황이 되면 트랜잭션은 해당 작업 전체를 취소합니다 .트랜잭션의 개념을 활용하면 단계별로 분리되어 있던 작업이 하나의 작업으로 그룹화됩니다. 즉, 작업 전체가 완벽하게 잘 수행되거나 아니면 아예 수행되지 않거나로 결과가 나뉩니다. 따라서 트랜잭션은 작업 중간의 오류로 인해 발생할 수 있는 데이터의 불일치를 방지함으로써 데이터 작업의 신뢰도를 높이는 효과를 얻을 수 있습니다. 트랜잭션의 특징: ACID 트랜잭션은 네 가지 특징을 가지고 있습니다. 원자성(Atomicity): 작업의 수행은 전체가 다 수행되거나, 아무것도 안되는..

DataScience 2023.05.31