2 回答

TA貢獻(xiàn)1111條經(jīng)驗(yàn) 獲得超0個(gè)贊
從原來的兩個(gè)數(shù)組中,只需重新索引month并遞歸合并它們:
$result = array_merge_recursive(array_column($array1, null, 'month'),
array_column($array2, null, 'month'));
其產(chǎn)量:
Array
(
[November] => Array
(
[month] => Array
(
[0] => November
[1] => November
)
[Average Purchase Price] => 2.52
[Total Purchase Gallons] => 84000
[Average Customer Price] => 2.79
[Total Customer Gallons] => 25000
)
[October] => Array
(
[month] => Array
(
[0] => October
[1] => October
)
[Average Purchase Price] => 2.615
[Total Purchase Gallons] => 63000
[Average Customer Price] => 2.905
[Total Customer Gallons] => 5500
)
)
輕松訪問一個(gè)月內(nèi)的任何密鑰:
echo $result['October']['Average Purchase Price'];
echo $result['October']['Average Customer Price'];
// etc...
或者循環(huán):
foreach($result as $month => $values) {
echo $month;
echo $values['Average Purchase Price'];
echo $values['Average Customer Price'];
// etc...
}
但是,您在兩個(gè)可以組合的查詢中進(jìn)行了編輯。這可能會(huì)起作用,或者會(huì)問另一個(gè)問題,毫無疑問有人可以給你一個(gè)查詢:
SELECT month, AVG(price) AS 'Average Purchase Price', SUM(gallons) AS 'Total Purchase Gallons'
FROM purchase_contracts GROUP BY month
UNION ALL
SELECT month, AVG(price) AS 'Average Customer Price', SUM(gallons) AS 'Total Customer Gallons'
FROM customer_contracts GROUP BY month

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超5個(gè)贊
這很簡單的迭代:
<?php
$oldArr = [
['month' => 'November', 'Average Purchase Price' => 2.52, 'Total Purchase Gallons' => 84000],
['month' => 'October', 'Average Purchase Price' => 2.615, 'Total Purchase Gallons' => 63000],
['month' => 'November', 'Average Customer Price' => 2.79, 'Total Customer Gallons' => 25000],
['month' => 'October', 'Average Customer Price' => 2.9050000000000002, 'Total Customer Gallons' => 5500]
];
$newArr = [];
foreach ($oldArr as $item) {
$month = $item['month'];
if (!array_key_exists($month, $newArr)) {
$newArr[$month] = $item;
}
}
echo '<pre>';
print_r($newArr);
- 2 回答
- 0 關(guān)注
- 140 瀏覽
添加回答
舉報(bào)