본문 바로가기
728x90

IT/SQL 기초강좌 (PostgreSQL)102

27강 SQL이 뭐지? PostgreSQL CUBE 27강 SQL이 뭐지? PostgreSQL CUBE PostgreSQL SQL이 뭐지? 27강 시작합니다. 이번 강의에서는 ▶ PostgreSQL CUBE 에 대해서 알아보겠습니다. 여러 그룹 집합을 생성하는 PostgreSQL CUBE에 대해서 알아봅니다. Introduction to the PostgreSQL CUBE PostgreSQL CUBE는 GROUP BY 절의 하위 절이다. CUBE를 사용하면 여러 그룹화 세트를 생성할 수 있습니다. 그룹화 집합은 그룹화할 열 집합입니다. 그룹화 세트에 대한 자세한 내용은 GROUPING SETS 강의를 참조하십시오. 다음은 CUBE 하위 절의 구문을 보여줍니다. SSELECT c1, c2, c3, aggregate (c4) FROM table_name GR.. 2022. 12. 20.
26강 SQL이 뭐지? PostgreSQL GROUPING SETS 26강 SQL이 뭐지? PostgreSQL GROUPING SETS PostgreSQL SQL이 뭐지? 26강 시작합니다. 이번 강의에서는 ▶ PostgreSQL GROUPING SETS 에 대해서 알아보겠습니다. 쿼리에 여러 그룹 집합을 생성하는 PostgreSQL GROUPING SETS 절에 대해서 학습합니다. GROUP BY를 이용해 여러 개의 그룹핑을 만들고 UNION ALL로 합치던 과정을 GROUPING SETS 절을 사용하여 해결할 수 있습니다. Setup a sample table 실습을 위해 sales 테이블을 만듭니다. DROP TABLE IF EXISTS sales; CREATE TABLE sales ( brand VARCHAR NOT NULL, segment VARCHAR NOT .. 2022. 12. 20.
25강 SQL이 뭐지? PostgreSQL HAVING 25강 SQL이 뭐지? PostgreSQL HAVING PostgreSQL SQL이 뭐지? 25강 시작합니다. 이번 강의에서는 ▶ PostgreSQL HAVING clause 에 대해서 알아보겠습니다. 그룹 또는 집계에 대한 검색 조건을 지정하는 PostgreSQL HAVING 절에 대해서 학습합니다. Introduction to PostgreSQL HAVING clause HAVING 절은 그룹 또는 집계에 대한 검색 조건을 지정합니다. HAVING 절은 GROUP BY 절과 함께 지정된 조건을 기준으로 그룹 또는 집계를 필터링하는 데 자주 사용됩니다. 다음 문장은 HAVING 절의 기본 구문을 보여줍니다. SELECT column1, aggregate_function (column2) FROM tab.. 2022. 12. 20.
24강 SQL이 뭐지? PostgreSQL INTERSECT 24강 SQL이 뭐지? PostgreSQL INTERSECT PostgreSQL SQL이 뭐지? 24강 시작합니다. 이번 강의에서는 ▶ PostgreSQL INTERSECT Operator 에 대해서 알아보겠습니다. 이번 강의 주제는 둘 이상의 쿼리 결과 집합을 결합하는 PostgreSQL INTERSECT 연산자입니다. Introduction to PostgreSQL INTERSECT operator UNION 및 EXCEPT 연산자와 마찬가지로 Postgre.SQL INTERSECT 연산자는 둘 이상의 SELECT 문의 결과 집합을 단일 결과 집합으로 결합합니다. INTERSECT 연산자는 두 결과 집합에서 사용 가능한 모든 행을 반환합니다. 다음 그림은 INTERSECT 연산자가 생성한 최종 결과 .. 2022. 12. 19.
23강 SQL이 뭐지? PostgreSQL UNION 23강 SQL이 뭐지? PostgreSQL UNION PostgreSQL SQL이 뭐지? 23강 시작합니다. 이번 강의에서는 ▶ PostgreSQL UNION 에 대해서 알아보겠습니다. 여러 쿼리의 결과 집합을 단일 결과 집합으로 결합하는 PostgreSQL UNION 연산자에 대해서 공부합니다. Introduction to PostgreSQL UNION operator UNION 연산자는 두 개 이상의 SELECT 문의 결과 집합을 단일 결과 집합으로 결합합니다. 다음은 두 쿼리의 결과 집합을 결합하는 UNION 연산자의 구문을 보여줍니다. SELECT select_list_1 FROM table_expresssion_1 UNION SELECT select_list_2 FROM table_express.. 2022. 12. 19.
22강 SQL이 뭐지? PostgreSQL GROUP BY 22강 SQL이 뭐지? PostgreSQL GROUP BY PostgreSQL SQL이 뭐지? 22강 시작합니다. 이번 강의에서는 ▶ PostgreSQL GROUP BY clause 에 대해서 알아보겠습니다. Introduction to PostgreSQL GROUP BY clause GROUP BY 절은 SELECT 문에서 반환되는 행을 그룹으로 나눕니다. 각 그룹에 대해 SUM()과 같은 집계 함수를 적용하여 항목의 합계를 계산하거나 COUNT()를 적용하여 그룹의 항목 수를 가져올 수 있습니다. 다음 문은 GROUP BY 절의 기본 구문을 보여줍니다. SELECT column_1, column_2, ..., aggregate_function(column_3) FROM table_name GROUP .. 2022. 12. 19.
21강 SQL이 뭐지? PostgreSQL NATURAL JOIN 21강 SQL이 뭐지? PostgreSQL NATURAL JOIN PostgreSQL SQL이 뭐지? 21강 시작합니다. 이번 강의에서는 ▶ PostgreSQL NATURAL JOIN 에 대해서 알아보겠습니다. Introduction to the PostgreSQL NATURAL JOIN NATURAL JOIN은 조인된 테이블의 동일한 열 이름을 기반으로 암시적 조인을 생성하는 조인입니다. 두 개의 테이블에서 같은 이름을 가진 칼럼 간의 조인 집합 결과를 출력합니다. 다음은 PostgreSQL의 NATURAL JOIN 구문을 보여줍니다. SELECT select_list FROM T1 NATURAL [INNER, LEFT, RIGHT] JOIN T2; NATURAL JOIN은 inner join, lef.. 2022. 12. 19.
20강 SQL이 뭐지? PostgreSQL Cross Join 20강 SQL이 뭐지? PostgreSQL Cross Join PostgreSQL SQL이 뭐지? 20강 시작합니다. 이번 강의에서는 ▶ PostgreSQL Cross Join 에 대해서 알아보겠습니다. 결합된 테이블에서 행의 데카르트 곱을 생성하려면, PostgreSQL CROSS JOIN을 사용합니다. Introduction to the PostgreSQL CROSS JOIN clause CROSS JOIN 절을 사용하면 두 개 이상의 테이블에 있는 행의 데카르트 곱을 생성할 수 있습니다. LIFT JOIN 또는 INNER JOIN과 같은 다른 조인 절과 달리 CROSS JOIN 절에는 조인 술어가 없습니다. 두 테이블 T1과 T2의 교차 조인을 수행해야 한다고 가정합니다. T1에 n개의 행이 있고 .. 2022. 12. 19.
19강 SQL이 뭐지? PostgreSQL FULL OUTER JOIN postgresql 기초강의강좌, FULL OUTER JOIN 19강 SQL이 뭐지? PostgreSQL FULL OUTER JOIN PostgreSQL SQL이 뭐지? 19강 시작합니다. 이번 강의에서는 ▶ PostgreSQL FULL OUTER JOIN 에 대해서 알아보겠습니다. Introduction to the PostgreSQL FULL OUTER JOIN 두 테이블의 full outer join을 수행한다고 가정합니다. A와 B 다음은 FULL OUTER JOIN의 구문을 보여줍니다. SELECT * FROM A FULL [OUTER] JOIN B on A.id = B.id ; 이 구문에서 OUTER 키워드는 선택 사항입니다. FULL OUTER JOIN은 LEFT JOIN과 RIGHT JOI.. 2022. 12. 19.
18강 SQL이 뭐지? PostgreSQL Self-Join 18강 SQL이 뭐지? PostgreSQL Self-Join PostgreSQL SQL이 뭐지? 18강 시작합니다. 이번 강의에서는 ▶ PostgreSQL self-join 에 대해서 알아보겠습니다. Introduction to PostgreSQL self-join 셀프 조인은 테이블을 자신에게 조인하는 조인입니다. 일반적으로 자체 조인을 사용하여 계층 데이터를 쿼리 하거나 동일한 테이블 내의 행을 비교합니다. 자체 조인을 구성하려면 동일한 테이블을 다른 테이블 별칭으로 두 번 지정하고 조인 술어를 ON 키워드 뒤에 제공합니다. 다음 쿼리는 테이블을 자체적으로 조인하는 내부 조인을 사용합니다. SELECT select_list FROM table_name t1 INNER JOIN table_name t2.. 2022. 12. 18.
17강 SQL이 뭐지? PostgreSQL RIGHT JOIN 17강 SQL이 뭐지? PostgreSQL RIGHT JOIN PostgreSQL SQL이 뭐지? 17강 시작합니다. 이번 강의에서는 ▶ PostgreSQL RIGHT JOIN clause 에 대해서 알아보겠습니다. 지난 강의 14강에서 살펴본 JOIN에 대해서 하나씩 심화 학습하는 시간입니다. Setting up sample tables 다음과 같은 두 개의 테이블 films와 film_review가 있다고 가정합니다. 실습을 위해 테이블을 생성하고 데이터를 입력합니다. DROP TABLE IF EXISTS films; DROP TABLE IF EXISTS film_reviews; CREATE TABLE films( film_id SERIAL PRIMARY KEY, title varchar(255) N.. 2022. 12. 17.
16강 SQL이 뭐지? PostgreSQL LEFT JOIN 16강 SQL이 뭐지? PostgreSQL LEFT JOIN PostgreSQL SQL이 뭐지? 16강 시작합니다. 이번 강의에서는 ▶ PostgreSQL LEFT JOIN clause 에 대해서 알아보겠습니다. 지난 강의 14강에서 살펴본 JOIN에 대해서 하나씩 심화 학습하는 시간입니다. Introduction to PostgreSQL LEFT JOIN clause ERD에서 테이블 간의 관계를 나타내는 방법에 대해서는 별도 강의를 준비해보겠습니다. A와 B 두 개의 테이블이 있다고 가정합니다. A에서 B는 1 대 N 관계이고 optional입니다. (있거나, 없을 수도 있다) B에서 A는 N 대 1 관계이고 mandatory입니다. (필수로 있다.) A의 각 행은 B에 0개 또는 다수의 대응하는 행.. 2022. 12. 17.
15강 SQL이 뭐지? PostgreSQL INNER Join 15강 SQL이 뭐지? PostgreSQL INNER Join PostgreSQL SQL이 뭐지? 15강 시작합니다. 이번 강의에서는 ▶ PostgreSQL INNER JOIN clause 에 대해서 알아보겠습니다. 지난 강의에서 14강에서 살펴본 JOIN에 대해서 하나씩 심화 학습하는 시간입니다. Introduction to PostgreSQL INNER JOIN clause 관계 데이터베이스에서 데이터는 일반적으로 두 개 이상의 테이블에 분산됩니다. 전체 데이터를 선택하려면 여러 테이블에서 데이터를 쿼리 해야 하는 경우가 많습니다. 이 강의에서는 INSER JOIN 절을 사용하여 여러 테이블의 데이터를 결합하는 방법에 초점을 맞추고 있습니다. 테이블 A와 B가 두 개 있다고 가정합니다. 테이블 A에는.. 2022. 12. 17.
14강 SQL이 뭐지? PostgreSQL Join 14강 SQL이 뭐지? PostgreSQL Join PostgreSQL SQL이 뭐지? 14강 시작합니다. 이번 강의에서는 ▶ Join : inner join, left join, right join, full outer join, cross join, natural join, self-join 에 대해서 알아보겠습니다. 오늘 강의는 중요한 시간입니다. 집중해서 학습하시기를 바랍니다. Introduction 이번 강의에서는 다양한 종류의 PostgreSQL의 조인에 대해 학습합니다. inner join, left join, right join, full outer join을 포함한 SQL 조인에 대해서 학습합니다. PostgreSQL 조인은 관련 테이블 간의 공통 열 값을 기반으로 하나 이상의 테이블의 .. 2022. 12. 16.
13강 SQL이 뭐지? PostgreSQL Table Aliases 13강 SQL이 뭐지? PostgreSQL Table Aliases PostgreSQL SQL이 뭐지? 13강 시작합니다. 이번 강의에서는 ▶ Table Aliases 에 대해서 알아보겠습니다. Introduction to the PostgreSQL table aliases 테이블 별칭은 쿼리를 실행하는 동안 테이블에 임시로 부여한 이름입니다. 테이블에 별칭을 부여하는 문법은 아래와 같습니다. table_name AS alias_name; 이 구문에서 table_name에는 alias_name이라는 별칭이 할당됩니다. 열 별칭과 마찬가지로 AS 키워드는 선택 사항입니다. 아래와 같이 표현할 수 있습니다. table_name alias_name; 테이블 별칭의 실제 적용 테이블 별칭이 실제 응용 프로그램에.. 2022. 12. 16.
12강 SQL이 뭐지? PostgreSQL : NULL and IS NULL operator 12강 SQL이 뭐지? PostgreSQL : NULL and IS NULL operator PostgreSQL SQL이 뭐지? 12강 시작합니다. 이번 강의에서는 ▶ NULL ▶ IS NULL operator 에 대해서 알아보겠습니다. NULL 및 IS NULL 연산자 소개 데이터베이스에서 NULL은 누락된 정보 또는 적용되지 않는 정보를 의미합니다. NULL은 값이 아니므로 숫자 또는 문자열과 같은 다른 값과 비교할 수 없습니다. NULL을 값과 비교하면 항상 알 수 없는 결과를 의미하는 NULL이 됩니다. 또한 NULL은 NULL과 같지 않으므로 다음 식을 통해 NULL을 반환합니다. NULL = NULL -> NULL 연락처의 이름, 성, 전자 메일 및 전화번호를 저장하는 연락처 테이블이 있다고 .. 2022. 12. 16.
11강 SQL이 뭐지? PostgreSQL : LIKE, ILIKE operator 11강 SQL이 뭐지? PostgreSQL : LIKE, ILIKE operator PostgreSQL SQL이 뭐지? 11강 시작합니다. 이번 강의에서는 ▶ LIKE operator 에 대해서 알아보겠습니다. LIKE operator 당신이 고객을 찾고 싶지만 그녀의 이름을 정확히 기억하지 못한다고 가정해봅시다. 하지만, 여러분은 그녀의 이름이 젠(Jen)으로 시작한다는 것을 기억할 뿐입니다. 데이터베이스에서 정확한 고객을 어떻게 찾습니까? 고객 표에서 이름 열을 보고 Jen으로 시작하는 값이 있는지 확인할 수 있습니다. 고객 테이블에 행이 많으면 시간이 많이 걸립니다. 다행히도, 당신은 PostgreSQL을 사용할 수 있습니다. 고객의 이름을 다음 쿼리와 같은 문자열과 일치시키는 SQL LIKE 연산.. 2022. 12. 16.
10강 SQL이 뭐지? PostgreSQL : BETWEEN operator 10강 SQL이 뭐지? PostgreSQL : BETWEEN operator PostgreSQL SQL이 뭐지? 10강 시작합니다. 이번 강의에서는 ▶ BETWEEN operator 에 대해서 알아보겠습니다. BETWEEN operator BETWEEN 연산자를 사용하여 설정된 범위에 값을 일치시킬 수 있습니다. 다음은 BETWEEN 연산자의 구문을 보여줍니다. value BETWEEN low AND high; 값이 low 값보다 크거나 같고 high 값보다 작거나 같으면 식이 true를 반환하고, 그렇지 않으면 false를 반환합니다. 다음과 같이 보다 크거나 같거나(>=) 또는 보다 작거나 같은(= low and value high SELECT, INSERT, UPDATE 또는 DELETE 문의 WH.. 2022. 12. 15.
9강 SQL이 뭐지? PostgreSQL : IN에 대해서 PostgreSQL SQL이 뭐지? 9강 시작합니다. 이번 강의에서는 ▶ IN operator syntax 에 대해서 알아보겠습니다. 1. IN operator syntax ● 기본 구문 ● WHERE 절에서 IN 연산자를 사용하여 값이 목록의 값과 일치하는지 확인합니다. IN 연산자의 구문은 다음과 같습니다. value IN (value1,value2,...) 값 목록은 숫자, 문자열 또는 다음과 같은 SELECT 문의 결과가 될 수 있습니다. value IN (SELECT column_name FROM table_name); 괄호 안의 쿼리를 하위 쿼리라고 하며, 이는 다른 쿼리 안에 중첩된 쿼리입니다. 하위 쿼리에 대한 자세한 내용은 후속 Subquery 강의에서 하겠습니다. ♥ 실습 1 ♥ 고객 .. 2022. 12. 15.
8강 SQL이 뭐지? PostgreSQL LIMIT와 FETCH PostgreSQL SQL이 뭐지? 8강 시작합니다. 이번 강의에서는 ▶ LIMIT clause ▶ FETCH clause 에 대해서 알아보겠습니다. 1. PostgreSQL LIMIT clause ● 기본 구문 ● PostgreSQL LIMIT는 쿼리에서 반환되는 행 수를 제한하는 SELECT 문의 선택적 절입니다. SELECT select_list FROM table_name ORDER BY sort_expression LIMIT row_count; SQL문은 쿼리에 의해 생성된 row_count 행을 반환합니다. row_count가 0이면 쿼리는 빈 집합을 반환합니다. row_count가 NULL인 경우 쿼리에 LIMIT 절이 없는 것과 동일한 결과 집합이 반환됩니다. row_count는 0 이상의.. 2022. 12. 14.
7강 SQL이 뭐지? WHERE 절 안녕하세요. 7강 시작합니다. 지금까지의 강의에서는 전체 행을 대상으로 SELECT를 수행했습니다. 이번 강의에서는 ▶ WHERE 절 에 대해서 알아보겠습니다. ※ 보충 ※ 지난 강의에서 행과 열에 대한 개념을 언급하지 않은 것 같습니다. 테이블(table)은 행(row) 및 열(column)로 구성되는 2차원 데이터 배열입니다. 행은 하나 이상의 열이 들어 있는 가로 파트입니다. 열은 하나의 데이터 유형을 가진 데이터 행이 하나 이상 들어 있는 세로 파트입니다. ● 행(row) : 테이블에서 가로 방향의 자료 집합을 의미합니다. 데이터베이스에서는 이것을 레코드(record) 또는 튜플(tuple)로 부릅니다. 테이블에서 모든 행(row)은 같은 열(column) 속성을 가진 같은 구조입니다. ●열(co.. 2022. 12. 13.
6강 SQL이 뭐지? SELECT DISTINCT 뽀개기 안녕하세요. 6강 시작합니다. 이제 SQL에 어느 정도 익숙해지셨죠? 입맛에 맞는 Query Tool은 찾으셨나요? 이번 강의에서는 ▶ SELECT DISTINCT 에 대해서 알아보겠습니다. DISTINCT를 대신해 GROUP BY 절로 구현할 수도 있으나 DISTINCT가 성능 면에서 빠른 것으로 알려져 있습니다. 1. SELECT DISTINCT DISTINCT명령어는 결과 세트에서 중복 행을 제거하기 위해 사용됩니다. DISTINCT절은 중복된 각 그룹에 대해 1개의 행을 유지합니다. DISTINCT절은 컬럼중 하나 이상의 열에 적용할 수 있습니다. ● 기본구문 ● SELECT DISTINCT column1 FROM table_name; 위 명령은 column 1을 중복을 제거하는 데 사용합니다. .. 2022. 12. 13.
5강 SQL이 뭐지? Column Aliases ORDER BY postgresql 기초겅의강좌, order by 5강 SQL이 뭐지? Column Aliases ORDER BY 안녕하세요. 5강 시작합니다. HeidiSQL을 사용하는 데 익숙해지셨나요? 다른 Query Tool도 사용해보세요, 그중에 마음에 드는 것을 찾아보세요. DBeaver를 사용해보려 합니다. 이번 강의에서는 ▶ Column Aliases ▶ ORDER BY 에 대해서 알아보겠습니다. 1. Column Aliases (열 별칭) 기본구문 형식 SELECT column_name AS alias_name FROM table_name; -> AS 키워드로 별칭을 할당한다. SELECT column_name alias_name FROM table_name; -> AS 키워드는 생략할 수 있다. SEL.. 2022. 12. 13.
4강 SQL이 뭐지? 너와의 첫 만남... 살짝 설렜어... 지난 3강까지 실습환경을 만들어 보았죠. 자 그럼 본격적으로 SQL 가지고 놀아봅시다. 실습을 위해서 PostgreSQL의 샘플 데이터베이스를 가져와서 설치하였습니다. 데이터베이스 생성, 테이블 생성 등은 다음에 알아보기로 하고 제일 기본이 되는 SELECT를 먼저 공부하도록 할게요. 먼저 명령을 실행할 도구인 HeidiSQL을 실행합니다. 세션에서 dvdrental을 선택하고, 열기를 클릭 DBMS에 명령을 전달해줄 질의 도구가 실행되었습니다. 이제 HeidiSQL에서 명령을 전달하면 결과를 화면에 보여줍니다. Tip) 화면 테마 변경은 메뉴에서 도구 – 환경설정 가셔서 마음에 드는 것으로 설정하시면됩니다. 지금부터 내려받은 DVD RENTAL ER DIAGRAM을 참조하시면서 실습에 사용되는 15개 .. 2022. 12. 12.
3강 SQL이 뭐지? 도구들을 설치해보자. ( PostgreSQL, HeidiSQL ) 1. PostgreSQL 설치 ( Windows10 64bit 기준) 2. HeidiSQL 설치 3. 실습용 데이터 설치 순으로 진행하겠습니다. 지난 시간까지 SQL이 뭔지 대충 감을 잡는 시간을 가졌습니다. 이번 시간에는 본격적인 SQL을 공부하기 위해서 도구들을 설치해 보겠습니다. 1. PostgreSQL 설치 ( Windows10 64bit 기준) PostgreSQL은 운영체제에 따라 크게 두 가지로 나뉜다. 1. Linux PostgreSQL 2. Non Linux PostgreSQL ( Windows, macOS ... ) Linux PostgreSQL이 근본이다. PostgreSQL 커뮤니티는 Linux만을 공식지원하고 있다. 물론 다른 OS 버전도 있다. 하지만 공식적인 OS 지원은 Linu.. 2022. 12. 10.
728x90