2017-03-28 46 views
-3

在表格posts我有一列名爲date的格式 - datetime - current timestamp並且只需要從上個月選擇帖子。上個月的選擇帖子

列中的所有日期是從2016年十二月 - 例如2016-12-09 04:25:00

<?php 
$start = strtotime("-1 month"); // 1488285716 
$stmt = $db->query("SELECT * FROM posts where date > " . $start . " order by..."); 
?> 

但所有職位選擇! Resulut應該是零。
任何幫助?

回答

0

使用本

$start = strtotime("-1 month"); 
$date = date('Y-m-d h:i:s', $start); 
$stmt = $db->query("SELECT * FROM posts where date > " . $date . " order by..."); 
+0

你可以從純sql中做到這一點,而不需要格式化PHP中的日期時間。 – Shadow

-1

請檢查下面的查詢,可能是它會幫助你

SELECT * FROM posts 
WHERE YEAR(date) = YEAR(CURDATE()) 
AND MONTH(date) = MONTH(CURDATE() - INTERVAL 1 MONTH) 
+0

如果哪一年不等於? – bonaca

+0

如果year不相等,那麼它將不會獲取該記錄。 :) –

+0

@bonaca看到重複的話題,它包含多個正確的方法爲您的問題。 – Shadow