데이터베이스 10

[SQL 기초] UPPER / LOWER / 숫자 함수

https://youtu.be/VtVccm2adlY 위 강의를 보고 실습하면서 정리한 내용입니다. UPPER / LOWER 문자를 대문자 / 소문자로 바꿔주는 함수 SELECT UPPER('CodeLion'); SELECT LOWER('CodeLion'); [실습] # 멤버 테이블에서 대소문자를 구분하지 않고 아이디가 'CodeLion'인 회원 조회 SELECT * FROM MEMBER WHERE ID = UPPER('CodeLion'); 숫자 함수 숫자 데이터를 조작하는 함수 [실습] # 소수점 반올림 SELECT ROUND(3.16); # 출력값: 3 SELECT ROUND(3.67); # 출력값: 4 SELECT ROUND(3.16, 1); # 출력값: 3.2 # 소수점 버림 SELECT TRUNC..

[SQL 기초] 날짜함수 / REPLACE / SUBSTR

https://youtu.be/Sk-g7m4YBhI 위 강의를 보고 실습하면서 정리한 내용입니다. 날짜함수 날짜 데이터를 조작하는 함수 현재 날짜와 시간을 조회 SELECT NOW(); 현재 날짜로부터 3달 후 날짜 출력 SELECT DATE_ADD(NOW(), INTERVAL 3 MONTH); 현재 날짜로부터 3달 전 날짜 출력 SELECT DATE_SUB(NOW(), INTERVAL 3 MONTH); 현재 날짜만 조회 SELECT CURDATE(); 현재 시간만 조회 SELECT CURTIME(); 날짜 포맷 변경 SELECT DATE_FORMAT(NOW(), '%Y%m%d%H%i%s'); # %H는 시간을 24시간 단위로 표기, %I는 시간을 12시간 단위로 표기 SELECT DATE_FORMAT(..

[SQL 기초] INNER JOIN / OUTER JOIN

https://youtu.be/D81QWILZTTE 위 강의를 보고 실습하면서 정리한 내용입니다. INNER JOIN JOIN: 여러 개의 테이블을 연결한다 JOIN 연결하는 방식에 따라 INNER JOIN과 OUTER JOIN으로 나뉘어진다 JOIN을 할 때는 컬럼 앞에 이 컬럼이 어느 테이블에 속한 컬럼인지를 명시해 주기 위해서 '테이블명.컬렁명'으로 작성해야 하는데, 매번 작성하기 길기 때문에 각 테이블에 ALIAS를 써서 간단하게 표기해준다 JOIN에 다른 조건을 추가하고 싶다면 WHERE 밑에 AND로 연결해서 작성한다. INNER JOIN은 두 테이블에 공통적으로 존재하는 데이터여야 출력이 된다 JOIN의 관계는 1:1이 될 수도 있고, 1:N이 될 수도 있고 N:1이 될 수도 있다 [실습] ..

[SQL 기초] ORDER BY / GROUP BY

https://youtu.be/5YGGWn_SqoA 위 강의를 보고 실습하면서 정리한 내용입니다. ORDER BY 데이터를 정렬시킨다. ASC는 ORDER BY의 기본 옵션이므로 생략해도 무방하다 [실습] #REG_DATE 컬럼 기준으로 오름차순 정렬 SELECT * FROM NETFLIX ORDER BY REG_DATE ASC; #REG_DATE 컬럼 기준으로 내림차순 정렬 SELECT * FROM NETFLIX ORDER BY REG_DATE DESC; #CATEGORY별로 VIEW_CNT 컬럼 기준으로 내림차순 정렬 SELECT * FROM NETFLIX ORDER BY CATEGORY, VIEW_CNT DESC; GROUP BY 데이터를 그룹으로 묶는다 보통 그룹별로 집계하기 위해 사용한다 [실습..

[SQL 기초] SELECT / WHERE

https://youtu.be/7MfXUvobZPc 위 강의를 보고 실습하면서 정리한 내용입니다. SELECT 데이터를 조회하는 쿼리 - 원하는 테이블에서 필요한 데이터들을 얼마나 빠르게 골라내느냐 SELECT 뒤에 반드시 하나 이상의 컬럼명을 기재해야 한다 전체 컬럼 조회 SELECT * FROM NETFLIX n ; 특정 컬럼 조회 SELECT VIDEO_NAME, CATEGORY, VIEW_CNT FROM NETFLIX n ; 조건 조회 (1) VIDEO_NAME이 나의 아저씨인 경우 SELECT * FROM NETFLIX n WHERE VIDEO_NAME = '나의 아저씨'; (2) VIDEO_NAME이 나의 아저씨가 아닌 경우 SELECT * FROM NETFLIX n WHERE VIDEO_NA..

[SQL 기초] INSERT / UPDATE / DELETE

https://youtu.be/8gfiXbAsBko 위 강의를 보고 실습하면서 정리한 내용입니다. INSERT 테이블에 데이터를 삽입한다 (쿼리 수행 시, 데이터가 한 로우씩 테이블에 입력된다) INSERT 문은 쿼리를 수행하고 나서 COMMIT 작업을 별도로 수행해주어야 한다 (COMMIT;) ROLLBACK: INSERT 했던 작업을 취소하는 행위 [MySQL 오토커밋(AutoCommit) 해제 방법] Edit - Preferences - SQL Editor - SQL Execution\ New connections use auto commit mode 체크박스 해제 [실습] SELECT * FROM NETFLIX n ; INSERT INTO NETFLIX VALUES ('나의 아저씨', '드라마',..

[SQL 기초] ALTER / DROP / TRUNCATE

https://youtu.be/fE0e4VqnxEc 위 강의를 보고 실습하면서 정리한 내용입니다. ALTER 기존에 생성한 테이블을 변경하고 싶을 때 사용하는 명령어 ADD COLUMN: 컬럼을 추가한다 DROP COLUMN: 컬럼을 삭제한다 MODIFY COLUMN: 컬럼을 변경한다 되도록이면 테이블에 변경을 가하지 않고 초기 형태를 유지하는 것이 가장 바람직하나, 불가피하게 변경이 필요한 경우 ALTER 명령어 사용 [실습] SELECT * FROM NETFLIX ; ALTER TABLE NETFLIX ADD (CAST_MEMBER VARCHAR(20)); ALTER TABLE NETFLIX MODIFY (CAST_MEMBER NUMBER(2)); ALTER TABLE NETFLIX MODIFY (C..

[SQL 기초] DATABASE / TABLE / CREATE

다른 강의로 SQL 공부 재시작...! https://youtu.be/xTWb9FzvU0Q 위 강의를 보고 실습하면서 정리한 내용입니다. 데이터베이스란? 데이터베이스: 데이터를 저장하는 공간 SQL: 데이터를 다루는 데 사용되는 언어 테이블이란? 데이터베이스 안에 데이터를 저장할 때 테이블 형태로 저장한다. 테이블은 COLUMN(열)과 ROW(행)으로 이루어진다. CREATE 엑셀에서 표를 만들 때 맨 위에 헤더값을 입력하는 것처럼 테이블도 처음 생성할 때 어떤 컬럼으로 구성할 것인지 정해주어야 한다. 텍스트: VARCHAR 숫자: INT 날짜: DATE [초급] CREATE 테이블명 ( 컬럼1 데이터 타입(SIZE), 컬럼2 데이터 타입(SIZE), .... ); [중급] CREATE 테이블명 ( 컬럼..

[SQL 기초] 2. 테이블 생성하기

1. CSV 파일로 테이블 생성하기 엑셀 파일 → CSV 파일 → 테이블 Table Data Import Wizard Field Separator(컬럼 구분자) 부분의 기호를 원하는 기호로 변경 필요 - CSV 파일은 ,(콤마) Data Type 맞춰주기 - int: 정수형, text: 문자열형, double: 실수형, date: 날짜 CSV: Comma Separated Values 2. Primary Key primary key(기본키): 테이블에서 하나의 row를 고유하게 식별할 수 있도록 해주는 column (id) primary key 설정: 해당 column PK 체크 - Apply Natural Key: 실제로 어떤 개체가 갖고 있는 속성을 나타내는 컬럼을 Primary Key로 설정한 경우..

[SQL 기초] 1. 데이터 베이스 기본 개념

1. 데이터베이스와 테이블 데이터베이스: 일정한 체계 속에 저장된 데이터의 집합, 데이터는 데이터베이스 안에서 '테이블'이라는 단위로 저장 테이블: 표 형식으로 저장된 데이터의 집합 2. 테이블의 row와 column row(record, 행): 테이블에서 개체 하나를 나타내는 단위 column(field, 열): 각 개체가 갖는 속성을 나타내는 단위 3. DBMS와 SQL DBMS: 데이터베이스 관리 시스템 (Database Management System) SQL: DBMS에 명령을 내리기 위해 사용하는 언어 (Structured Query Language) 4. DBMS와 서버-클라이언트 구조 client(클라이언트 프로그램): 사용자가 server에 접속해서 원하는 데이터베이스 관련 작업을 할 수..