当使用cakephp Model-> find()方法时,我想以不同的方式对结果进行分组。cakephp - 如何以不同的方式对结果进行分组?
我的模式是:
`id` int(11) NOT NULL AUTO_INCREMENT,
`deviceid` varchar(255) NOT NULL,
`user_id` int(11) NOT NULL,
`sessionid` varchar(255) NOT NULL,
`ip` text NOT NULL,
`image_type` varchar(100) NOT NULL DEFAULT 'invalid_image',
`filename` text NOT NULL,
`analysis_basic` text COMMENT 'output from the image script',
`analysis_admin` text,
`created` datetime DEFAULT NULL,
`modified` datetime DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `sessionid` (`sessionid`)
CakePHP中我希望得到一些这样的事:
Array
(
[0] => Array
(
[Picture] => Array
(
[sessionid] => somevalue
)
[0] => Array
(
[id] => 32
[deviceid] => 5124125
[userid] => 4541221
...and all other fileds
)
[1] => Array
(
[id] => 35
[deviceid] => 5124125
[userid] => 4541221
...and all other fileds
)
)
[1] => Array
(
[Picture] => Array
(
[sessionid] => someothervalue
)
[0] => Array
(
[id] => 38
[deviceid] => 5124454
[userid] => 34241
...and all other fileds
)
[1] => Array
(
[id] => 35
[deviceid] => 5124454
[userid] => 34241
...and all other fileds
)
是可能使用CakePHP?还是有更好的方法来实现类似于上述的东西?如果我可以获得这样的结果,我知道[0]元素内的所有记录具有相同的sessionid ..这就是为什么。
我不记得有一个直接的功能,做你想做的蛋糕,你打开'foreach'解决方案吗? –
@SiGanteng是的,如果我们没有其他解决方案。或者你知道生成结果集的普通mysql查询 - 可以很容易地转换成类似的东西。 – sanandrl
不......在mysql中,'group by'不是将不同的结果分组到数组中,所以。 –