Mysql cakephp2:如何从同一个模型中获得不同条件下的两个不同数据
我刚接触cakephp2和mysql,需要一些帮助 我想从cakephp2的同一个模型中获取昨天和前天的数据, 但是条件会有所不同,所以我尝试通过创建两个不同的方法来获取数据,其中包含具有不同条件的find(),但是,我没有工作。这是下面的示例↓ 此方法getDayed()将以数组形式返回数据,但我想添加一个条件 这将检查页面浏览计数是否不是0,我将如何执行该操作Mysql cakephp2:如何从同一个模型中获得不同条件下的两个不同数据,mysql,cakephp,Mysql,Cakephp,我刚接触cakephp2和mysql,需要一些帮助 我想从cakephp2的同一个模型中获取昨天和前天的数据, 但是条件会有所不同,所以我尝试通过创建两个不同的方法来获取数据,其中包含具有不同条件的find(),但是,我没有工作。这是下面的示例↓ 此方法getDayed()将以数组形式返回数据,但我想添加一个条件 这将检查页面浏览计数是否不是0,我将如何执行该操作 public function getYesterday() { $yes = array();
public function getYesterday() {
$yes = array();
$dt = date('Y-m-d', strtotime('-1 day'));
// $dy = date('Y-m-d', strtotime('-2 day'));
$yesterday = $this->PvLog->find('all', array(
'fields' => array('dt', 'params', 'count(params) as yesterday_pv'),
'conditions' => array('dt' => "2014/09/26", 'is_crawler' => 0,'count(page_view)>'=>0),
'group' => array('params'),
'order' => array('count(params)' => 'DESC'),
));
foreach ($yesterday as $y) {
$yes[] = $y;
//$i++;
}
return $yes;
}
下面的函数将获取前天的数据
public function getDBY() {
$dayyes = array();
$dt = date('Y-m-d', strtotime('-2 day'));
$daybefore = $this->PvLog->find('all', array(
'fields' => array('dt', 'params', 'count(params) as daybefore_pv'),
'conditions' => array('dt' => "{$dt}", 'is_crawler' => 0),
'group' => array('params'),
'order' => array('count(params)' => 'DESC'),
));
foreach ($daybefore as $dby) {
$dayyes[] = $dby;
//$i++;
}
return $dayyes;
}
问题是我不确定这种方式,是否有更好的解决方案,可以在mysql cakephp2中在不同的条件下得到不同的结果?我想做的主要事情是从同一个模型中获取昨天的数据和前天的数据,但我不确定如何才能做到这一点,我检查了cakes文档,但找不到解决方案。对不起,我的英语不好。你知道解决问题所需的正确SQL吗?如果你想问更好的方法,我会说:如果你想在同一数组中获取数据,那么只使用一个查询,其中条件dt=昨天或dt=昨天之前,如果您想将它放在不同的数组中,您可以使用不同查询的方式。备注:如果将日期用作条件,则不必获取日期;它是一个未使用的字段。。。