2014-10-17 59 views
0

與Yii框架2.0工作之間我與列的數據庫表'FROM_DATE''TO_DATE'。我想選擇和計數的所有記錄其中:今天Yii框架2.0的ActiveRecord日期不是兩個日期

  1. 沒有 FROM_DATE和TO_DATE 之間。即使不等於這些日期(!($ FROM_DATE < = $今天)& &!($今天< = $ TO_DATE)))

OR

  • FROM_DATE是NULL和TO_DATE是NULL。因爲在某些記錄中這些日期是空的,它們需要被選中並計數。
  • 我有一個擴展ActiveRecord類的模型,所以我可以使用下面的代碼檢索數據:

    ModelClass::find()-where('big>small')->andWhere('1<2')->orWhere('3>1')->count(); 
    

    我想讀的Yii 2.0的文檔,但無法弄清楚如何不使用BETWEEN或EQUAL NULL。

    回答

    0

    你傳遞參數「不」之前去查詢,例如:

    $query->andWhere(['not',['id'=> null]]); 
    
    0

    你可以試試這個

    ->andWhere(['NOT', 
         ['AND', 
         ['>=', 'fromTime', (new \DateTime($from_date))->format('H:i:s')], 
         ['<=', 'toTime', (new \DateTime($to_date))->format('H:i:s')] 
         ] 
        ]);