0
我試圖用Zend_Db_Select對象編寫看起來有點像這樣的選擇查詢:Zend框架選擇運算符優先級
SELECT * FROM bar WHERE a = 1 AND (b = 2 OR b = 3)
然而,使用其中()和orWhere(),這似乎是不可能的組合時,使用如上所述的條件分組。
是否有Zend框架的任何原生的方式來實現上述(無需編寫實際的查詢?)
我試圖用Zend_Db_Select對象編寫看起來有點像這樣的選擇查詢:Zend框架選擇運算符優先級
SELECT * FROM bar WHERE a = 1 AND (b = 2 OR b = 3)
然而,使用其中()和orWhere(),這似乎是不可能的組合時,使用如上所述的條件分組。
是否有Zend框架的任何原生的方式來實現上述(無需編寫實際的查詢?)
從the manual(例11.61。圓括號布爾表達式的例子)
// Build this query:
// SELECT product_id, product_name, price
// FROM "products"
// WHERE (price < 100.00 OR price > 500.00)
// AND (product_name = 'Apple')
$minimumPrice = 100;
$maximumPrice = 500;
$prod = 'Apple';
$select = $db->select()
->from('products',
array('product_id', 'product_name', 'price'))
->where("price < $minimumPrice OR price > $maximumPrice")
->where('product_name = ?', $prod);
以上參考很棒,但如果你在玩絃樂呢?
這裏會是用繩子上面的例子...
// Build this query:
// SELECT product_id, product_name, price
// FROM "products"
// WHERE (product_name = 'Bananas' OR product_name = 'Apples')
// AND (price = 100)
$name1 = 'Bananas';
$name2 = 'Apples';
$price = 100;
$select = $db->select()
->from('products',
array('product_id', 'product_name', 'price'))
->where("product_name = '" . $name1 . "' OR product_name = '" . $name2 . "'")
->where("price=?", $price);
我希望幫助。花了我一些鬼混讓字符串正常工作。
乾杯。
感謝您的回覆,我很感激。 – 2009-04-08 05:51:11