2014-03-03 29 views
-2

查詢我是新來的CakePHP,並希望這個飽受質疑AND和OR CakePHP中

SELECT * 
FROM TABLE_NAME 
WHERE id=1 
     AND (country=INDIA OR country=JAPAN OR country=KOREA) 
+0

我回答你的問題,但是,這種情況不是一個好的條件,至少它只是一個例子 –

回答

3
$this->YourModel->find('all', array(
    'conditions' => array(
     'id' => 1, 
     'country' => array('INDIA', 'JAPAN', 'KOREA') 
))); 
+0

感謝您的回覆,但這是提取數據有印度國家,它不考慮韓國和日本 –

+1

該代碼是好的,我認爲它考慮了其中三個,但錯誤可能不是因爲國家選擇,可能是因爲「id = 1」,這意味着可能沒有任何數據是id = 1和國家日本或韓國 –

2

瞭解多一點Retrieving Your Data爲更好地理解語法,嘗試用:

$countries = $this->Country->find('all', array(
     'conditions' => array(
      'id' => 1, 
      'OR' => array(
       array('name' => 'INDIA'), 
       array('name' => 'KOREA'), 
       array('name' => 'JAPAN'), 
      ) 
     ) 
    )); 
+1

不需要「AND」陣列 - 將「OR」上移一級。 – Dave

+0

@Dave謝謝。修復。 –