[英]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.