只是好奇,如果让说我有SQL在这种结构PDO复杂的提取模式
array(
0 => array(
'article.id' => '1001',
'article.title' => 'lorem ipsum',
'article.body' => 'dolor sit',
'user.id' => '2012',
'user.name' => 'foo',
'user.email' => '[email protected]'
),
1 => array(
'article.id' => '1001',
'article.title' => 'lorem ipsum',
'article.body' => 'dolor sit',
'user.id' => '2013',
'user.name' => 'bar',
'user.email' => '[email protected]'
)
);
返回数据正如你可以看到这两个实际上指的是同一篇文章,而是由2个不同的用户共同撰写,不使用任何其他的ORM/DB库,只是普通的PDO,你会怎么做,从数据库返回的数据转换成这种形式:
array(
0 => array(
'article.id' => '1001',
'article.title' => 'lorem ipsum',
'article.body' => 'dolor sit',
'user' => array(
0 => array(
'user.id' => '2012',
'user.name' => 'foo',
'user.email' => '[email protected]'
),
1 => array(
'user.id' => '2013',
'user.name' => 'bar',
'user.email' => '[email protected]'
)
),
)
);
而且,其DB库(如果可能的话,没有ORM)可以做到这一点没有很多努力?
如果我返回的行数多于2行,并且它有许多由不同作者共同编写的文章,该怎么办?如果我将一个大的查询分成2个,那还会更好吗? – Jeffrey04 2011-01-29 10:11:28