2

我想从表中选择date< today-15在 php 或 sql 中添加天数的所有行。

例子:

SELECT  * FROM order WHERE date_added< (now()-15days).

我怎样才能做到这一点?

4

3 回答 3

4

您可能想要使用datestrtotime功能

$fiftendaysago = date('Ymd',strtotime("-15 days"));

现在查询

$sql = "SELECT  * FROM order WHERE date_added< '$fiftendayago' ";
于 2013-05-13T21:13:19.570 回答
3

在php中构建日期

<?php

$DateString = date('Ymd', strtotime('-15 days'));

$sql = "SELECT  * FROM order WHERE date_added< '$DateString' ";

//Execute your SQL and do your stuff.
于 2013-05-13T21:12:53.680 回答
1

我通常使用 date_diff 函数

所以sql查询看起来像

SELECT  * FROM order WHERE date_diff(now(), date_added) < 15 ;

它本身的功能

CREATE OR REPLACE FUNCTION date_diff(date, date)
 RETURNS integer AS
 $BODY$
 select $1-$2; $BODY$
LANGUAGE 'sql' VOLATILE
COST 100;

数据库将进行计算。您可以使用变量传递日期的间隔。

于 2013-05-14T00:55:02.350 回答