2014-10-03 51 views
0

我想顯示僅今天結果的信息。 我正在使用的下面的示例在24小時內顯示信息。mysql過濾器由天

我只需要顯示當天的信息。

例子:

$sql = "SELECT COUNT(*) as c 
     FROM toutcome 
     WHERE AffID = '$affID' AND 
     CompletedDate > DATE_SUB(CURDATE(), INTERVAL 1 DAY) "; 
$result = mysql_query($sql); 
$row = mysql_fetch_array($result); 
echo $row['c'] ; 

我也tryed

$sql = "SELECT COUNT(*) as c 
     FROM toutcome 
     WHERE AffID = '$affID' AND 
     CompletedDate > DATE_SUB(CURDATE(), INTERVAL 24 HOUR) "; 
$result = mysql_query($sql); 
$row = mysql_fetch_array($result); 
echo $row['c'] ; 
+0

CompletedDate> = CURDATE() – Mihai 2014-10-03 08:49:54

回答

0

嘗試:

SELECT COUNT(*) as c FROM toutcome WHERE AffID = '$affID' AND CompletedDate BETWEEN CURDATE() AND NOW() 

如果你知道CompletedDate永遠不會在未來則:

SELECT COUNT(*) as c FROM toutcome WHERE AffID = '$affID' AND CompletedDate >= CURDATE() 

阿朗的解決方案不會對CompletedDate使用索引。

+0

非常棒!謝謝切爾西! – 2014-10-03 09:08:35

0

試試這個

SELECT COUNT(*) 
as c FROM toutcome 
WHERE AffID = '$affID' 
AND 
TIMESTAMPDIFF(
    DAY, 
    DATE(CompletedDate), 
    DATE(CURRENT_TIMESTAMP) 
) = 1 
+0

@Chelsea,謝謝..我更新了我的答案 – Arun 2014-10-03 08:57:06