CakePHP Извлечение строк за текущий месяц - PullRequest
0 голосов
/ 24 августа 2011

Мне нужен следующий код для получения строк с отметкой времени сегодняшнего дня:

    $interactives_presented_today = $this->find('count', 
                    array('conditions' => array( 'Tbsession.timestamp LIKE' => date("Y-m-d") . "%",
                                                'Tbsession.action LIKE' => "%Interactive",
                                                'Tbsession.username' => $user_id,
                                            ) )
                );

Теперь я хочу получить строки с отметкой времени этого месяца.Есть идеи?Большое спасибо за любую помощь!:)

Ответы [ 3 ]

7 голосов
/ 26 августа 2011
$this->find('all', array(
    'conditions' => array('MONTH(Tbsession.timestamp)' => date('n'))
));
2 голосов
/ 24 августа 2011

получает все строки, возраст которых менее 1 месяца:

$this->find('all',array(
   'conditions'=>array($this->alias.'.timestamp >'=>date('Y-m-d', strtotime("-1 month"))
));

если вы хотите получить в этом месяце:

$this->find('all',array(
   'conditions'=>array($this->alias.'.timestamp >'=>date('Y-m-00')
));
1 голос
/ 26 августа 2011

Вы можете использовать функцию mysql DATE_FORMAT () .

$this->find('all',array(
'conditions'=> array('DATE_FORMAT(Tbsession.timestamp,"%m") = "'.date("m").'"')
));
...