我有一张表格如下
id day month year post title
-- --- ----- ---- ---- -----
1 11 3 2017 some text some title
2 12 3 2017 some text some title
3 3 4 2017 some text some title
4 1 5 2017 some text some title
我想要做的是我想从给定日期到今天日期从表格中选择所有记录。例如,如果表具有日期格式化字段,则我的sql select语句将如下所示
SELECT * From table Where date_field between '01/01/2015' and curdate()
但是,我的表中没有日期格式化字段。我的表中只有日期的整数字段。所以,我不知道如何选择日期之间的条件。
我试图为我的问题找到解决方案。但我无法找到解决问题的方法。我是新手php网站开发人员。
那么,任何人都可以解决我的问题吗?请帮帮我。
答案 0 :(得分:0)
根据@Justcode的建议,我找到了问题的解决方案。这是解决方案>>>
$sql = "SELECT * FROM(
SELECT STR_TO_DATE(CONCAT(m.day, '/', m.month, '/',m.year),'%d/%m/%Y')
AS POST_DATE, m.* FROM `maxim` AS m) as t
WHERE t.POST_DATE BETWEEN :start_date AND curdate() ORDER BY id DESC";
$stm = $this->db->prepare($sql);
$stm->bindParam(":start_date", $start_date, PDO::PARAM_STR);
$stm->execute();
return $stm->fetchAll(PDO::FETCH_ASSOC);
感谢@Justcode为您的概念。