この配列を見ると、foo6
値だけが各親キーと異なることがわかります。
Array
(
[0] => Array
(
[foo1] => Apple
[foo2] => Banana
[foo3] => Carrots
[foo4] => Deer
[foo5] => Feather
[foo6] => Grapes
)
[1] => Array
(
[foo1] => Apple
[foo2] => Banana
[foo3] => Carrots
[foo4] => Deer
[foo5] => Feather
[foo6] => Heater
)
[2] => Array
(
[foo1] => Apple
[foo2] => Banana
[foo3] => Carrots
[foo4] => Deer
[foo5] => Feather
[foo6] => Quail Eggs
)
)
クエリ:
SELECT
tpp.page_master_properties_style AS foo1,
tpp.page_master_properties_bg AS foo2,
tpp.page_master_properties_data AS foo3,
tpp.page_properties_style AS foo4,
tpp.page_properties_bg AS foo5,
tpp.page_properties_data AS foo6,
tobj.objects_script AS foo6
FROM templates t
INNER JOIN category tc
ON t.category_id = tc.category_id
INNER JOIN page_properties tpp
ON t.templates_id = tpp.templates_id
INNER JOIN objects tobj
ON t.templates_id = tobj.templates_id
WHERE
t.templates_id = ?
どこ? = 1
これはおそらく、Tableオブジェクトに次の複数のエントリがあるためですtemplates_id
。
+--------------+----------------+-----------------+
| objects_id | templates_id | objects_script |
+--------------+----------------+-----------------+
| 1 | 1 | Grapes |
| 2 | 1 | Heater |
| 3 | 1 | Quail Eggs |
| 4 | 2 | Milk |
| 5 | 3 | Lemon |
+--------------+----------------+-----------------+
foo6
たとえば、次のような結果を達成するために、単一の配列に結合できる組み込みのmySQL関数があるのではないかと思います。
Array
(
[foo1] => Apple
[foo2] => Banana
[foo3] => Carrots
[foo4] => Deer
[foo5] => Feather
[foo6] => Array
(
[0] => Grapes
[1] => Heater
[2] => Quail Eggs
)
)