날짜 함수의 SQL 서버와 MySQL
SQL 날짜 (날짜)
우리가 날짜를 처리하면, 삽입 된 데이터 형식 데이터베이스 열의 데이터 형식에 일치되도록하여 가장 어려운 작업 아마이다.
한 데이터는 날짜 부분을 포함로, 쿼리가 잘못됩니다. 타임 성분이 관여하는 경우에는, 상황이 약간 복잡하다.
쿼리 날짜의 복잡성을 논의하기 전에, 가장 중요한 내장 된 날짜 처리 기능을 살펴 보자.
MySQL의 날짜 함수
다음 표는 내장 된 MySQL의 날짜 함수의 가장 중요한 나열
函数 | 描述 |
---|---|
NOW() | 返回当前的日期和时间 |
CURDATE() | 返回当前的日期 |
CURTIME() | 返回当前的时间 |
DATE() | 提取日期或日期/时间表达式的日期部分 |
EXTRACT() | 返回日期/时间的单独部分 |
DATE_ADD() | 向日期添加指定的时间间隔 |
DATE_SUB() | 从日期减去指定的时间间隔 |
DATEDIFF() | 返回两个日期之间的天数 |
DATE_FORMAT() | 用不同的格式显示日期/时间 |
SQL 서버 날짜 기능
다음 표는 가장 중요한 내장 된 날짜 함수에서 SQL Server를 보여줍니다
函数 | 描述 |
---|---|
GETDATE() | 返回当前的日期和时间 |
DATEPART() | 返回日期/时间的单独部分 |
DATEADD() | 在日期中添加或减去指定的时间间隔 |
DATEDIFF() | 返回两个日期之间的时间 |
CONVERT() | 用不同的格式显示日期/时间 |
SQL 날짜 데이터 형식
MySQL은 데이터베이스 내의 날짜 또는 날짜 / 시간 값에 저장된 다음 유형의 데이터를 사용
- DATE - 형식 : YYYY-MM-DD
- DATETIME - 형식 : YYYY-MM-DD HH : MM : SS
- TIMESTAMP - 형식 : YYYY-MM-DD HH : MM : SS
- YEAR - 형식 : YYYY 또는 YY
SQL 서버 데이터베이스 내의 날짜 또는 날짜 / 시간 값에 저장된 다음 유형의 데이터를 사용
- DATE - 형식 : YYYY-MM-DD
- DATETIME - 형식 : YYYY-MM-DD HH : MM : SS
- SMALLDATETIME - 형식 : YYYY-MM-DD HH : MM : SS
- TIMESTAMP - 형식 : 유일한 디지털
참고 : 데이터베이스에 새 테이블을 만들 때 열에 대한 데이터 유형을 선택해야합니다!
사용 가능한 모든 데이터 유형의 경우, 우리의 완전한 참조하시기 바랍니다 데이터 유형 참조 설명서 .
SQL 날짜 처리
부품이 시간을 포함하지 않는 경우, 우리가 쉽게 두 날짜를 비교할 수 있습니다!
우리는 다음 "주문"을 가지고 테이블을 가정 해 봅시다 :
OrderId | ProductName | OrderDate |
---|---|---|
1 | Geitost | 2008-11-11 |
2 | Camembert Pierrot | 2008-11-09 |
3 | Mozzarella di Giovanni | 2008-11-11 |
4 | Mascarpone Fabioli | 2008-10-29 |
이제 우리는 테이블에서 "2008-11-11"레코드로 주문일 선택합니다.
우리는 다음과 같은 SELECT 문을 사용 :
결과는 다음 세트 :
OrderId | ProductName | OrderDate |
---|---|---|
1 | Geitost | 2008-11-11 |
3 | Mozzarella di Giovanni | 2008-11-11 |
이제 ( "주문일"열 파트 타임을주의하시기 바랍니다) 다음과 같이 "주문"테이블이 있다고 가정 :
OrderId | ProductName | OrderDate |
---|---|---|
1 | Geitost | 2008-11-11 13:23:44 |
2 | Camembert Pierrot | 2008-11-09 15:45:21 |
3 | Mozzarella di Giovanni | 2008-11-11 11:12:01 |
4 | Mascarpone Fabioli | 2008-10-29 14:56:59 |
우리는 위와 같은 SELECT 문을 사용하는 경우 :
그 다음 우리는 결과를 얻을 것이다! 쿼리의 날짜가 시간 부분을 포함하지에이 때문이다.
팁 : 유지하는 쿼리가 간단하고 쉽게 확인하려면 다음 날짜의 시간 구성 요소를 사용하지 마십시오!