날짜는 1000부터 9999까지의 값을 저장하기 때문에 1970년 이전의 날짜로 작업하려면 날짜 형식을 사용해야 합니다. 날짜 형식은 시간 목적이 아닌 날짜 부분만 작업해야 할 때 사용할 수 있습니다.
MySQL은 다음 형식으로 데이터를 제공합니다. 형식은 다음과 같습니다 -
‘YYYY-MM-DD’
시작 날짜 범위는 다음과 같습니다 -
1000-01-01
종료 날짜 범위는 다음과 같습니다 -
9999-12-31
위에서 논의한 내용을 이해하기 위해 두 개의 테이블을 생성해 보겠습니다. 첫 번째 테이블을 생성하는 쿼리는 다음과 같습니다 -
mysql> create table DateDemo -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> DateBefore1970 date -> ); Query OK, 0 rows affected (0.71 sec)
이제 insert 명령을 사용하여 테이블에 일부 레코드를 삽입할 수 있습니다. 종료일 '9999-12-31' 이후에 사용할 때마다 '0000-00-00' 날짜가 표시됩니다.
'9999-12-31'보다 큰 레코드를 삽입해 보겠습니다. 쿼리는 다음과 같습니다 -
mysql> insert into DateDemo(DateBefore1970) values('1000-10-20'); Query OK, 1 row affected (0.17 sec) mysql> insert into DateDemo(DateBefore1970) values('1940-12-31'); Query OK, 1 row affected (0.20 sec) mysql> insert into DateDemo(DateBefore1970) values('1500-01-25'); Query OK, 1 row affected (0.10 sec) mysql> insert into DateDemo(DateBefore1970) values('1900-04-14'); Query OK, 1 row affected (0.12 sec) mysql> insert into DateDemo(DateBefore1970) values('1710-11-15'); Query OK, 1 row affected (0.17 sec) mysql> insert into DateDemo(DateBefore1970) values('9999-12-31'); Query OK, 1 row affected (0.22 sec) mysql> insert into DateDemo(DateBefore1970) values('10000-12-31'); Query OK, 1 row affected, 1 warning (0.11 sec)
이제 select 문을 사용하여 테이블의 모든 레코드를 표시할 수 있습니다. 쿼리는 다음과 같습니다 -
mysql> select *from DateDemo;
다음은 출력입니다 -
+----+----------------+ | Id | DateBefore1970 | +----+----------------+ | 1 | 1000-10-20 | | 2 | 1940-12-31 | | 3 | 1500-01-25 | | 4 | 1900-04-14 | | 5 | 1710-11-15 | | 6 | 9999-12-31 | | 7 | 0000-00-00 | +----+----------------+ 7 rows in set (0.00 sec)