2014-02-20 21 views
0

我有小疑問在MySQL如何在MySQL 和在該領域的任何空或空使用dateformat正是我想要的顯示,因爲它是顯示mm/dd/yyyy如何顯示MM/DD/YYYY HH:MM?

date 
null 
null 
1/3/2013 9:29:33 AM 
1/3/2013 10:42:53 AM 
1/2/2013 10:54:00 AM 
1/2/2013 2:41:19 PM 
1/2/2013 2:41:25 PM 
null 

我嘗試使用dateformat

select DATE_FORMAT(checkin,'%c/%e/%Y %h:%i:%s %p')as date from emp 

那個時候它顯示象下面

0/0/0000 12:00:00 AM 
0/0/0000 12:00:00 AM 
1/3/2013 09:29:33 AM 
1/3/2013 10:42:53 AM 
1/2/2013 10:54:00 AM 
1/2/2013 02:41:19 PM 
1/2/2013 02:41:25 PM 
0/0/0000 12:00:00 AM 

在這裏,我們有3條記錄有一次我想顯示空值的查詢,因爲它是,但這裏 它來到0/0/0000 12:00:00 AM。當空或空記錄時,我不需要這個。請告訴我如何在MySQL查詢級別解決這個問題?

回答

0

試試這個

select if(checkin is null , null ,DATE_FORMAT(checkin,'%c/%e/%Y %h:%i:%s %p'))as date 
from emp 
1

我假設你希望有空值,保持空,只能格式化日期,所以請嘗試使用以下方法之一:

SELECT IF(checkin IS NOT NULL, DATE_FORMAT(checkin,'%c/%e/%Y %h:%i:%s %p'), NULL) AS date 
FROM emp 

OR上面的查詢

SELECT 
    CASE 
     WHEN checkin IS NOT NULL THEN DATE_FORMAT(checkin,'%c/%e/%Y %h:%i:%s %p') 
     ELSE NULL 
    END AS date 
FROM emp 
+0

HI嘗試過給定的仍然是其來到0/0/0000 12:00:00 AM當上fields.any其他方式null或空記錄,請告訴米e那個查詢。 – user1623352

+0

@ user1623352,請您澄清一下_empty_記錄是什麼意思?你的意思是這些值是null或者它被設置爲默認的日期時間值?你指的是什麼_empty_值?我可以修改我的查詢來適應這種情況,但我需要知道您在此處討論的所有可能的情況。您帖子中的示例數據沒有顯示_empty_數據,只顯示爲空。 –