【发布时间】:2012-05-03 13:24:37
【问题描述】:
几乎像这样:PHP/mySQL - how to fetch nested rows into multidimensinal array
SELECT products.NAME, products_prices.PRICE FROM products LEFT JOIN products_prices ON products.ID = products_prices.PROD_ID
这通常会导致:
NAME, PRICE
window, 1000
window, 1200
mouse, 1400
因为window 有两个价格,而且可能根本没有价格。我希望它产生一个数组:
$arr = array(
array('NAME' => 'window', 'price' => array(
array('PRICE' => 1000),
array('PRICE' => 1200)
),
array('NAME' => 'mouse', 'price' => array(
array('PRICE' => 1400)
)
);
因此,连接的记录将是子数组。另一个问题可以有多个连接,但只有 LEFT JOIN-s。如何很好地做到这一点?链接的示例将连接的列放在主要部分,我不想这样做。
【问题讨论】:
-
LEFT JOINS,它们的倍数,都差不多。另一个选项是UNION,它变成了子查询,这有点超出我目前的能力。 -
我尝试了什么? NOTHING :D 它非常复杂
-
见下面我的回答。这并不复杂。但如果你从不尝试,就让别人为你做,下次可能看起来很复杂......