2012-11-26 2 views
0

다음 중 datetime 형식에 대해 datediff를 사용하는 것이 바람직한 지 궁금합니다. datetime 형식에 대한 mysql datediff

  • datediff(now(), <datetime type>)
    1. datediff(current_date, <datetime type>)
    2. datediff(current_date, date(<datetime type>))
    3. 나는 몇 가지 경우에 그들을 밖으로 시도하고 그들은 모두 같은 대답을 반환하지만 나는 그들이 선 아래로 몇 가지 오류가 발생할 수 있음을 걱정 .

      datediff는 두 datetime 유형 사이의 일 수를 찾는 올바른 방법입니까?

    +0

    답장을 보내 주셔서 감사합니다. – user1832628

    답변

    1

    을 감안할 때 :

    • datediff는 내부적으로 현재까지 캐스팅이 그 조합의 사이의 결과에 차이가 없어야합니다 current_date

    과 동일

  • now() 날짜에 매개 변수를 캐스트

  • 1

    귀하의 목적 상 모두 동일합니다. DATEDIFF()가 DATETIME의 시간 부분을 무시하기 때문에 지금은() 때문에 DATEDIFF와 DATE 및 DATETIME을 사용하여, DATETIME

    이 있지만,이 경우에는 문제가되지 않습니다을 반환하면서

    CURRENT_DATE는 DATE 형식을 반환()는 완전히 동일합니다.

    +0

    MYSQL 버전'5.5.47'을 사용 중이며'datediff()'는 시간을 무시하지 않습니다. 이 시간보다 일찍 놓으면 여분의 하루가 더 걸립니다. 그것을 제거하면, 다시 수축됩니다. 그것은 두 번째로 계산합니다. 나는 현재 시간 부분을 무시할 수있는 방법을 찾고있다. – NoobishPro