如何组合2个sql查询以获得1个结果

问题描述 投票:0回答:1
SELECT users.name, users.registrationdate, users.city, users.status
FROM users, referrals
WHERE users.username= referrals.referrals AND referrals.username='user_name'

SELECT adearning, reffearning
FROM earnings WHERE usersname='user_name33'

如何组合这两个查询,就好像第一个查询条件不匹配并且不运行一样。那么第二个查询应该运行并在条件匹配时返回一些值

php mysql database codeigniter activerecord
1个回答
0
投票

试试这个

$query1 = $this->db->query("SELECT users.name, users.registrationdate, users.city, users.status 
                            FROM users, referrals 
                            WHERE users.username = referrals.referrals AND referrals.username='user_name'")
$result1 = $query1->result_array();


$query2 = $this->db->query("SELECT adearning, reffearning FROM earnings WHERE usersname='user_name33' ")
$result2 = $query2->result_array();


$dataArray = array_merge($result1, $result2);

如果想检查结果,请在行尾添加此

print_r($dataArray);die;

在此,它将在一个数组中打印所有内容


示例

$result1 = array(
    '0' => 'sjhccsd', 
    '1' => 'ddd', 
    '2' => 'df', 
    '3' => 'dfd', 
    );

$result2 = array(
    '0' => 'sjhccsd', 
    '1' => 'ddd', 
    '2' => 'df', 
    '3' => 'dfd', 
    );


$dataArray = array_merge($result1, $result2);

print_r($dataArray);

输出

Array ( [0] => sjhccsd [1] => ddd [2] => df [3] => dfd [4] => sjhccsd [5] => ddd [6] => df [7] => dfd )

© www.soinside.com 2019 - 2024. All rights reserved.