2014-12-30 2 views
0

PHP에서는 오류를 반환하지 않지만 계산을 수행하는 대신 마지막 열에 대해 공백을 반환합니다 (다른 모든 열은 정상적으로 작동 함).MySQL의 두 날짜 열의 차이점

SELECT 
    mantis_category_table.name, 
    mantis_bug_history_table.bug_id, 
    FROM_UNIXTIME(mantis_bug_table.date_submitted, "%m-%d-%Y") AS DATE2, 
    FROM_UNIXTIME(min(mantis_bug_history_table.date_modified), "%m-%d-%Y") AS FirstOfdate_modified, 
    TO_DAYS(FROM_UNIXTIME(min(mantis_bug_history_table.date_modified), "%m-%d-%Y")) - TO_DAYS(FROM_UNIXTIME(mantis_bug_table.date_submitted, "%m-%d-%Y")) 

내가 제대로 제 3 및 제 select 문에서 4 항목 (두 날짜) 사이의 차이를 얻을 수있는 방법.

SELECT DATEDIFF(DATE2,FirstOfdate_modified) 

을 그리고 그 중 하나가 작동하지 않습니다

은 이미이 같은 DATEDIFF을 시도했습니다.

감사합니다.

답변

1

유닉스 타임 스탬프 2 개가 있다고 가정합니다.

FROM_UNIXTIME()은 문자열을 형식화하고 문자열을 빼는 것은 유효한 연산이 아닙니다. (to_day가 악화 될 수 있습니다 ...)

하지만 유닉스 타임 스탬프는 빼지 않으시겠습니까? 몇 초 안에 결과를 얻을 수 있지만 제대로 작동합니다. 예를 들어

:

SELECT 
    mantis_category_table.name, 
    mantis_bug_history_table.bug_id, 
    FROM_UNIXTIME(mantis_bug_table.date_submitted, "%m-%d-%Y") AS DATE2, 
    FROM_UNIXTIME(min(mantis_bug_history_table.date_modified), "%m-%d-%Y") AS FirstOfdate_modified, 
    (min(mantis_bug_history_table.date_modified)- mantis_bug_table.date_submitted)/ 86400 as day_difference.