Cakephp如何仅按日期和月份订购

时间:2013-11-26 19:54:28

标签: php mysql sql cakephp cakephp-2.0

我有一个联系人表格,其中包含生日的日期字段。

现在我想在下周显示生日列表。我可以证明,但订单是基于年份。

如何仅根据月份和日期订购数据?

$sideBarTaskSuggestion = 
$this->Project->Contact->find('all', array(
   'conditions' => array(
      'Contact.group_id' => $this->Session->read('Auth.User.group_id'),
      'Contact.birthdate NOT' => null,
      'AND' => array(
           array('Contact.birthdate NOT' => null),
           array('Contact.birthdate + INTERVAL EXTRACT(YEAR FROM NOW()) - 
              EXTRACT(YEAR FROM Contact.birthdate) YEAR <=' => date('Y-m-d', 
                 strtotime('+1 week'))),
           array('Contact.birthdate + INTERVAL EXTRACT(YEAR FROM NOW()) -
              EXTRACT(YEAR FROM Contact.birthdate) YEAR >=' => date('Y-m-d')),
      )
    ),
   'order' => 'Contact.birthdate DESC'
)
);

1 个答案:

答案 0 :(得分:3)

当你说你想要'仅按月和日来订购数据?'时,我认为你的意思是:

  • 2013年11月22日
  • 1922年10月21日
  • 2000年3月5日
  • 2001年1月31日
  • 1990年1月1日

然后试试这个: 'order' => 'DAYOFYEAR(Contact.birthdate) DESC'