如何将一些表联接为数组。
餐桌上的"水果"是首要的餐桌。
表"ordered"的"fruit_id"字段取自表"fruits"id。
表:水果
------------------------------------------------------+
id fruits date_created
------------------------------------------------------+
1 Apple 2016-03-31 14:29:29
2 Blueberry 2016-03-30 14:22:54
3 Coconut 2016-03-30 14:19:12
------------------------------------------------------+
表:订购
------------------------------------------------------------------------------------------------+
id fruit_id package_id price_with_ship price_without_ship
------------------------------------------------------------------------------------------------+
1 3 10 150 0
2 3 11 0 110
3 2 10 0 87
4 2 11 0 95
5 2 12 100 0
6 1 12 75 0
------------------------------------------------------------------------------------------------+
这是我建议的结果。
Array
(
[0] => Array
(
[id] => 1
[name] => Apple
[date_created] => 2016-03-31 14:29:29
[package_id] => Array
(
[0] => 10
[1] => 11
)
[price_with_ship] => Array
(
[0] => 150
[1] => 0
)
[price_with_ship] => Array
(
[0] => 0
[1] => 110
)
)
[1] => Array
(
[id] => 1
[name] => Blueberry
[date_created] => 2016-03-30 14:22:54
[package_id] => Array
(
[0] => 10
[1] => 11
[2] => 12
)
[price_with_ship] => Array
(
[0] => 0
[1] => 0
[2] => 100
)
[price_with_ship] => Array
(
[0] => 87
[1] => 95
[2] => 0
)
)
[1] => Array
(
[id] => 1
[name] => Coconut
[date_created] => 2016-03-30 14:19:12
[package_id] => 12
[price_with_ship] => 75
[price_with_ship] => 0
)
提前感谢您的帮助。
您可以按照以下方式加入-
select f.*, o.*
from fruit as f
join order as o on o.fruit_id=f.id
where f.id=1;
您需要两个查询
-
获取
id, name, date_created
:Select o.id, f.name, f.date_created From ordered o left join fruits f ON o.fruit_id = f.id
-
为每条记录选择详细信息:
Select package_id, price_with_ship, price_without_ship From ordered Where id = ? -- replace with id from the loop