2011-05-24 76 views
1

我想,這樣的每一天這樣計算操作的嵌套MySQL的要求:比較的Fileds與REGEXP在MySQL 5.0

SELECT `timestamp` AS `date`, 
    (SELECT COUNT('id') 
    FROM `actions` WHERE `timestamp` = `date`) AS `action_num` 
FROM `actions`; 

這將工作的偉大,如果不是這樣,我需要計算每一天,我得到的是每個時間戳。如果這只是一個日期,它會起作用。所以我想,如果我可以拿出從字符串的日期和比較它這可能工作:

SELECT `timestamp` AS `date`, 
    (SELECT COUNT('id') FROM `actions` 
    WHERE `timestamp` REGEXP '[[:digit:]]{4}-[[:digit:]]{2}-[[:digit:]]{2}' = `date` 
    REGEXP '[[:digit:]]{4}-[[:digit:]]{2}-[[:digit:]]{2}') AS `action_num` 
FROM `actions`; 

但沒有奏效。

有關如何直接在MySQL中比較兩個時間戳字段的日期的任何想法?

感謝

回答

0

可以使用DATEDIFF()功能在MySQL中, 和TIMESTAMPDIFF()日期比較來比較時間戳,DATE()從時間戳中獲取日期信息。
更多日期和時間函數和示例請參閱MySQL's reference manual pages