Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在cakephp中查找以前的日期?_Php_Sql_Database_Cakephp_Find - Fatal编程技术网

在cakephp中查找以前的日期?

在cakephp中查找以前的日期?,php,sql,database,cakephp,find,Php,Sql,Database,Cakephp,Find,我有一张有“日期”栏的桌子。日期是有序的。我有一个日期,我必须找到它的记录。但是如果没有确切的日期,我必须找到最近的以前的记录。我怎么做 我将php与cakephp框架结合使用,我知道find'first'和其他函数,但我不知道我可以使用哪一个 谢谢 以下是一些有助于你前进的陈述 create table dates (birthday date primary key); insert into dates values (DATE '2015-12-15'), (D

我有一张有“日期”栏的桌子。日期是有序的。我有一个日期,我必须找到它的记录。但是如果没有确切的日期,我必须找到最近的以前的记录。我怎么做

我将php与cakephp框架结合使用,我知道find'first'和其他函数,但我不知道我可以使用哪一个


谢谢

以下是一些有助于你前进的陈述

create table dates
(birthday date   primary key);


insert into dates
values 
    (DATE '2015-12-15'),
    (DATE '2015-11-14'),
    (DATE '2015-10-13');

select birthday,
       to_date('20/12/2015 00:00:00', 'DD/MM/YYYY HH24:MI:SS'),
       datediff(to_date('20/12/2015 00:00:00', 'DD/MM/YYYY HH24:MI:SS'), birthday)  
from dates
order by 3

我想你可以像下面那样做

$days = '-7 days'; // prev a week
$today = date('Y-m-d');
$prevDate = date('Y-m-d', strtotime($days, strtotime($today)));
$conditions = array('YourModel.colDate >=' => $prevDate, 'YourModel.colDate <=' => $today);
// find all records have $prevDate <= colDate <= $today
$this->YourModel->find('all', array('conditions' => $conditions));
$days='-7天“;//上一周
$today=日期('Y-m-d');
$prevDate=日期('Y-m-d',标准时间($days,标准时间($today));

$conditions=array('YourModel.colDate>='=>$prevDate',YourModel.colDate嘿,像这样删除与应用程序相关的链接是相当垃圾的。不要这样做!你的问题相当肤浅。你不知道小于或等于条件?你不知道如何限制选择?你到底有什么问题?