只是好奇,如果讓說我有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