簡體   English   中英

從數據庫獲取但僅持續30天

[英]Get from database but only last 30 days

我正在使用此php從我的mysql數據庫中獲取數據:

$wpdb->get_var("select count(*) from " . $wpdb->prefix . "newsletter where status='C'"); ?>

您可能會注意到我在wordpress中,所以我在使用$ wpdb變量。

這將從status='C'的表中返回所有數據。 一切正常,但我只需要獲取過去30天的數據即可。 我不確定mysql是否存儲有關何時存儲該條目的數據,但我確實在status的同一行中created了另一個列。 該日期以以下格式存儲:

2011-10-14 15:33:58

有什么方法可以用來更新我的代碼以僅檢索過去一個月的數據嗎?

非常感謝在這里的任何建議。

謝謝C

MySQL中有adddate()函數,可用於此:)

$wpdb->get_var("select count(*) from " . $wpdb->prefix . "newsletter where status='C' and date_format(created,'%Y%m%d')>date_format(adddate(now(),interval -30 day),'%Y%m%d')");

這是30天的時間,但是您可以將“ -30天間隔”替換為“ -1個月間隔”,或者訪問已經解釋了的dev.mysql

希望能幫助到你。

在查詢中嘗試以下操作:

select count(*) from " . $wpdb->prefix . "newsletter where status='C' 
AND DATE(created)>=DATE_SUB(CUR_DATE, INTERVAL 30 DAY)
    $wpdb->get_var("select count(*) from " . $wpdb->prefix . "newsletter where status='C'
 AND DATEDIFF(CURDATE(), created) <= 30"); ?>

用過的:

DATEDIFF()-返回expr1 – expr2,以從一個日期到另一個日期的天數表示。 expr1和expr2是日期或日期和時間表達式。 在計算中僅使用值的日期部分。

和:

CURDATE()-當前日期

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM