16. Working With Dates
1. Dates
- 날짜로 작업할 때 가장 어려운 부분은 삽입하려는 날짜 형식이 데이터베이스의 날짜 열 형식과 일치하는지 확인하는 것이다.
- 데이터에 날짜 부분만 포함되어 있으면 쿼리가 예상대로 작동한다.
- 하지만 시간 부분이 포함되면 더 복잡해진다.
2. Date Data Types
1) MySQL
- MySQL은 데이터베이스에 날짜 또는 날짜/시간 값을 저장하기 위한 다음과 같은 데이터 타입이 함께 제공된다.
1] DATE
YYYY-MM-DD
형식
2] DATETIME
YYYY-MM-DD HH:MI:SS
형식
3] TIMESTAMP
YYYY-MM-DD HH:MI:SS
형식
4] YEAR
YYYY
또는YY
형식
2) SQL Server
- SQL Server는 데이터베이스에 날짜 또는 날짜/시간 값을 저장하기 위한 다음과 같은 데이터 타입이 함께 제공된다.
1] DATE
YYYY-MM-DD
형식
2] DATETIME
YYYY-MM-DD HH:MI:SS
형식
3] SMALLDATETIME
YYYY-MM-DD HH:MI:SS
형식
4] TIMESTAMP
- 고유 번호 형식
3. Working with Dates
- 다음과 같은
Orders
테이블이 있다.
- 이제 위의 표에서
OrderDate
가"2008-11-11"
인 레코드를 선택하려고 한다면 다음과 같이SELECT
문을 사용한다.
- 결과 집합은 다음과 같고, 관련된 시간 요소가 없으면 두 날짜를 쉽게 비교할 수 있다.
- 이제
Orders
테이블이 다음과 같다고 가정해 보자.
- 위의
SELECT
문과 똑같이 사용해 보자.
- 쿼리가 시간 부분이 없는 날짜만 찾고 있기 때문에 결과를 얻지 못하게 된다.
- 즉, 쿼리를 간단하고 쉽게 관리하려면 꼭 필요한 경우가 아니면 날짜에 시간 구성 요소를 사용하지 않는 것이 좋다.