학과 샘플강의

My SQL - 총 19시간 35분 / 강의당평균 : 58분45초

알지오 2016. 8. 16. 09:51



My SQL
전체 : 19시간 35분 / 강의당평균 : 58분45초

01 MySQL 기본(1)
MySQL 접속/Putty 사용법/MySQL 환경확인/테스트 user 생성/SQL문 실행법/데이터베이스 생성/테이블 생성/호스팅 환경에서 테이블 생성/새로운 행 추가/insert문 사용
57분 
책갈피 : [00:00] MYSQL 이해/[00:26] 접속 준비/[00:45] PuTTY/[01:01] 이용/[01:35] Host Name/[01:46] Connection type/[02:17] Appearance 설정/[02:33] Saved Sessions/[03:00] 접속/[03:43] uname -a/[04:06] cat/[04:22] mysql -V/[04:40] VMware/[04:56] CENTOS7/[05:10] mysql -V/[05:32] 계정/[0556:] Mysql -u root -p/[06:13] 접속/[06:33] myalzio/[06:55] grant/[07:25] localhost/[07:56] mysql/[08:27] hostname/[08:40] username/[09:08] 접속/[09:23] Enter password/[10:12] 기록/[10:28] ysql -h/[11:13] 방법/[12:02] 세미콜론/[12:46] 차이/[13:22] 작성/[14:19] DATABASE sampdb/[14:52] select database/[15:03] USE sampdb/[15:51] select database/[16:02] CREATE TABLE/[16:22] president/[17:07] sampdbtxt/[18:05] /c/[18:14] show tables/[18:22] president 내용/[19:08] 날짜/[19:32] NOT NULL . NULL/[19:53] member/[20:25] member_id/[20:46] create_member.sql/[21:04] AUTO_INCREMENT/[21:18] INT/[21:26] UNSIGNED/[21:32] NOT NULL/[21:46] AUTO_INCREMENT/[22:36] PRIMARY KEY/[23:10] DESCRIBE/[23:41] INSET . LOAD DATA/[23:54] DESC/[24:03] EXPLAIN/[24:07] SHOW COLUMNS FROM/[24:20] SHOW FIELDS FROM/[24:37] LIKE/[24:55] DESCRIBE/[25:05] SHOW FULL COLUMNS FROM/[25:17] 조회 결과/[25:33] SHOW TABLES/[25:58] SHOW DATABASES/[26:26] information_schema/[26:35] sampdb/[26:42] performance_schema/[26:52] mysql/[27:11] mysqlshow/[27:57] mysql -u root/[28:17] mysqlshow sampdb/[28:56] 정리 표/[29:53] score/[30:01] student/[30:26] grade_event/[30:38] absence/[30:47] create_student.sql/[30:57] CREATE TABLE/[31:44] name(이름)/[31:57] sex(성별)/[32:56] student_id/[33:13] AUTO_INCREMENT/[33:34] PROMARY KEY/[33:47] ENGINE/[34:32] 정리 표/[34:49] 참조 무결성/[35:16] 정리/[35:51] 유사성/[36:25] create_student.sql/[36:34] SHOW TABLES/[37:01] DESCRIBE/[37:22] 정리 표/[37:34] CREATE TABLE grade_event/[37:42] date/[37:55] category/[38:08] event_id/[38:32] 정리 표/[38:43] CREATE TABLE score/[39:27] 정리 표/[40:01] PRIMARY/[40:30] FOREIGN KEY/[41:23] INDEX/[41:55] InnoDB/[42:25] 정리 표/[42:31] CREATE TABLE absence/[42:51] PRIMARY KEY/[43:13] FOREIGN KEY/[43:48] 정리 표/[44:31] 참조 순서/[45:30] show databases/[46:22] 생성/[46:34] 에러/[46:43] -umyalzio5/[47:27] mysql show/[47:50] -umyalzio5/[48:40] 데이터/[49:01] select/[49:16] 결과/[49:58] create_member.sql/[50:36] INSERT/[51:08] INSERT INTO student VALUES/[51:22] 정리 표/[52:01] 실행/[52:22] 결과 확인/[53:39] 데이터/[53:56] Query OK, 2 rows affected/[54:29] 에러 확인/[55:27] 결과 확인/[55:36] INSERT INTO student SET name/[55:55] INSERT INTO score/[56:32] 정리 표

02 MySQL 기본(2)
파일로부터 행 추가/데이터베이스 리셋/정보 검색/검색 기준 명시/NULL 값/질의 결과 정렬/질의 결과 제한/출력된 칼럼 값 계산과 이름 붙이기/날짜 다루기/패턴 매칭/사용자 정의 변수 설정과 사용/통계정보 생성
60분 
책갈피 : [00:08] insert_president.sql/[00:20] 내용/[00:42] mysql sampdb/[00:56] 데이터 확인/[01:21] member_data.txt/[01:50] LOAD DATA/[02:35] 데이터/[03:24] LOCAL/[04:12] 선택 . 실행/[04:31] LOAD DATA LOCAL INFILE 'member.txt' INTO TABLE member/[04:53] 에러/[05:10] local-infile/[05:49] mysqlimport/[06:29] LOAD DATA/[06:40] 파일 이름/[07:47] source create_member.sql/[08:31] DROP TABLE IF EXISTS member/[09:20] source create_president/[09:25] source insert_member.sql/[09:30] source insert_president.sql/[09:40] DROP/[10:07] source create_student.sql/[10:13] grade_event . score . absence . student/[10:50] cat init_all_tables.sql/[11:19] select/[11:35] 하나의 결과/[12:28] select * from student/[12:43] 출력/[12:59] DESCRIBE student/[13:26] 대문자/[13:41] 파일 이름/[14:34] 에러/[14:59] 검색방법/[15:16] where/[15:34] where Last_name = 'bush'/[16:03] 대문자/[16:10] where birth/[16:24] 조회/[17:06] state='VA' or state='MA'/[17:24] in/[17:45] null 값/[18:08] null 설명/[18:42] select null/[19:09] 비교/[19:16] is null/[19:41] is not null/[20:33] <=> null/[20:58] NOT (DEATH <=> null)/[21:19] 산술 연산/[21:41] 비교 연산/[22:33] 논리 연산/[22:53] select/[23:22] ORDER by/[23:41] 결과 확인/[24:05] DESC/[24:57] order by state DESC, last_name ASC/[25:52] 조회/[26:30] desc/[27:46] if/[28:21] 조건/[28:54] 결과 확인/[29:48] limit/[30:06] order by/[30:42] desc/[31:10] 지정/[31:34] 결과/[31:59] rand/[32:32] 연산/[32:50] select 12/[32:59] format(sprt(25+17),3)/[33:29] from president/[34:03] 결과/[34:44] AS/[35:08] 조회/[35:23] 별칭/[36:08] 실수/[36:45] 결과/[37:15] 날짜/[37:54] 검색/[38:26] 날짜 함수/[38:56] MONTHNAME/[39:18] DAYOFMONTH/[39:48] CURDATE/[40:15] 날짜간격/[40:47] order by age/[41:06] to_days/[41:46] TIMESTAMPDIFF/[42:05] DATE_ADD/[42:40] DATE_SUB/[43:26] 패턴 매칭/[44:23] 결과/[44:31] 소문자/[45:08] 언더바/[45:31] 변수/[46:31 결과확인/[47:03] 조건/[47:22] 사용자 정의 변수/[47:49] set/[48:14] DATE_SUB/[48:43] DISTINCT/[49:10] 결과 확인/[49:17] count/[49:57] count(*)/[50:20] count(*) , count(email)/[50:58] count(distinct state)/[51:28] count(*)/[51:41] wher sex='f'/[51:52] wher sex='m'/[52:16] group by sex/[52:39] group by state/[53:05] 장점/[53:37] order by/[54:06] group by state order by count desc limit 5/[55:02] group by state having count/[56:26] 결과 확인/[56:39] 통계 함수/[57:21] 결과/[57:51] WITH ROLLUP/[58:51] 결과

03 MySQL 기본(3)과 SQL 이용한 데이터 관리
기존 행의 삭제와 수정/연결 과정 단순화/질의시 타이핑 줄이기/서버 SQL 모드/MySQL 식별자 문법과 명명규칙
50분 
책갈피 : [00:00] 두개 이상의 테이블에서 데이터를 조회하는방법/[00:09] JOIN/[00:28] SUB QUERY/[00:38] JOIN 예제/[00:56] 결과 확인/[01:51] on 절/[02:32] grade_event, score/[02:43] student_id, date, scre, category/[03:46] JOIN 예제/[04:16] 결과 확인/[04:28] select 절/[05:19] MIN, MAX등 통계정보를 생성하는 쿼리/[06:50] 결과 확인/[07:09] from 절/[07:17] on 절/[07:29] group by 절/[07:39] 실행/[07:49] total/[08:51] absence/[08:34] join/[09:20] count/[09:22] 결과 확인/[10:02] LEFT JOIN/[10:37] 결과 확인/[10:53] from 절/[11:35] from 예제/[12:41] 결과 확인/[12:50] join에서 주의할 점/[13:15] where 절/[13:47] 쿼리 참조/[14:26] 결과 확인/[14:40] SELECT/[15:35] 결과 확인/[15:59] 서브 쿼리?/[16:06] where 조건/[16:32] DELETE/[17:00] where 절/[17:39] DELETE 실행/[18:52] UPDATE 문/[19:53] expiration/[20:05] UPDATE 문/[20:51] UPDATE 문/[21:05] 실행/[21:11] UPDATE 문/[21:14] NULL/[21:56] 연결 과정 단순화/[22:45] 옵션 파일 사용/[23:42] my.ini/[24:04] cd/[24:09] ls/[24:15] ls -a/[24:39] client/[25:07] host, user, password/[26:00] my.cnf 파일을 생성할 때 중요한 점/[26:37] 옵션파일을 이용해서 mysql에 접속/[26:54] 셀의 명령 히스토리 기능을 이용하는 방법/[27:30] 느낌표 문자/[27:47] 셸 alias, script/[28:31] sampdb/[29:00] 셸 스크립트/[29:46] mysql 클라이언트 프로그램/[30:43] 입력 편집 명령/[31:02] 쿼리들을 한줄로 나오게 하는 방법/[32:56] 쿼리를 작성 할 때 붙여넣기/[33:13] CREATE 문/[33:31] 붙여넣기 할 때 주의할 점/[33:49] ls -a/[34:21] mysq l로 스크립트 파일을 실행하는 방법/[35:05] order by 1,2/[35:41] 결과 확인/[35:54] mysql이 대화식모드로 동작할 때 생성하는 것과 동일한 결과를 얻는 방법/[36:12] 결과 확인/[36:37] 원하는 특정 이름의 파일을 출력하는 방법/[36:53] testq.out/[37:00] 결과 확인/[37:28] source 명령/[37:54] 서버 SQL 모드/[38:08] sql_mode/[39:10] STRICT_ALL_TABLES/[39:17] STRICT_TRANS_TABLES/[39:50] TRADITIONAL/[40:09] ANSI_QUOTE/[40:18] PIPES_AS_CONCAT/[40:32] ANSI/[41:05] 서버가 시작할 때 sql_mode를 설정하는 방법/[41:46] 실행 중 sql_mode를 변경하는 방법/[42:01] SET 문/[42:15] 전역 변수 설정/[42:57] 결과 확인/[43:13] MySQL 식별자 문법과 명명 규칙/[43:42] 식별자에 유효한 문자 사용/[45:53] ANSI_QUOTES/[46:38] IGNORE_SPACE/[47:10] 식별자 길이/[48:05] sampdb.member/[48:38] USE sampdb/[49:25] 인용 부호

04 문자 세트와 스토리지 엔진
문자세트 지정/유니코드 지원/데이터베이스 선택/데이터베이스 생성/데이터베이스 삭제/데이터베이스 변경/스토리지 엔진 특성/사용가능 스토리지 엔진 확인/디스크에서 테이블의 표현/주요 스토리지 엔진 특성
49분 
책갈피 : [00:00] SQL에서 대소문자 구분/[00:19] SQL 키워드와 함수명/[00:56] database, table, view 에 대한 이름의 규칙/[01:59] 유닉스 경우 대소문자 구분/[02:20] MAC, OS 경우 대소문자 구분여부/[02:29] view/[02:40] 저장 프로그램 이름/[02:51] 트리거 이름/[03:03] 칼럼, 인덱스 이름/[03:24] 별칭 이름/[04:50] 문자열 값/[05:19] 주의할 점/[05:34] 예제/[06:25] 문제 방지 방법/[07:33] 문자세트 지원/[08:15] 서버/[08:34] 콜레이션/[09:09] binary/[09:17] case insensitive/[10:08] 유니코드/[11:27] 서버/[11:32] CREATE DATABASE/[11:40] ALTER DATABASE/[11:44] 테이블/[11:50] CREATE TABLE, ALTER TABLE/[12:02] 문자열상수/[12:18] CHARSET 함수/[12:23] COLLATE 함수/[12:35] COLLATION 함수/[12:44] SHOW, INFORMATION_SCHEMA/[14:02] 예제/[15:11] 디폴트 문자 세트와 콜레이션 지정 방법/[15:41] CREATE TABLE 문/[15:50] 문자 세트와 콜레이션을 지정하지 않는 경우/[16:39] COLLATE 연산자/[17:32] SHOW CHARACTER SET의 결과/[17:49] SHOW COLLATION/[17:59] CHARACTER SET의 종류/[18:16] 특정 문자 SET 아는 방법/[18:59] SHOW VARIABLES/[19:14] 시스템 변수/[19:27] 유니코드 지원 사항/[20:45] utf8, ucs2/[22:12] utf16, utf32/[22:53] utf8mb4/[23:10] utf16le/[23:24] 특정 데이터베이스 선택, 생성, 삭제, 변경 방법/[23:36] SCHEMA/[23:45] USE 문/[25:41] 데이터베이스 생성/[26:54] IF NOT EXISTS/[28:47] 기존 데이터베이스 정보 보는 방법/[29:13] 데이터베이스 삭제/[29:43] 데이터베이스 변경/[30:52] 스토리지 엔진 특성/[31:23] ARCHIVE/[31:32] BLACKHOLE/[31:43] CSV/[31:51] InnoDB/[31:56] MyISAM/[32:03] MEMORY/[32:14] MERGE/[32:20] NDB/[34:04] SHOW ENGINES/[35:36] where 절/[38:01] .idb/[38:17] .MYD, .MYI/[38:32] .CSV, .CSM/[39:25] 스토리지 엔진/[40:57] MyISAM 스토리지 엔진/[42:55] MEMORY 스토리지 엔진/[45:23] NDB 스토리지 엔진/[46:12] 기타 스토리지 엔진

05 테이블의 생성, 삭제, 인덱싱
테이블 옵션/임시테이블 생성/다른 테이블이나 질의 결과로부터 생성/파티션 테이블 사용/테이블 삭제/테이블 인덱싱/스토리지 엔진의 인덱스 특성/인덱스 생성/인덱스 삭제/테이블 구조 변경
54분 
책갈피 : [00:00] CREATE TABLE/[01:32] 테이블이 저장하는 특성 변경 방법/[02:33] MyISAM/[02:49] 엔진 옵션 사용해서 테이블 만들때 주의점/[03:44] show table status/[04:14] test_tbl/[04:30] information_schema.tables/[04:41] table_schema/[05:13] 엔진 정보를 변경하는 방법/[07:03] DROP TABLE/[07:27] TEMPORARY TABLE/[10:00] DROP TABLE test_tbl/[10:56] CREATE TABLE LIKE/[11:50] CREATE TABLE SELECT/[12:49] like를 직접 사용하는 형태/[13:55] TEMPOPARY 키워드/[15:40] 각각의 경우에 따른 구조/[16:26] select 문/[17:41] 원하는 칼럼만 조회하는 방법/[17:52] 방지하는 방법/[18:18] create table select 단점/[19:14] CAST/[19:45] 허용되는 형 변환 타입/[20:01] 타입을 설정하는 방법/[21:20] 테이블 분할(table partitioning)/[21:49] CREATE TABLE 문/[21:55] PARTITION BY 절/[22:32] 범위 분할(range partitioning)/[22:56] 리스트 분할(list partitioning)/[23:17] 해시 분할(hash partitioning)/[24:12] log_partition 테이블 생성/[24:41] year/[26:00] 2023년 데이터 생성 방법/[26:48] 파티션 장소/[27:10] DATA_DIRECTORY/[27:23] 파티션에 디렉토리를 설정한 부분/[28:13] 테이블 삭제/[28:24] DROP/[29:08] DROP TABLE IF EXISTS/[29:45] SHOW WARNINGS/[31:07] 테이블 인덱싱/[31:45] 스토리지 엔진의 인덱스 특성/[33:01] 스토리지 엔진 중 인덱스 속성/[33:35] NULL값 허용/[33:41] HASH 인덱스/[34:17] FULLTEXT 인덱스/[34:41] ALTER TABLE/[34:51] 인덱스 생성/[34:58] 유니크 인덱스/[35:20] 표준(넌유니크) 인덱스/[35:27] FULLTEXT 인덱스/[35:45] SPATIAL 인덱스/[35:56] HAST 인덱스/[36:24] 인덱스 예제/[38:29] CREATE INDEX/[38:43] ALTER TABLE/[39:05] index_columns/[39:16] index_name/[39:39] PRIMARY KEY, SPATIAL/[40:45] PRIMARY KEY/[41:14] UNIQUE/[41:41] CREATE INDEX/[42:21] PRIMARY KEY, UNIQUE/[42:53] MEMORY/[43:26] BTREE/[46:04] 인덱스 삭제/[46:14] DROP INDEX/[46:58] ALTER TABLE 문/[47:31] SHOW CREATE TABLE 명령/[47:59] 칼럼 삭제, 인덱스와의 관계/[48:22] 칼럼 삭제 예제/[48:52] 테이블 구조 변경/[48:59] ALTER TABLE/[49:50] 칼럼의 자료형 변경/[51:05] 다른 스토리지 엔진으로 테이블 전환/[51:19] 스토리지 엔진 변경 이유/[51:49] 다른 엔진을 사용하도록 변경시 주의점/[53:11] 테이블 이름 변경

06 데이터베이스 메타데이터 얻기, 조인을 사용한 다중 테이블 탐색
SHOW 이용/INFORMATION_SCHEMA 이용/커맨드라인에서 프로그램 이용/내부조인/컬럼에 대한 참조 범위 한정/왼쪽 오른쪽 (외부) 조인
56분 
책갈피 : [00:00] 데이터베이스의 메타데이터 얻는 방법/[00:05] 메타데이터란/[00:18] SHOW/[00:28] INFORMATION_SCHEMA/[00:49] SHOW/[01:28] SHOW CREATE DATABASE/[01:55] SHOW TABLES/[02:17] FROM 절/[02:48] 테이블에 대한 구조를 보기 위한 방법/[03:20] DROP TABLE IF EXISTS/[03:48] CREATE TABLE 문/[04:16] SHOW COLUMNS/[04:25] SHOW INDEX/[04:39] DESCRIBE/[04:46] EXPLAIN/[04:51] 결과 확인/[04:58] SHOW TABLE STATUS/[05:55] SHOW 문/[06:01] LIKE 절/[06:46] 언더바(_)가 붙어있는 칼럼 조회 방법/[07:01] 결과 확인/[08:18] WHERE 절/[09:21] SHOW TABLES LIKE 'member'/[09:42] FROM 절/[12:21] SHOW TABLE STATUS/[12:37] SHOW CREATE TABLE/[12:51] INFORMATION_SCHEMA 데이터 이용 방법/[14:50] INFORMATION_SCHEMA에 포함된 테이블 목록/[15:29] FILES/[15:38] TABLE_CONSTRAINTS, KEY_COLUMN_USAGE 테이블/[15:58] TABLE_CONSTRAINTS 테이블/[17:50] STATISTICS/[17:57] REFERENTIAL_CONSTRAINIS/[18:02] CHARACTER_SETS, COLLATIONS/[18:26] COLLATION_CHARACTER_SET_APPLICABILITY/[18:47] ENGINES, PLUGINS/[19:31] TRANSACTIONS/[19:38] XA, SAVEPOINTS/[20:03] SCHEMA_PRIVILEGES/[21:01] GLOBAL_VARIABLES/[21:29] SESSION_STATUS/[21:45] PROCESSLIST/[24:05] 스토리지 엔진값을 확인하는 쿼리/[24:45] mysqlshow/[25:52] --keys 옵션/[26:09] --status 옵션/[26:20] mysqldump 명령어/[27:29] INSERT INTO/[28:26] --no-data 옵션/[28:41] 조인 사용 다중테이블 탐색/[28:45] SELICT 절/[29:06] FROM 절/[29:10] WHERE 절/[29:45] GROUP BY 절, ORDER BY 절/[29:52] HAVING 절/[30:00] LIMIT 절/[34:34] where/[34:54] USING 절/[37:35] 두 테이블 외부 join 방법/[39:09] inner join/[39:12] left join/[40:46] right join/[41:57] is null/[43:13] student 테이블/[43:19] grade_event 테이블/[43:26] score 테이블/[45:11] 쿼리 예제/[45:21] INNER JOIN/[45:37] LEFT JOIN/[48:30] SELECT 절/[49:05] FROM 절/[49:32] WHERE 절/[49:55] ORDER BY 절/[50:45] INNER JOIN/[50:57] on 절/[52:17] 결과 확인/[53:35] SELECT 절/[53:48] LEFT JOIN/[54:45] 쿼리 확인

07 서브 질의를 사용한 다중 테이블 검색 수행, UNION을 사용한 다중 테이블 검색 수행, 트랜잭션 수행
상대 비교 연산자를 이용한 서브 질의/IN과 NOT IN 서브 질의/ALL, ANY, SOME 서브 질의/EXISTS와 NOT EXISTS 서브 질의/상관 서브 질의/FROM절의 서브 질의/서브 질의를 조인으로 재작성
55분 
책갈피 : [00:00] 서브 질의를 사용한 다중 테이블 검색/[00:12] 쿼리 예시/[01:01] 서브 쿼리 분류/[01:07] scalar subquery/[01:17] column subquery/[01:38] row subquery/[01:54] table subquery/[02:26] 상대 비교 연산자 이용 서브 질의/[02:57] 서브 쿼리 예제 1/[04:56] 서브 쿼리 예제 2/[05:47] MIN/[06:15] 평균(AVG)을 사용한 예제/[06:36] 단일 행 예제/[07:26] 결과 확인/[07:29] where 조건/[07:48] IN과 NOT IN 서브 질의/[07:59] IN 예제/[09:29] 결과 확인/[09:53] ALL, ANY, SOME 서브 질의/[09:59] ALL, ANY 연산자/[11:02] SOME/[12:10] 결과 확인/[12:58] 행 생성자를 사용하는 쿼리/[13:45] NOT IN과 동일한 방법/[14:20] 결과 확인/[14:27] EXISTS와 NOT EXISTS 서브 질의/[15:39] 상관 서브 질의/[15:52] 예제/[16:05] 비상관 서브 질의란/[17:40] 상관 서브 질의/[19:16] EXISTS 서브 질의/[20:33] NOT EXISTS/[20:42] FROM절의 서브 질의/[21:57] 서브 질의를 조인으로 재작성/[22:26] 쿼리 예문/[23:01] 조인을 이용한 변경 예제/[23:30] 결과 확인/[23:40] IN이 들어간 쿼리/[24:02] 조인을 이용한 변경 예제/[24:28] 두 쿼리 비교/[24:59] 주의할 점/[26:03] 차이점 극복 방법/[26:14] 매칭 되지 않는 값 검색하는 서브 질의 재작성/[27:05] 결과 확인/[27:10] 조인을 이용한 변경 예제/[27:14] LEFT JOIN/[27:50] 결과 확인/[28:09] IN, NOT IN/[28:31] UNION을 사용한 다중 테이블 검색/[28:45] UNION 문 작성 방법/[28:58] 주의할 점/[29:25] 결과 확인/[30:03] 예제/[30:05] UNION/[32:46] UNION DISTINCT/[32:59] UNION ALL/[34:05] 주의 사항/[34:07] ORDER BY/[34:52] 결과 확인/[35:15] LIMIT 사용하는 방법/[35:59] 결과 확인/[37:08] 여러 테이블 삭제와 수정/[37:14] delete 절/[37:45] 예제/[39:44] LEFT JOIN/[40:18] delete 문/[41:19] USING/[41:57] 매칭되지 않는 행 삭제/[42:23] update/[45:38] 트랜잭션 수행/[45:43] 트랜잭션이란/[46:11] commit, rollback/[46:27] rollback/[48:34] rollback/[48:52] ACID 특성/[48:58] Atomicity (원자성)/[49:17] consistency (일관성)/[50:05] isolation (고립성)/[50:39] durability (지속성)/[51:22] 스토리지 엔진/[52:56] 트랜잭션 사용법/[53:02] autocommit/[53:54] START TRANSACTION/[54:11] COMMIT/[54:55] 비활성화 상태일 경우

08 트랜잭션 수행, 외래키와 참조 무결성
트랜잭션 사용/트랜잭션에 세이브포인트 사용/트랜잭션 격리/외래키 개념/InnoDB에서 사용
47분 
책갈피 : [00:07] 트랜잭션 사용/[00:31] START TRANSACTION/[00:46] COMMIT/[01:27] START TRANSACTION/[01:37] 새로운 클라이언트 실행/[02:24] have_innodb/[02:42] InnoDB 엔진 활성/[03:38] Empty set/[03:58] commit/[04:30] ROLLBACK 했을 경우/[05:06] ROLLBACK/[05:50] SET 문, autocommit/[07:00] drop/[07:14] insert/[07:39] select/[08:14] insert/[08:25] ROLLBACK/[08:50] autocommit이 비활성화 상태일 경우/[09:45] LOCK TABLES/[11:33] score 변경/[11:36] update 문/[12:14] START TRANSACTION/[12:27] autocommit 모드/[12:55] 트랜젝션에 SAVEPOINT 사용/[13:28] transaction/[13:20] 예제/[15:05] 트랜잭션 격리/[15:54] 테이블 단위, 행 단위/[16:54] 격리수준/[17:23] 동시수행 문제점/[17:32] 더티 읽기 (Dirty reads)/[17:47] 비반복적 읽기 (Nonrepeatable reads)/[18:18] 유령 행 (Phantom rows)/[19:01] 트랜잭션 격리 수준/[19:29] READ UNCOMMITTED/[19:46] READ COMMITTED/[19:58] REPEATABLE READ/[20:29] SERIALIZABLE/[22:07] transaction-isolation 옵션/[23:20] 외래키와 참조 무결성/[23:23] 외래키(foreign key)란/[23:55] 예문/[26:44] 부모-자식 관계/[28:25] 자식 테이블에서 외래키 정의 문법/[28:30] CONSTRAINT/[28:47] FOREIGN KEY/[29:19] on DELETE action, on UPDATE action/[32:01] on DELETE NO ACTION, RESTRICT/[32:35] on DELETE CASCADE/[33:10] on DELETE SET NULL/[33:55] on DELETE SET DEFAULT/[34:08] on UPDATE/[34:45] 외래키 설정 시 주의점/[35:11] CHAR 칼럼/[35:20] INT 칼럼/[35:31] 문자열 칼럼/[35:50] 테스트 테이블/[35:57] parent 테이블/[36:10] child 테이블/[36:43] on DELETE CASCADE, on UPDATE CASCADE/[37:45] 실제 데이터 insert/[40:21] 실행 후 parent 테이블 확인/[41:05] update/[44:26] on DELETE SET NULL, on UPDATE SET NULL/[45:29] child 조회/[46:03] show create table/[46:36] LATEST FOREIGN KEY ERROR

09 FULLTEXT 탐색 사용, 데이터 값 카테고리
자연어 FULLTEXT 탐색/불리언 모드 FULLTEXT 탐색/질의 확장 FULLTEXT 탐색/숫자 값/문자열 값/문자열 타입과 문자세트 지원
49분 
책갈피 : [00:00] FULLTEXT 탐색 기능/[00:24] 자연어 탐색(기본값)/[00:39] 불리언 모드 탐색/[00:57] 질의 확장 탐색/[01:10] FULLTEXT 탐색의 특징/[01:23] FULLTEXT 인덱스/[02:58] the, after, ather/[03:43] 단어의 구분/[06:51] 스크립트/[06:53] CREATE TABLE/[08:18] CREATE TABLE/[08:20] LOAD DATA/[08:32] FULLTEXT/[08:43] CREATE TABLE/[08:47] LOAD DATA/[09:02] FULLTEXT/[09:21] 자연어 FULLTEXT 탐색/[09:28] 자연어 FULLTEXT 탐색 문법/[09:37] MATCH, AGAINST/[09:59] 결과 확인/[10:15] 쿼리 예제/[10:23] 결과 확인/[10:33] 쿼리 예제/[10:37] MATCH 절, AGAINST/[10:56] 결과 확인/[11:55] count/[12:22] MATCH/[13:29] MATCH, AGAINST/[13:41] 결과 확인/[15:04] 불리언 모드 FULLTEXT 탐색/[16:35] attribution, phrase/[16:58] AGAINST/[17:44] BOOLEAN MODE/[17:54] 결과 확인/[18:48] 질의 확장 FULLTEXT 탐색/[19:07] 자연어 탐색, 확장 탐색/[19:25] 자연어 검색/[19:53] WITH QUERY EXPANSION/[21:07] FULLTEXT 탐색 엔진의 환경 구성/[21:26] ft_min_word_len, ft_max_word_len/[22:38] 인덱스 재구성 REPAIR TABLE/[23:24] 호스팅 환경/[23:29] my.cnf/[23:50] REPAIR TABLE/[24:52] int_col/[25:11] insert 문/[25:45] concat/[26:48] 데이터 값 카테고리/[27:10] 숫자 값/[30:07] 비트필드 값/[31:22] 문자열 값/[32:09] ANSI_QUOTES SQL모드/[33:05] 확장 문자열/[36:16] 16진수 표기법/[36:22] X'val'/[38:10] 0xval/[39:54] 문자열 타입과 문자세트 지원/[40:16] 이진 문자열/[40:59] 이진이 아닌 문자열/[42:09] TEXT 타입/[42:17] 유니크 TEXT 인덱스/[42:50] 문자 단위/[43:15] 유니코드/[43:23] ucs2, utf8/[43:51] SHOW CHARACTER SET/[44:19] SHOW COLLATION/[44:26] 결과 확인/[45:17] ci/[45:39] cs/[45:48] bin/[46:27] 이진 문자열, 이진이 아닌 문자열/[47:47] 이진이 아닌 문자열 정렬 속성/[48:35] 콜레이션/[48:50] 비교연산/[48:53] 정렬, ORDER BY, MIN(), MAX()/[48:59] 분류, GROUP BY, DISTINCT

10 데이터 값 카테고리, MySQL 자료형
문자세트와 관련된 시스템 변수/시간적인 값/공간 값/불리언 값/NULL 값/테이블 정의에서 칼럼 타입 지정/칼럼 기본 값 지정/숫자 자료형/정확값 숫자 자료형/근삿값 숫자 자료형/BIT 자료형
53분 
책갈피 : [00:33] binary, utf8/[00:39] character_set_system/[00:54] character_set_server, collation_server/[01:11] character_set_database, collation_database/[02:05] character_set_client/[02:47] character_set_connection/[03:41] collation_connection/[04:00] LOAD DATA/[04:52] CHARSET, COLLATION 함수/[05:37] _charset/[07:24] character_set_connection/[07:53] 예문/[08:23] CONVERT/[09:53] CONVERT/[10:54] 결과 확인/[10:57] CHAR_LENGTH, LENGTH 함수/[12:28] 이진 문자열, 이진 콜레이션을 지정한 이진이 아닌 문자열/[12:58] SHOW COLLATION/[14:42] 이진 문자열 지정 예/[14:50] 이진 콜레이션을 지정한 이진이 아닌 문자열 예/[15:15] UPPER 함수/[16:19] CONVERT/[16:50] CHAR_LENGTH, LENGTH/[17:39] cilent/[17:58] results, connection/[18:11] SET NAMES 'utf8'/[18:49] CONVERT/[18:57] CHAR_LENGTH와 LENGTH 비교/[19:31] CHARSET, COLLATION/[20:13] LANG, LC_ALL/[20:40] SET NAMES/[20:52] 제약사항/[21:17] CHARSET, COLLATION 관계/[22:35] 시간 값/[23:53] 공간 값/[24:07] 예제/[24:28] 불리언 값/[25:54] NULL 값/[26:13] 예제/[26:29] MySQL 자료형/[26:45] 칼럼 자료형/[27:35] 숫자 자료형/[27:38] TINYINT, SMALLINT/[27:46] MEDIUMINT, INT/[27:55] BIGINT, DECIMAL/[27:59] FLOAT, DOUBLE, BIT/[28:20] 문자열 자료형/[28:52] CHAR, VARCHAR/[29:03] BINARY, VARBINARY/[29:09] BLOB, MEDIUMBLOB, LONGBLOB/[29:29] TINYTEXT, TEXT/[29:38] MEDIUMTEXT, LONGTEXT/[29:48] ENUM, SET/[30:09] 시간적인 자료형/[30:11] DATE, TIME/[30:16] DATETIME, TIMESTAMP, YEAR/[30:37] 테이블 정의에서 칼럼 타입 지정/[31:13] col_name/[32:13] col_type/[32:24] TINYINT/[33:26] 칼럼 기본 값 지정 방법/[33:39] DEFAULT/[34:10] TIMESTAMP, DATETIME/[34:50] 칼럼의 묵시적 디폴트 값/[36:14] SHOW CREATE TABLE/[36:44] 숫자 자료형/[36:59] 정확값 타입/[37:26] DECIMAL 타입/[37:53] 부동소수점 타입, 단정도, 배정도/[38:33] BIT 타입/[39:18] 숫자 자료형의 범위/[40:14] 부호가 있는 값, 없는 값/[41:22] TINYINT 부호가 없는 경우/[42:02] TINYINT 부호가 있는 경우/[43:30] SMALLINT 부호가 없는 경우/[43:43] SMALLINT 부호가 있는 경우/[44:20] 숫자 자료형의 범위/[45:33] 표기법/[46:08] BIT/[47:30] DECIMAL/[47:56] DECIMAL, NUMERIC, FIXED/[50:13] 근사값 숫자 자료형/[50:16] FLOAT, DOUBLE, DOUBLE PRECISION/[50:25] REAL/[51:05] BIT 자료형/[51:51] 주의할 점/[52:01] BIT 필드 값에 출력 가능한 형태 보는 방법/[52:26] BIN 함수/[52:41] 결과 확인

11 MySQL 자료형
숫자 자료형 속성/숫자 자료형 선택/문자열 자료형/CHAR와 VARCHAR 자료형/BINARY와 VARBINARY 자료형/BLOB와 TEXT 자료형/ENUM과 SET 자료형
54분 
책갈피 : [00:00] 숫자 자료형 속성/[00:09] UNSIGNED/[01:04] TINYINT, TINYINT UNSIGNED/[02:11] UNSIGNED/[02:41] SIGNED/[03:19] ZEROFILL/[05:30] AUTO_INCREMENT/[06:52] create table 문/[07:19] AUTO_INCREMENT/[08:49] DEFAULT/[09:36] 숫자 자료형 선택/[10:18] TINYINT/[10:25] MEDIUMINT, INT/[10:48] BIGINT/[11:02] DOUBLE, FLOAT/[11:54] 스트릭트 SQL 모드/[13:06] INT/[13:31] 고정 소수점, 부동 소수점 칼럼 경우/[14:46] 문자열 자료형/[15:27] 문자열 값을 선언하기 위한 타입/[15:44] M, L/[16:12] w/[16:39] BLOB, TEXT/[16:51] 문자 저장할 경우/[16:53] BINAYR, VARBINARY/[17:18] 복수 바이트 문자/[17:26] 2진 문자열 타입과 2진이 아닌 문자열 타입/[17:58] 2진이 아닌 문자열 타입/[18:01] ENUM, SET/[18:16] BINAYR, CHAR/[19:31] 그 외 문자열 타입/[21:38] ENUM, SET/[22:15] 자료형 특징/[22:21] CHAR, VARCHAR/[23:28] PAD_CHAR_TO_FULL_LENGTH/[23:54] CHAR 칼럼/[24:41] VARCHAR/[25:32] CHAR, VARCHAR 원칙/[26:51] BINAYR, VARBINARY/[27:39] BINAYR/[28:02] VARBINARY/[28:14] BLOB, TEXT/[28:34] BLOB 타입 종류/[28:39] TINYBLOB, BLOB, MEDIUMVBLOB, LONGBLOB/[29:32] TEXT/[29:40] TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT/[29:46] BLOB, TEXT 유사점/[30:08] TEXT/[30:45] BLOB 값 비교/[30:50] TEXT 값 비교/[31:05] TEXT 타입의 최대크기/[31:48] InnoDB, MyISAM 스토리지 엔진/[32:24] FULLTEXT/[32:40] MEMORY TABLE/[33:34] OPTIMIZE TABLE/[33:52] max_sort_length/[35:05] max_allowed_packet/[35:30] mysql, mysql dump/[35:41] ENUM, SET 자료형/[35:59] ENUM, SET 사용 형식/[36:33] ENUM, SET 차이점/[37:25] 예제문/[37:58] ENUM, SET 구분 예/[38:09] ENUM 예제문/[38:33] SET 예제문/[40:15] 리스트 정의시 주의할 점/[42:18] 참고사항/[44:19] ENUM 칼럼 테이블/[45:12] 결과 확인/[45:52] 쿼리문/[46:10] 열거형 예제문/[48:09] SET 내부 저장/[48:51] 결과 확인, ENUM과의 차이점/[51:29] insert 예제문/[51:38] 결과 확인/[51:46] 동일한 값 여러번 넣을 경우/[51:58] 결과 확인/[52:50] ENUM과 SET의 정렬/[52:54] enum 예제문/[53:02] 결과 확인/[53:23] e와 e+0 함께 출력 예제문/[53:49] CAST

12 문자열 자료형과 시간적인 자료형
문자열 자료형 속성/문자열 자료형 선택DATE, TIME, DATETIME 자료형/TIMESTAMP 자료형/YEAR 자료형/시간적인 자료형 속성/시간적인 타입의 소수점 이하 초의 기능/시간적인 타입의 자동 속성/시간적인 값으로 작업/모호한 연도 값 해석
58분 
책갈피 : [00:00] 문자열 자료형 속성/[00:12] CHARACTER SET, COLLATE/[01:00] 2진 문자열 자료형이란/[02:19] CHARACTER SET/[04:01] SHOW CREATE TABLE/[04:47] SHOW FULL COLUMNS/[05:06] 문자 세트/[06:07] binary/[06:20] 칼럼 정의/[06:28] CHAR, BINARY/[06:42] VARCHAR, TEXT, BLOB/[07:29] CHARACTER SET latin1, ucs2/[07:39] ASCII, UNICODE/[08:00] NULL, NOT NULL/[08:29] DEFAULT/[08:53] CHARACTER SET/[09:02] 문자열 자료형 선택/[09:05] 값이 문자 또는 이진 데이터/[09:28] 대소문자 구분 비교/[10:50] 대소문자 예제/[12:51] 대소문자 예제/[13:07] 저장 크기의 요구 사항/[13:25] 허용된 값 집합/[13:35] ENUM/[14:05] 후행 패딩 값 고려사항/[14:21] TEXT, VARCHAR, VARBINARY/[15:06] 문자열 자료형 저장, 검색시 후행 공백/[16:05] 시간적인 자료형/[16:11] 시간적인 자료형 종류/[16:30] MY-SQL 5.6 변경/[18:02] DATE/[18:07] TIME, DATETIME/[18:12] TIMESTAMP, YEAR/[20:37] SQL, ISO 8601/[20:58] DATE_FORMAT, TIME_FORMAT/[21:39] STR_TO_DATE/[23:03] DATE, TIME, DATETIME/[25:13] 예제/[25:32] 결과 확인/[25:48] 주의할 점/[26:24] DATETIME 시간 처리/[26:42] TIME 시간 처리/[27:30] 예제/[27:58] 결과 확인/[29:01] TIMESTAMP/[31:06] 예제/[31:41] time_zone/[32:30] YEAR/[33:40] YEAR(2)/[34:29] YEAR(4)/[35:14] TINYINT/[35:36] SMALLINT/[36:05] 시간적인 자료형의 속성/[36:10] NULL, NOT NULL, DEFAULT/[37:09] 소수점 이하 초의 기능/[37:21] TIME, DATETIME, TIMESTAMP/[38:47] CURTIME/[40:15] 시간적인 자료형의 자동 속성/[40:19] TIMESTAMP, DATETIME/[40:29] 자동초기화/[40:43] 자동업데이트/[42:35] 쿼리 비교/[44:09] NOW/[45:51] create table 문/[45:58] ts_created, ts_modified/[47:35] on UPDATE CURRENT_TIMESTAMP/[48:16] 예제/[48:25] 결과 확인/[48:34] 최신버전에서 ts_created 속성 변경/[49:14] on UPDATE/[49:30] TIMESTAMP/[49:45] 시간적인 값으로 작업/[50:14] 예제/[50:53] 문자열 형태일 경우/[51:12] 숫자 값/[51:33] 문자열 숫자 값을 DATE로 해석/[51:45] 문자열 숫자 값을 DATETIME으로 해석/[52:18] DATE, DATETIME, TIMESTAMP 제약사항/[53:04] TIMESTAMP/[53:46] 모호한 연도 값 해석/[54:29] 연도 값 규칙/[54:59] YEAR/[56:15] 쿼리 확인/[57:28] 이전 버전 확인/[58:07] 결론

13 MySQL의 유효하지 않은 데이터 값 처리 방식
시퀀스로 작업/일반적인 AUTO_INCREMENT 속성/스토리지 엔진에 따른 AUTO_INCREMENT 속성/AUTO_INCREMENT 칼럼에 대해 고려해볼 문제/AUTO_INCREMENT 칼럼 작업에 유용한 팁/AUTO_INCREMENT없이 시퀀스 생성
49분 
책갈피 : [00:00] GIGO/[01:10] 유효하지 않은 데이터 값 처리 방식/[01:17] 숫자 또는 TIME 칼럼/[01:40] TIME이 아닌 시간적인 칼럼/[02:14] ENUM이나 SET을 제외한 문자열 칼럼/[02:39] ENUM이나 SET/[03:41] WARNING/[04:14] SHOW WARNING/[04:27] SQL 모드/[05:11] 트랜잭션 비지원 테이블/[08:00] ERROR_FOR_DIVISION_BY_ZERO/[08:28] NO_ZERO_DATE/[08:46] NO_ZERO_IN_DATE/[09:25] TRADITIONAL/[09:58] ALLOW_INVALID_DATES/[11:02] INSERT IGNORE/[11:47] 시퀀스로 작업/[12:08] AUTO_INCREMENT/[12:36] 일반적인 AUTO_INCREMENT 속성/[12:54] AUTO_INCREMENT 정의/[13:50] AUTO_INCREMENT 동작/[14:49] LAST_INSERT_ID 함수/[16:17] INSERT DELAYED/[17:44] NO_AUTO_VALUE_ON_ZERO SQL 모드/[19:49] 스토리지 엔진에 따른 AUTO_INCREMENT 속성/[20:02] MyISAM 테이블의 AUTO_INCREMENT/[20:50] TRUNCATE TABLE/[21:21] CREATE TABLE, AUTO_INCREMENT/[24:01] 복합인덱스 사용 지원/[24:19] 예제/[27:59] InnoDB테이블의 AUTO_INCREMENT/[28:10] 시작 값/[28:36] 삭제된 값/[30:17] 시퀀스 간격/[30:49] 복합인덱스/[31:07] MEMORY 테이블의 AUTO_INCREMENT/[31:18] 시작 값/[31:32] 삭제된 값/[31:44] 복합인덱스/[31:49] AUTO_INCREMENT 칼럼 사용 주의점/[31:56] 양의 정수 시퀀스/[32:16] UNSIGNED/[32:49] 칼럼 자료형/[33:13] TINYINT/[33:39] TRUNCATE TABLE/[34:34] DELETE WHERE 절/[35:13] AUTO_INCREMENT 칼럼 작업의 팁/[35:21] 시퀀스 번호 칼럼 추가/[35:50] alter table 문/[36:48] 시퀀스 재생성/[37:18] 예제/[38:48] auto_increment/[40:12] 시퀀스 생성/[40:27] LAST_INSERT_ID/[42:01] 다음 시퀀스 생성 방법/[42:30] LAST_INSERT_ID/[43:26] 예제/[44:34] counter/[44:54] name, value/[45:24] counter/[46:28] on DUPLICATE KEY UPDATE/[47:12] LAST_INSERT_ID/[48:44] LAST_INSERT_ID

14 수식 계산과 타입 변환
연산자 타입/연산자 우선순위/수식 안의 NULL값/타입 변환 기본
55분 
책갈피 : [00:00] 수식 계산과 타입 변환/[00:50] 예제/[00:59] where 절/[01:19] insert values/[01:53] 날짜 타입/[02:11] 수식 작성/[02:33] funtion/[02:56] 스칼라 서브 질의/[03:22] 연산자 타입/[03:24] 산술 연산자/[05:41] 논리 연산자/[06:11] AND, OR, XOR, NOT/[07:09] 바 두개/[07:24] 예제/[07:34] 결과 확인/[08:10] concat/[08:17] 두 문자열을 하나의 문자열로 합칠 때 주의점/[09:13] PIPES AS CONCAT 모드/[09:28] 비트 연산자/[11:02] 비교 연산자/[12:08] IN/[12:18] BETWEEN, NOT BETWEEN, LIKE/[12:27] NOT LIKE, REGEXP, NOT REGEXP/[12:40] IS NULL, IS NOT NULL/[12:45] 예제/[13:26] NULL/[13:42] like/[14:11] BINARY/[14:40] select 테스트/[15:28] 로컬 환경 테스트/[16:00] binary 테스트/[16:23] 로컬 환경 테스트/[16:51] 해당 문자열만 콜레이션 변경/[17:52] 결과 확인/[18:02] 퍼센트, 언더바/[18:14] 예제/[19:14] 테스트/[19:19] REGEXP/[20:12] 대괄호에 문자열 나열/[20:37] 결과 확인/[20:48] 문자 범위 지정/[21:07] 비교/[21:18] 에스티리스크(별표)/[22:28] 결과 확인/[22:34] 예제1/[23:13] 예제2/[23:42] 예제3/[24:17] REGEXP 중요 예제/[24:56] like/[25:35] 에스티리스크(별표)를 플러스로 변경/[26:00] 꺽쇠, 달러/[26:27] 꺽쇠pattern, pattern달러, 꺽쇠pattern달러/[27:04] 예제/[27:13] 문자 앞에 꺽쇠를 붙인 경우/[27:24] 문자 뒤에 달러를 붙인 경우/[27:34] 꺽쇠와 달러를 문자의 앞,뒤로 붙인 경우/[27:58] 문자 사이에 점을 넣은 경우/[28:17] 꺽쇠 용도/[28:28] 연산자 우선순위/[29:53] INTERVAL/[30:41] BINARY, COLLATE/[30:57] COLLATE/[31:22] 부정, 부호연산자/[31:44] MOD/[32:40] 수식 안의 NULL값/[33:11] 예제/[33:47] 1 OR NULL/[34:00] 0 AND NULL/[35:51] 결과 확인/[36:10] 비교연산자, 패턴 대행/[36:35] 예외/[37:30] NULL IS NULL/[38:00] 함수 NULL/[38:13] IFNULL, STRCMP/[38:44] 정렬/[39:08] 타입 변환/[39:39] 피연산자, 함수의 인수, 테이블 칼럼/[41:09] 예제/[42:00] concat/[43:09] repeat/[44:00] select, 결과 확인/[44:10] concat/[44:52] 숫자, 문자열, 날짜와 시간/[46:11] 16진 상수/[47:36] 결과 확인/[47:45] 16진 상수 비교/[49:16] 결과 확인/[49:22] 0xff + 0/[50:06] 결과 확인/[50:26] 16진 상수를 문자열로 임의 변경/[51:24] CONVERT 함수/[51:34] 특정 연산자/[52:05] 문자열을 숫자로 변환/[52:59] warning/[53:11] 시간 + 0/[53:48] 결과 확인

15 타입 변환, 뷰와 저장 프로그램
타입 변환 심화/시간적인 값 해석 규칙/타입 변환을 확인하거나 강제로 수행/뷰 사용/저장 프로그램 사용/복합문과 질의문 구분자/저장 함수와 프로시저/저장 함수와 프로시저 권한/저장 프로시저 파라미터 타입
55분 
책갈피 : [00:00] 심화 과정/[00:51] 숫자가 포함된 문자열 + 0 예제/[01:07] 결과 확인/[01:22] 비트 연산자/[02:36] 결과 확인/[02:50] 패턴 매칭 연산자/[03:30] REGEXP/[04:14] 결과 확인/[04:22] 비교 연산자/[05:21] 결과 확인/[05:35] 문자와 숫자 섞여 있을 때 비교/[06:03] 결과 확인/[06:10] 시간적인 값 해석 규칙/[06:14] 문자열과 숫자를 날짜와 시간값으로 변경/[06:51] insert/[07:22] to days/[07:41] 타입 변환 확인, 강제 수행/[07:48] select/[08:28] create table/[08:37] describe/[09:19] delete/[09:41] select/[11:17] where/[11:33] 타입 변환/[11:55] 숫자값으로 변환/[12:09] 결과 확인/[12:29] 숫자의 소수부/[12:35] FLOOR, CAST/[12:59] 결과 확인/[13:43] 값을 문자열로/[13:48] CAST, CONCAT/[13:53] select 15, CAST, CONCAT/[14:57] 숫자를 16진 문자열로 HEX/[15:05] 결과 확인/[15:45] ASCII/[15:53] 결과 확인/[15:57] CHAR/[16:07] DATE ADD, INTERVAL/[16:13] 결과 확인/[17:12] CURDATE/[17:19] CURTIME/[17:32] CAST/[17:45] 문자열 관련 함수/[17:48] CONVERT/[17:59] CHARSET/[18:34] 결과 확인/[19:12] HEX, CONVERT/[20:06] COLLATION, COLLATE/[20:50] CONVERT/[21:13] 뷰와 저장 프로그램/[22:37] 저장함수/[22:55] 저장프로시저/[23:12] 트리거/[23:27] 이벤트/[23:47] 블록, 루프, 조건문등 복합문/[24:03] 프로그램 코드 생성/[24:24] 에러 처리/[24:36] 뷰 사용/[24:49] select 문/[24:53] CREATE VIEW/[25:47] 에스티리스크(별표)/[27:31] 칼럼 이름 지정/[27:54] view/[28:59] view, 통계데이터/[29:21] 특정 날짜 정보/[29:53] create table t/[29:59] insert into t, values/[30:04] create view v as select i from t/[30:54] select/[30:59] update/[32:14] grade stats/[32:52] 저장 프로그램 사용/[33:05] 복합문/[34:31] create procedure greetings/[34:36] begin, end/[34:48] declare/[35:09] current user/[36:28] substring/[37:33] concat/[38:08] delimiter/[39:39] CALL/[40:07] delimiter/[40:44] 복합문/[41:03] 저장 함수와 프로시저/[41:53] CREATE FUNCTION/[42:16] CREATE PROCEDURE/[42:54] count born in year/[43:18] return/[44:45] 예제/[45:12] 저장 프로시저/[45:23] 프로시저 생성/[46:03] call/[46:43] 예제/[47:30] call update expiration/[48:07] 저장 함수와 프로시저 권한/[49:26] 함수 결정적/[50:39] set/[50:59] 저장 프로시저 파라미터 타입/[51:15] IN/[51:22] OUT/[51:40] INOUT/[51:54] OUT/[52:26] set/[52:49] call/[53:29] 결과 확인/[54:52] IN, OUT, INOUT

16 뷰와 저장 프로그램, 질의 최적화
트리거/이벤트/뷰와 저장 프로그램 보안/인덱스 사용/인덱스의 이점/인덱스의 단점
50분 
책갈피 : [00:00] 트리거/[00:39] CREATE TRIGGER/[01:11] BEFORE, AFTER/[01:47] trigger name 지정/[02:34] new.col name, old.col name/[03:10] SET NEW.col name/[04:34] table t 생성/[04:58] trigger/[05:09] before, insert/[06:04] percent/[07:09] set, timestamp/[07:37] insert/[07:56] values/[08:32] do sleep/[09:20] 이벤트/[10:19] event scheduler on/[10:34] SHOW VARIABLES LIKE/[10:46] event scheduler on/[11:48] 서버 에러 로그 작성/[12:37] AT, EVERY, interval, DO/[13:09] 실습/[13:27] create table/[13:31] id, num int, last visit datetime/[14:21] EVERY expr interval/[14:48] STARTS, ENDS/[15:18] 예제/[15:26] do/[15:32] delete/[16:17] AT datetime/[16:36] ALTER EVENT/[17:00] 뷰와 저장 프로그램 보안/[18:03] 예제/[18:13] EXECUTE 권한, CALL/[19:32] create DEFINER/[20:22] SQL SECURITY/[22:36] current user/[23:09] 질의 최적화/[23:13] 데이터베이스/[23:17] 테이블, 행과 칼럼의 집합/[24:12] 질의를 빠르게 하는 방법/[24:16] 테이블에 인덱스/[24:35] EXPLAIN/[24:46] 자료형과 테이블 저장공간 형식/[25:17] 인덱스 사용/[25:48] 인덱스 없는 테이블/[26:27] birth 인덱스 추가/[27:39] death 인덱스 추가/[28:29] MyISAM, InnoDB 차이점/[28:32] MyISAM/[28:56] InnoDB/[29:23] join/[30:43] where/[33:42] 인덱스 사용 방식/[34:29] order by, group by 작업/[34:39] 질의에 필요한 모든 값을 얻을 때/[34:47] 예제/[35:28] 인덱스 사용의 단점/[35:32] 입력 속도, 삭제 속도 저하/[36:20] 디스크 공간 차지/[36:43] 인덱스 선택/[38:05] join/[38:13] where/[39:19] 칼럼 카디널리티 고려/[41:03] 예제/[41:16] count/[41:49] 짧은 값들을 인덱스함/[42:00] mediumint/[42:11] char/[43:28] 클러스터 인덱스 InnoDB/[43:47] 문자열 값의 접두사를 인덱스/[43:57] char/[44:28] create table/[44:44] 복합인덱스 가장 왼쪽 접두사 이용/[45:49] 과도한 사용 자제/[47:39] 인덱스 타입/[48:10] 해시 인덱스/[48:48] B tree 인덱스/[49:43] USING BTREE/[49:49] strcmp

17 질의 최적화
MySQL 질의 옵티마이저/옵티마이저 작업 방식/옵티마이저 작업 확인을 위해 EXPLAIN 사용/효율적인 질의를 위한 자료형
56분 
책갈피 : [00:00] MySQL 질의 옵티마이저/[01:08] EXPLAIN/[01:25] 결과 확인/[02:55] 옵티마이저 작업 방식/[03:37] 쿼리 확인/[05:21] 가이드라인/[05:29] 테이블 분석/[06:28] ANALYZE TABLE/[07:15] EXPLAIN/[07:39] 힌트, 변경/[07:47] USE INDEX, IGNORE INDEX/[08:38] STRAIGHT JOIN/[11:22] 동일한 자료형 갖는 칼럼 비교/[11:38] INT, BIGINT 비교/[11:52] CHAR, VARCHAR 비교/[12:13] 비교식에서 인덱스 사용 칼럼 분리/[12:22] where/[14:15] 예제/[14:18] where/[15:31] 특정일 범위 값 갖는 행 찾는 타입의 비교 표현 방법 1/[16:11] 특정일 범위 값 갖는 행 찾는 타입의 비교 표현 방법 2/[16:50] 특정일 범위 값 갖는 행 찾는 타입의 비교 표현 방법 3/[17:39] LIKE 패턴/[17:57] 예제/[18:40] 예제/[19:31] 옵티마이저 적합한 영역 이용/[19:39] 조인, 서브질의/[20:16] 질의 형태 시험시 실행/[21:20] 자동 형 변환/[21:42] 예제/[22:04] 형변환 포함/[22:54] 문자열 칼럼과 숫자값 비교 쿼리/[24:06] EXPLAIN/[24:30] 다른 방식으로 질의 작성/[24:43] 인덱스 추가/[25:16] 예제/[25:20] expiration/[26:01] explain/[26:15] 결과 확인/[26:28] type/[26:55] possible keys, key, key len/[27:00] possible keys/[27:05] key/[27:23] rows/[27:46] expiration, curdate, interval/[28:34] interval 값 변경 /[28:43] type: range, expiration/[29:01] rows/[29:21] index를 사용하지 않은 이유/[29:30] interval 30 day/[29:41] interval -1000 day/[30:06] 인덱스 추가할 경우/[30:17] 예제/[31:04] explain select/[31:35] type ALL/[31:45] possible keys/[32:05] Extra Using where/[32:52] explain 제거 후 실행/[32:57] 결과 확인/[33:16] rows/[34:09] 1000 rows/[34:31] add index/[34:37] explain/[34:43] 결과 확인/[34:58] type ref/[35:16] ref/[37:07] add index/[37:15] 결과 확인/[37:22] type index/[37:27] Extra Using index/[39:07] analyze/[39:25] explain/[40:07] analyze/[40:32] 자료형/[40:47] 문자열 수치연산/[41:25] ENUM, SET/[41:41] IP주소/[42:51] 가이드 라인/[42:54] 더 큰 타입 사용 지양/[43:59] MEDIUMINT/[44:05] FLOAT/[44:11] CHAR/[44:42] BLOB, LONGBLOB/[45:06] NOT NULL/[45:40] ENUM 칼럼 사용/[46:09] PROCEDURE ANALYSE/[46:27] 결과 확인/[46:40] Optimal fieldtype/[47:42] 테이블의 단편화 제거/[48:40] OPTIMIZE TABLE/[49:29] 실행문/[50:16] BLOB, TEXT 칼럼에 데이터 압축/[52:16] 합성 인덱스 사용 방법/[53:17] MD5, SHA2, CRC32/[53:43] 큰 BLOB, TEXT 값 지양/[54:44] BLOB, TEXT 칼럼 개별 테이블로 분리

18 연산자
그룹 연산자/산술 연산자/비교 연산자/비트 연산자/논리 연산자/타입 변환 연산자/패턴 매칭 연산자
1시간 8분 
책갈피 : [00:00] 연산자와 함수 레퍼런스/[00:03] 그룹 연산자/[00:30] 예제/[01:49] ROW/[02:00] 예제ㅇ/[02:03] where/[03:05] 산술 연산자/[03:23] 문자열/[03:35] 정수형/[04:08] 부호/[04:21] 실수/[04:34] NULL/[04:48] 더하기 연산자/[05:03] 혼합된 숫자와 문자 더하기/[05:37] 문자열 병합/[06:20] 빼기 연산자/[06:28] 곱하기 연산자/[06:37] 나누기 연산자/[06:51] 곱하기 연산자/[06:51] 나머지 연산자/[07:38] 비교 연산자/[07:55] 규칙/[08:05] NULL 비교/[08:42] 문자열 비교/[09:46] 정수 비교/[09:54] 16진 상수 비교/[10:04] TIMESTAMP, DATETIME과 상수 비교/[10:41] 예제/[11:46] 테스트 결과/[13:03] 예제/[14:11] BINARY/[14:28] 소문자, 대문자 비교/[14:42] BINARY 소문자, 대문자 비교/[14:59] BINARY 소문자, 소문자 비교/[15:46] 예제/[16:19] 공백이 포함된 문자 비교/[17:02] 꺽쇠, 이퀄 예제/[17:26] 느낌표, 이퀄 예제/[19:49] BETWEEN 연산자/[20:39] 예제/[21:18] 문자 비교/[22:11] BINARY 문자 비교/[22:50] CASE/[23:22] 예제/[23:59] expr/[24:25] expr 생략된 예제/[26:46] expr IN, expr NOT IN/[27:13] NOT ( expr IN/[27:25] 예제/[28:10] IS / FALSE, TRUE, UNKNOWN/[28:38] 예제/[29:27] IS NULL, IS NOT NULL/[30:04] 예제/[30:47] 비트 연산자/[30:58] BIGINT/[31:17] 앤파센트 예제/[32:11] 바 예제/[32:32] 꺽쇠 예제/[35:48] 논리 연산자/[36:09] non-zero, non-null, 0, null/[37:06] PIPES AS CONCAT/[37:18] NOT, 느낌표/[37:38] 결과 확인/[39:18] AND, &&/[40:56] or/[41:59] xor/[42:56] 타입 변환 연산자/[43:09] charset str/[43:55) BINARY str/[45:10] COLLATE/[46:14] 패터 매칭 연산자/[46:26] LIKE, REGEXP/[46:59] LIKE 문법/[47:49] 퍼센트, 언더바/[49:01] 예제/[50:34] 빈 문자열/[52:54] escape/[53:52] REGEXP/[54:11] NOT REGEXP/[54:37] 쿼리 확인/[55:38] REGEXP, collate 연산자/[56:02] REGEXP, LIKE와 다른점/[56:37] 정규표현식/[57:00] REGEXP/[58:29] 예제/[59:36] 패턴 설명/[01:01:12] Other/[01:01:21] 쿼리 및 결과 확인/[01:02:19] 문자열과 패턴 비교 예제/[01:02:58] 숫자와 혼합된 문자열과 패턴 비교 예제/[01:03:43] alnum/[01:04:05] POSIX 클래스 생성자/[01:04:16] alnum/[01:04:29] alpha, blank, cntrl/[01:04:41] digit, graph/[01:04:51] lower, upper/[01:04:58] print, punct, xdigit/[01:05:24] space/[01:05:33] 대괄호/[01:05:53] digit, punct 예제/[01:06:00] 단어의 시작과 끝 나타내는 표시/[01:06:45] 역슬래쉬/[01:07:26] REGEXP, RLIKE와 동일

19 함수
비교 함수/형 변환 함수/수치형 함수/문자열 함수/날짜와 시간 함수
1시간 59분 
책갈피 : [00:05] 비교 함수/[00:08] ELT/[00:46] ELT 쿼리/[01:35] FIELD/[02:32] field 쿼리/[03:13] ELT, FIELD 함께 사용한 쿼리/[04:30] GREATEST/[04:47] greatest 쿼리/[05:54] IF/[06:12] if 쿼리/[07:12] IFNULL/[07:27] ifnull 쿼리/[08:06] INTERVAL/[08:26] interval 쿼리/[09:53] ISNULL/[10:04] isnull 쿼리/[10:14] LEAST/[10:23] least 쿼리/[10:32] NULLIF/[10:44] nullif 쿼리/[10:56] STRCMP/[11:33] strcmp 쿼리/[11:53] 형 변환 함수/[12:03] CAST/[12:18] BINARY, CHAR/[12:33] 예제/[13:10] CONVERT/[13:27] 예제/[13:31] CAST, CONVERT 비교 설명/[13:40] 예제/[14:37] 수치형 함수/[15:13] ABS/[15:29] ACOS/[15:54] COS/[16:25] ASIN/[16:43] SIN/[16:55] TAN/[17:13] ATAN2/[18:20] CEILING/[18:40] COT/[18:54] CRC32/[19:36] DEGREES/[20:03] EXP/[20:19] FLOOR/[20:50] LN/[20:53] LOG/[21:48] LOG10, LOG2/[22:22] MOD/[22:37] PI/[22:47] POW, POWER/[23:09] RADIANS/[23:35] RAND/[24:42] ROUND/[27:06] SIGN/[27:25] SQRT/[27:47] TRUNCATE/[29:16] 문자열 함수/[29:44] ASCII/[30:16] BIN/[30:41] CHAR/[31:21] CHAR LENGTH/[32:49] CHARSET/[33:32] COALESCE/[34:33] COERCIBILITY/[37:23] COLLATION/[37:46] CONCAT/[38:56] CONCAT WS/[40:27] CONV/[41:58] EXPORT SET/[46:05] FIND IN SET/[46:53] FORMAT/[48:17] HEX/[49:30] INSERT/[50:23] INSTR/[51:50] LOCATE/[52:37] LCASE, LOWER/[54:23] LEFT/[55:33] LENGTH/[56:14] LOCATE/[56:34] LPAD/[57:41] LTRIM/[58:10] MAKE SET/[01:00:57] MATCH AGAINST/[01:04:53] MID/[01:05:41] OCT/[01:06:06] OCTET LENGTH/[01:06:15] ORD/[01:06:49] POSITION/[01:06:59] QUOTE/[01:07:33] REPEAT/[01:07:59] REPLACE/[01:08:50] REVERSE/[01:09:07] RIGHT/[01:09:42] RPAD/[01:10:31] RTRIM/[01:10:59] SOUNDEX/[01:11:47] SPACE/[01:12:03] SUBSTR, SUBSTRING/[01:12:59] SUBSTRING INDEX/[01:14:41] TO BASE64, FROM BASE64/[01:15:31] TRIM/[01:17:22] UCASE, UPPER/[01:17:51] UNHEX/[01:18:23] WEIGHT STRING/[01:19:30] LEVEL/[01:20:32] 날짜와 시간 함수/[01:21:51] ADDDATE/[01:22:38] ADDTIME/[01:23:09] CONVERT TZ/[01:23:31] CURDATE/[01:23:40] CURRENT TIME, CURTIME/[01:23:50] CURRENT TIMESTAMP/[01:24:01] NOW/[01:24:49] DATE/[01:25:01] DATE ADD/[01:29:46] DATE FORMAT/[01:30:46] format에 사용할 수 있는 지정자/[01:31:04] %f 지정자/[01:31:15] %S, %s 지정자/[01:31:41] %H, %h 지정자/[01:32:02] %k 지정자/[01:32:20] %l 지정자/[01:32:33] %T 지정자/[01:32:43] %r 지정자/[01:33:07] %W 지정자/[01:33:44] %e 지정자/[01:33:55] 예제/[01:34:20] %D, %w 지정자/[01:34:49] %j 지정자/[01:35:02] %U, %u, %V, %v 지정자/[01:35:55] %M, %m 지정자/[01:36:23] %c 지정자/[01:36:29] %Y. %y 지정자/[01:36:40] %X, %x 지정자/[01:37:24] %% 지정자/[01:38:03] DATE SUB/[01:38:54] DATEDIFF/[01:39:14] DAY, DAYOFMONTH/[01:39:37] DAYNAME/[01:39:54] DAYOFWEEK, DAYOFYEAR/[01:40:28] EXTRACT/[01:41:03] FROM DAYS/[01:41:48] FROM UNIXTIME/[01:42:19] GET FORMAT/[01:43:24] HOUR, LAST DAY/[01:43:49] MAKEDATE/[01:44:21] MAKETIME/[01:44:52] MICROSECOND/[01:45:13] MINUTE/[01:45:40] MONTH, MONTHNAME/[01:46:25] PERIOD ADD, PERIOD DIFF/[01:47:46] QUARTER/[01:48:00] SECOND/[01:48:08] SEC TO TIME/[01:49:28] SUBDATE/[01:50:02] SYSDATE/[01:50:12] TIME/[01:50:21] TIME FORMAT/[01:51:01] TIME TO SEC/[01:51:11] TIMEDIFF/[01:51:21] TIMESTAMP/[01:51:54] TIMESTAMPADD/[01:52:30] TIMESTAMPDIFF/[01:53:11] TO DAYS/[01:53:24] TO SECONDS/[01:53:38] UNIX TIMESTAMP/[01:54:04] UTC DATE/[01:54:27] WEEK/[01:56:48] WEEK 예제/[01:57:29] WEEKDAY, WEEKOFYEAR/[01:58:17] YEAR, YEARWEEK

20 함수, 보안과 접근 제어, DB 유지보수와 백업
보안과 압축 관련 함수/권고 락 함수/IP 주소 함수/XML 함수/기타 함수/MySQL 사용자 계정 관리/권한 부여/권한 취소/접근 제어 위험 제거/동적으로 DB 유지보수/mysqldump 사용/InnoDB 테이블 점검, 수리
1시간 21분 
책갈피 : [00:04] 통계 함수/[00:43] AVG/[01:06] BIT AND/[01:44] BIT OR/[02:21] BIT XOR/[02:27] COUNT/[03:00] GROUP CONCAT/[05:04] MAX/[05:19] MIN/[05:22] STD, STDDEV, STDDEV POP/[05:35] STDDEV SAMP/[06:00] SUM/[06:20] VARIANCE, VAR POP/[06:35] VAR SAMP/[06:49] 보안과 압축 관련 함수/[08:07] AES ENCRYPT/[08:38] COMPRESS/[08:58] DECODE, ENCODE/[09:40] DES DECRYPT/[09:47] DES ENCRYPT/[10:35] ENCRYPT/[11:50] MD5/[12:14] OLD PASSWORD, PASSWORD/[12:50] SHA1, SHA2/[14:17] UNCOMPRESS/[14:30] UNCOMPRESSED LENGTH/[14:43] 권고 락 함수/[14:57] GET LOCK, RELEASE LOCK/[15:18] IS FREE LOCK, IS USED LOCK/[15:47] GET LOCK(str, timeout)/[16:16] RELEASE LOCK/[16:42] IS FREE LOCK/[16:56] IS USED LOCK/[17:24] IP 주소 함수/[17:27] INET ATON/[17:45] INET NTOA/[18:01] INET6 ATON, INET6 NTOA/[19:18] IS IPV4/[19:51] IS IPV6/[20:14] XML 함수/[20:28] EXTRACTVALUE/[21:05] UPDATEXML/[21:16] 기타 함수/[21:30] BENCHMARK/[22:47] CONNECTION ID, CURRENT USER, DATABASE/[23:57] FOUND ROWS/[25:29] SLEEP/[25:41] UUID, UUID SHORT/[26:42] VERSION/[27:13] 보안과 접근 제어/[27:51] MySQL 사용자 계정 관리/[29:32] use 명령어/[29:39] show tables/[30:56] CREATE USER/[31:16] DROP USER/[31:39] RENAME USER/[31:47] create user 예/[33:15] root/[34:19] 호스트명 변경/[34:36] 퍼센트 문자 함수/[37:33] 권한 부여/[37:36] GRANT/[38:31] NO AUTO CREATE USER/[39:26] SELECT/[39:32] SHUTDOWN/[40:09] what/[40:35] TO account/[41:05] REQUIRE/[43:03] 사용 가능한 권한 종류/[43:45] all 권한/[44:06] CREATE USER/[44:22] FILE/[45:39] GRANT OPTION/[46:07] PROCESS/[46:45] PROXY/[47:00] RELOAD/[47:10] REPLICATION CLIENT, REPLICATION SLAVE/[48:12] SHOW DATABASES/[48:21] SHUTDOWN/[48:29] SUPER/[49:48] ALTER, ALTER ROUTINE/[50:04] CREATE/[50:45] DELETE/[51:09] EVENT, EXECUTE/[51:20] INDEX, LOCK TABLES/[51:36] REFERENCES, SELECT/[51:47] SHOW VIEW, TRIGGER, UPDATE/[53:10] 권한 레벨 식별자/[54:45] 예제/[57:15] USAGE/[57:37] 예제/[58:49] REQUIRE 추가/[01:02:36] 주어진 권한 취소/[01:02:42] REVOKE/[01:03:02] 예제/[01:04:44] 비밀번호 변경, 초기화 하는 방법/[01:05:08] PASSWORD/[01:06:35] 접근 제어 위험 제거/[01:06:39] 익명 사용자 계정 생성 금지/[01:07:03] show status/[01:07:11] show variables/[01:08:44] 시스템 변수 확인/[01:09:35] NO AUTO CREATE USER 모드/[01:10:29] mysql 데이터베이스 권한/[01:11:07] GRANT OPTION 권한/[01:11:47] FILE 권한 허용/[01:12:38] 데이터 디렉토리 권한/[01:13:44] root로 MYSQL 서버 실행/[01:13:54] ALTER 권한/[01:14:40] DB 유지보수와 백업/[01:17:18] 사용한 텍스트 백업/[01:18:53] UNLOCK/[01:19:24] InnoDB 테이블 점검, 수리/[01:19:31] mysqlcheck, mysqldump


샘플확인 : 알지오 검색후 -> 강의검색란 -> My SQL