这是找到3个月旧记录的好方法

时间:2013-12-09 06:07:19

标签: php postgresql

请看一下mycode

$result = $db->query("SELECT u.*,age(u.created_on) older FROM users u")->fetchAll(PDO::FETCH_OBJ);
foreach ($result as $row) {
    preg_match("#(.*?)([0-9]+)(\s)mons(.*?)#is", $row->older, $match);
    if (isset($match[2]) && $match[2] == "3") {
        echo "{$row->email} is 3 month older";
    }
}

我知道这只能在一个查询中完成

您可以发布替代解决方案,或者可以改进我的代码。

我想在这里查看我做得对不对

1 个答案:

答案 0 :(得分:1)

如果你想获得超过三个月的记录,你可以写这样的查询:

select * from "table" WHERE dstart < current_date - INTERVAL '3 month'