2013-12-17 23 views
1

你好我有查詢,我必須申請和條件加入地方,但我不知道如何在zend做到這一點。請幫忙。申請AND條件在加入Zend框架

$dbA = $this->dbAdapter; 
     $sql = new Sql($dbA); 
     $select = $sql->select()->from(array('answer' => 'tblanswer')); 
     $select->columns($fetch); 
     $select->join(array('fixed' => 'tblfixanswer'), 'fixed.aid = answer.aid', array(), 'left'); 
     $selectString = $sql->getSqlStringForSqlObject($select); 
     $results = $dbA->query($selectString, $dbA::QUERY_MODE_EXECUTE); 

所需出需要的是:

SELECT * 
FROM `tblanswer` AS `answer` 
LEFT JOIN `tblfixanswer` AS `fixed` ON `fixed`.`aid` = `answer`.`aid` and fixed.baid=27 

值27由可變的到來。

+0

謝謝Ronak,我已經申請的方式,但值27由可變來得這麼表示喜歡這樣的報價:AND fixed.baid = '27' –

回答

2

您可以輕鬆地做到這一點的,

dbA = $this->dbAdapter; 
    $sql = new Sql($dbA); 
    $select = $sql->select()->from(array('answer' => 'tblanswer')); 
    $select->columns($fetch); 
    $select->join(array('fixed' => 'tblfixanswer'), 'fixed.aid = answer.aid AND fixed.baid=27', array(), 'left'); 
    $selectString = $sql->getSqlStringForSqlObject($select); 
    $results = $dbA->query($selectString, $dbA::QUERY_MODE_EXECUTE); 

希望幫助..

+0

謝謝你Ronak,我已經應用你的方式,但值27來自一個變量,所以顯示像這樣的報價:AND fixed.baid = '27' –

+0

很高興幫助,考慮[接受答案](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235) –

+0

是的,但仍然沒有來臨c完整的答案,請考慮我提到的條件。 –