php – 如何在Zend Framework中使用GROUP_CONCAT?
发布时间:2020-12-13 13:14:17 所属栏目:PHP教程 来源:网络整理
导读:假设我有一张桌子:学生 ______________________________________________________|id | name | school | class |______________________________________________________| 1 | John | ABC | C1 || 2 | Jack | ABC | C1 || 3 | Anna | ABC | C1 || 4 | Pete
假设我有一张桌子:学生
______________________________________________________ |id | name | school | class | ______________________________________________________ | 1 | John | ABC | C1 | | 2 | Jack | ABC | C1 | | 3 | Anna | ABC | C1 | | 4 | Peter | DEF | D1 | | 5 | Alex | ABC | C2 | | 6 | Bryan | ABC | C2 | | 7 | David | ABC | C2 | | 8 | Cristian | DEF | D1 | _______________________________________________________ 使用此查询: SELECT a.class,GROUP_CONCAT(a.name) as names FROM students a WHERE a.school='ABC' GROUP BY a.class 给我这个结果: ____________________________ |class | names | ____________________________ | C1 | John,Jack,Anna | | C2 | Alex,Bryan,David| ____________________________ 如何使用Zend_Db_Table或Zend_Db_Select在Zend Framework中执行此查询?
我猜它会是这样的.试试吧.
$table = Your_DbTable_Class(); $select = $table->select() ->setIntegrityCheck(false) ->from(array('a' => 'students'),array( 'class' => 'class','names' => new Zend_Db_Expr('GROUP_CONCAT(a.name)')) ) ->where( 'a.school = ?','ABC' ) ->group('a.class'); 当我组装它时,它给了我以下查询: SELECT `a`.`class`,GROUP_CONCAT(a.name) AS `names` FROM `students` AS `a` WHERE (a.school = 'ABC') GROUP BY `a`.`class` 这是你在找什么? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |