我有一個記錄,這樣設置包含UNIX時間戳記錄日期:如果在本月發生unix時間戳範圍,MySQL查詢將返回行嗎?
+----+-----------+-----------+---------+
|Id |Start Date |EndDate |MoreData |
+----+-----------+-----------+---------+
|1 |1292692439 |2147483647 |... |
+----+-----------+-----------+---------+
|2 |1272776400 |1274331600 |... |
+----+-----------+-----------+---------+
|3 |1293256800 |2147483647 |... |
+----+-----------+-----------+---------+
|4 |1294552800 |2147483647 |... |
+----+-----------+-----------+---------+
什麼,我需要做的是寫一個MySQL查詢(使用PHP),只有返回包含開始日期的行即在本月或之前和 enddate在本月或之後。
例如,在上述記錄集中,如果查詢本月(2010年12月),不應返回id 2和4的行,因爲2的enddate是2010年5月,4的startdate是2011年1月。
有關查詢的外觀如何的幫助非常感謝,或者在編寫此查詢時使用MySQL查詢命令可能有用的任何想法?
是否有你存儲Unix時間戳而不是使用DATETIME數據類型的原因? – AgentConundrum 2010-12-18 16:30:36
@AgentConundrum現在有一個關於在reddit上的確切討論:http://www.reddit.com/r/programming/comments/envkn/working_with_dates_in_sql_what_to_avoid_how_to_do/c19j8ly – 2010-12-18 16:32:17
你在找這樣的東西:SELECT * FROM thetable WHERE StartDate> ='2010-12-12'; – SuperSaiyan 2010-12-18 16:33:15