我有以下查詢:爲什麼Zend Framework在where子句中添加括號?
$tagCordQuery = $this->freqDb->select()
->from("rr_amplifiers", "*")
->join("amplifiers_coordinate", "amplifiers_coordinate.name = TRIM(TRAILING '0' FROM rr_amplifiers.name)", array())
->where("amplifiers_coordinate.name IN(?)", $apsName);
其中$ apsName它是一個數組。
問題是,當這個數組只有一個元素查詢了這樣額外的括號:
SELECT `rr_amplifiers`.* FROM `rr_amplifiers`
INNER JOIN `amplifiers_coordinate` ON amplifiers_coordinate.name = TRIM(TRAILING '0' FROM rr_amplifiers.name) WHERE (amplifiers_coordinate.name IN('xpto'))
爲什麼這樣它的發生?
公平的問題,但在這個例子中注意額外的括號,並不重要。 –
是的,我注意到了,但是它的問題在括號裏有一些地方,因爲當數組有多個元素時不會發生這個錯誤 –
我認爲這不是錯誤,你的查詢可以這樣工作 – Hackerman