0

zendでこのようなことを行う方法:

SELECT LEFT(log_browser, LOCATE(' ', log_browser)) AS browser, COUNT(*) AS amount
FROM logs
GROUP BY LEFT(log_browser, LOCATE(' ', log_browser))
4

2 に答える 2

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

ディン

于 2012-11-15T02:57:18.547 に答える
0

式ステートメントには Zend_Db_Expr クラスを使用します。

$browserExpr = new Zend_Db_Expr('LEFT(log_browser, LOCATE(" ", log_browser))');
$select->from("logs", array('browser' => $browserExpr))->group($browserExpr);
于 2012-11-16T07:14:25.220 に答える