본문 바로가기

MYSQL강좌정리

(14)
13차시 인덱스 검색을 빠르게 하기 위한 자료구조(B트리 계열) 레코드 추가/수정/삭제시 해당 컬럼으로 다시 정렬한 후 검색에 필요한 값들을 미리 계산해 검색속도를 높임 기본키는 자동으로 인덱스 설정 join시에도 영향을 줌 빠른 검색을 위해서는 데이터가 정렬되어 있어야 함 이진검색(binary search) - 중간값 찾고 좌~우로 B Tree 계열 (상용DBMS가 대부분 사용) - 알파, 베타 2개를 가지고 찾는다 binary search : 데이터가 1000개 일때 최대횟수는 2의 n승이 >1000인값 --> 10회 Index 설정 CREATE INDEX 인덱스명 ON 테이블명(컬럼명) CREATE INDEX 인덱스명 ON 테이블명(컬럼명1, 컬럼명2) -- 2개이상의 컬럼으로 Index설정도 가능함 CREATE ..
10장~12장 DB스키마의 중복정보 제거 -> 모델링 정규화 -> 중복제거 제1정규형 - 나눌수 있을 만큼 쪼개라 제2정규형 - 테이블의 컬럼들이 기본키와 직접 연관되는 컬럼만으로 구성해라 제3정규형 - 컬럼들 간의 종속관계가 있으면 안됨 Foreign Key있는 경우 데이터추가, 삭제에 신중할 것 city와 country가 있을때.. insert할때는 country 먼저 하고 그다음 city를 insert 함 delete할때는 반대로 city를 delete하고 그다음 country를 delete한다. 11장 스키마 수정, 삭제 Alter table 테이블명 다음에 ADD 컬럼추가 DROP 컬럼삭제 CHANGE 컬럼명 수정 MODIFY 컬럼데이터타입 변경 ALTER TABLE 테이블명 ADD PRIMARIY KEY (..
9장 DDL 강의(스키마) create database, create table 데이터타입 정수 : TINYINT :1 BYTE ~128 ~ 127 INT :4 BYTE -21억 ~ 21억 BIGINT :-9경 ~ 9경 실수 FLOAT 4 BYTE DOUBLE 8 BYTE DECIMAL(10진법으로 관리, 나머지는 2진법) 문자열 CHAR VARCHAR 자료형 TEXT MEDIUMTEXT LONGTEXT BLOB(Binary Large Object) :이미지, 파일등을 관리할때 사용
9장 DDL 강의(스키마) create database, create table 데이터타입 정수 : TINYINT :1 BYTE ~128 ~ 127 INT :4 BYTE -21억 ~ 21억 BIGINT :-9경 ~ 9경 실수 FLOAT 4 BYTE DOUBLE 8 BYTE DECIMAL(10진법으로 관리, 나머지는 2진법) 문자열 CHAR :255자 VARCHAR :65,535자 자료형 TEXT MEDIUMTEXT LONGTEXT BLOB(Binary Large Object) :이미지, 파일등을 관리할때 사용 BLOB MEDIUMBLOB LARGEBLOB 시간관련 DATE TIME DATETIME TIMESTAMP(1970-01-01 00:00:00 이후) 제약조건 NOT NULL : NULL값을 허용하지 않음 UNIQUE : 동..
강좌2번째(5~6차시) JOIN에 대하여 select * from city join country on city.CountryCode=country.Code; select city.CountryCode, GNP from city join country on city.CountryCode=country.Code; --GNP는 country 테이블에 있으므로 그냥 GNP라 쓰면 됨 -- JOIN의 방향이 중요하다. city 테이블에서 -> country 테이블을 JOIN하는 것.. 좌에서 우로 JOIN의 종류 1) INNER JOIN : JOIN시 NULL값을 허용하지 않음(NULL값을 가진 레코드는 JOIN결과에서 빠짐) -> 일반적인 JOIN임 2) LEFT JOIN : JOIN시 JOIN의 왼쪽 테이블의 NULL값을 포함해서..
MySql 시작하기 show databases; DB들의 리스트를 표시하라 use world; world DB를 사용한다 show tables; world DB의 테이블리스트를 표시하라 desc city; city 테이블의 구조를 표시해라 select * from city; city테이블의 내용을 표시해라 실행하는 방법 1. workbench 2. 시작 -> mysql 디렉토리하위에 아이콘중 MYSQL 8.0 command line client 클릭해서 실행 3. CMD창에서 C:\Program Files\MySQL\MySQL Server 8.0\bin>mysql -uroot -p --> 이러면 비밀번호 물어본다. select * from city where countrycode='KOR' order by populatio..