如何在zend中执行此类操作:
SELECT LEFT(log_browser, LOCATE(' ', log_browser)) AS browser, COUNT(*) AS amount
FROM logs
GROUP BY LEFT(log_browser, LOCATE(' ', log_browser))
答案 0 :(得分:0)
尝试: $ select-> from($ name,$ column) - > group()
$select->from("logs", array("LEFT(log_browser, LOCATE(' ', log_browser))" => "browser" ,"count(*)" => "amount"))
->group(array("LEFT(log_browser, LOCATE(' ', log_browser)");
更多信息如何运作 http://framework.zend.com/manual/1.12/en/zend.db.select.html#zend.db.select.building.group
DINS
答案 1 :(得分:0)
对表达式语句使用Zend_Db_Expr类:
$browserExpr = new Zend_Db_Expr('LEFT(log_browser, LOCATE(" ", log_browser))');
$select->from("logs", array('browser' => $browserExpr))->group($browserExpr);