下面顯示的所有行是Banking
MySQL表結構:的CakePHP的GroupBy以結構化格式
id | name | type
1 | abc | xyz
2 | jkl | xyz
3 | efg | pql
眼下記錄顯示在下面的格式:
Array
(
[0] => Array
(
[Banking] => Array
(
[id] => 1
[name] => abc
[type] => xyz
)
)
[1] => Array
(
[Banking] => Array
(
[id] => 2
[name] => jkl
[type] => xyz
)
)
[2] => Array
(
[Banking] => Array
(
[id] => 3
[name] => efg
[type] => pql
)
)
)
我需要GROUPBY領域根據type
字段並顯示所有記錄。以下是期望結構:
Array
(
[xyz] => Array
(
[0] => Array
(
[id] => 1
[name] => abc
)
[1] => Array
(
[id] => 2
[name] => jkl
)
)
[pql] => Array
(
[0] => Array
(
[id] => 2
[name] => efg
[type] => xyz
)
)
)
我試圖分組它下面的方式,但沒有奏效,因爲顯示的GroupBy每type
只有一個記錄。
$bankList = $this -> Banking -> find('all', array(
'order' => 'Banking.name asc',
'fields' => array(
'Banking.id',
'Banking.name',
'Banking.type'
),
'group' => array('Banking.type')
));
雖然我取得的成果定製$bankList
:
foreach ($bankList as $b) {
if (!in_array($b['Banking']['type'], $type)) {
$type[] = $b['Banking']['type'];
}
$bList[$b['Banking']['type']][] = array(
'name' => $b['Banking']['name'],
'id' => $b['Banking']['id']
);
}
,但如果可能的只有一個查詢疑惑?
您應該使用訂單 – 2015-02-06 11:57:27