我有两个表,其中第一个看起来像这样:
customer
----------
id
name
age
sex
还有另一个看起来像这样的表:
phone
---------
id
customer_id
number
ext
phone_type
如果我想获得一个包含所有电话号码的客户,我会加入并可能获取如下数据:
id name age sex number ext phone_type
---------------------------------------------------
1 Bob 36 M 555-4343 3 office
1 Bob 36 M 555-1111 mobile
2 Sue 23 F 123-4444 42 office
2 Sue 23 F 123-2222 home
2 Sue 23 F 123-1111 mobile
使用PHP,我希望将这些行转换为更可用的数据结构。我希望有一个具有2行的关联数组,而不是具有5行的关联数组,其中1行用于Bob,另一行用于Sue。然后,每行将有一个名为“电话”的字段,其中包含一个数组,其中包含所有客户的电话号码。
我已经查看了PDO提供的所有获取模式,但没有发现有任何帮助。我唯一想做的就是遍历返回数据集中的每一行并构建一个全新的数组。如果我有一个很大的返回数据集,这似乎会变得效率很低。是否有PDO提取方法或解决此问题的有效方法?