合并/合并来自不同数据库的两个查询的结果

时间:2016-12-16 18:33:10

标签: sql-server postgresql php

我正在尝试使用PHP生成一个Web报告,该报告从SQL Server数据库中查询主查询,并从PostgreSQL数据库中获取另一个查询。

合并结果的最佳方法是什么?目前我正在将结果输出为数组。

这两个阵列是这样组成的:

Array1
(
    [0] => Array
        (
            [site_name] => TESTSITE
            [status] => 1
        )
)
Array2
(
    [0] => Array
        (
            [site_name] => TESTSITE
            [booking_id] => 2156
            [jobresults_key] => 1239
            [result] => 4
        )
)

两个数组中的公共项都是[site_name],如果匹配的[status]中没有任何内容,我希望在array1中显示[site_name],如果匹配的话{在array2中{1}},它应显示[site_name]

1 个答案:

答案 0 :(得分:0)

只要数组很短并且array1总是更大,这应该可以正常工作。

$array1 = array(
    array(
        'site_name' => 'TESTSITE',
        'status' => 1
    ),
    array(
        'site_name' => 'TESTSITE-2',
        'status' => 1
    )
);
$array2 = array(
    array(
        'site_name' => 'TESTSITE',
        'booking_id' => 2156,
        'jobresults_key' => 1239,
        'result' => 4
    )
);
foreach($array1 as &$item1){
    foreach($array2 as $item2){
        if( $item1['site_name'] === $item2['site_name'] ){
            $item1 = array_replace($item1, $item2);
        }
    }
}
print_r($array1);