본문 바로가기

MySQL별책부록39

24. DATETIME과 TIMESTAMP 사용법 (MySQL5.6 기준으로 정리한 내용이다.)1. 관리하는 데이터 두 타입 모두 년월일시초까지 모두 관리 가능하다. 거기다가, 소수점 6자리 까지의 초까지 저장이 가능하다.즉, YYYY-MM-DD HH:MM:SS[.fraction] 으로 가능하다. .fraction이 소수점 6자리를 의미한다. DATETIME은 '1000-01-01 00:00:00.000000' 에서 '9999-12-31 23:59:59.999999' 의 데이터까지 저장이 가능하고,TIMESTAMP는 '1970-01-01 00:00:01.000000' UTC 에서 '2038-01-19 03:14:07.99999' UTC 까지 저장이 가능하다. 2. DATETIME과 TIMESTAMP의 차이점 즉, 두 데이터 타입의 차이는 시간대 정보를 .. 2015. 10. 6.
23. MySQL 실행계획 Impossible WHERE noticed after reading const tables 추가 MySQL Ver. 5.x 부터 실행계획을 추출할때, >explain SELECT * FROM `XXX` WHERE xxx = '187063691';+———+——————+———+———+———————+———+————+———+———+——————————————————————————+| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |+———+——————+———+———+———————+———+————+———+———+——————————————————————————+| 1 | SIMPLE | NULL | NULL | NULL | NULL | NULL | NULL | NULL | Impossible WHERE no.. 2015. 8. 12.
22. InnoDB의 PK와 일반 인덱스 Key 컬럼의 중복시 저장은 어떻게 될까? 아마 한번쯤은 고민해 봤을 문제이다. Secondary index 생성 시 PK의 컬럼과 중복된다면....내부적으로 어떻게 저장될까? 먼저 제레미의 글을 찾아보면 다음과 같은 글을 확인할 수가 있다. http://blog.jcole.us/2013/01/10/the-physical-structure-of-records-in-innodb/ Secondary indexesSecondary indexes in InnoDB have an identical overall structure to the clustered key (PRIMARY KEY) but instead of containing non-key fields, they contain the clustered key fields, also known a.. 2015. 7. 28.
21. DATETIME 컬럼에 대한 기본값 처리 MySQL Ver 5.6.5 이상 부터는 datetime 데이터 타입에 대해서 기본값을 설정하는 것이 가능하다. 예제는 다음과 같고, 자세한 내용은 다음의 url에서 확인이 가능하다. CREATE TABLE t1 ( ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, dt DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ); http://dev.mysql.com/doc/refman/5.6/en/timestamp-initialization.html 2015. 4. 1.