嘿伙计们我坚持这个问题
我有两个不同的表,列名相同,但主键ID
的值不同表1:q1
id ability_to_delegate communication confidence commitment
1 0 0 1 0
2 0 0 0 0
3 0 0 0 0
4 1 0 1 0
表2:q2
id ability_to_delegate communication confidence commitment
1 0 0 2 1
2 0 0 1 1
3 0 0 0 0
4 0 0 1 1
现在我想要的是将具有相同字段名但不同ID的两个不同表的值相加。
例如,我希望表q1中的置信区域的值为id = 4,即表q2的置信区域的值为id = 1,即2,即3。
我尝试使用union但没有得到rseult
$mresult=mysqli_query($con,"select sum(sm) from
(select confidence sm from q1 where id='$id'
union
select confidence sm from q2 where id='$id') ss");
while ($row1 = mysqli_fetch_assoc($mresult)){
echo "Sum ". $row1['ss'];
}
我收到警告
Warning: mysql_fetch_assoc() expects parameter 1 to be resource, object given in .... on line 89
请帮帮我
答案 0 :(得分:3)
完成您要找的内容的查询是
SELECT `q1`.`confidence` + `q2`.`confidence` AS `TotalConfidence`
FROM `q1`, `q2`
WHERE `q1`.`id` = 4
AND `q2`.`id` = 1
您可以将其插入PHP并在适当的位置替换变量。
$mresult=mysqli_query($con,"SELECT `q1`.`confidence` + `q2`.`confidence` AS `TotalConfidence` FROM `q1`, `q2`WHERE `q1`.`id` = '{$q1id}' AND `q2`.`id` = '{$q2id}'");
while ($row1 = mysqli_fetch_assoc($mresult)){
echo "Sum ". $row1['TotalConfidence'];
}