[英]How To get value form 2 table with same condition
I have 2 tables, t_silm and t_revenue, and I want to sum some both tables with the same condition. 我有2个表,t_silm和t_revenue,我想要将两个表的条件相加。 This is sample my table:
这是我的表样本:
https://ibb.co/JtCp80w https://ibb.co/JtCp80w
t_silm
bl - th - tw - total
10 - 2018 - 4 - 100
11 - 2018 - 4 - 200
12 - 2018 - 4 - 300
t_revenue
bl - th - tw - jumlah
10 - 2018 - 4 - 25
11 - 2018 - 4 - 70
12 - 2018 - 4 - 45
I want to get the result: 我想得到结果:
avg = total / jumlah;
condition = tw =4 and th = 2018;
Please can somebody help me? 请有人帮帮我吗?
$query = "SELECT sum(t_slim.pemakaian_309) as to1, sum(t_revenue.jumlah) as to2, to1/to2 as taverage from t_slim t1 INNER JOIN t_revenue t2 on t1.tahun=t2.tahun and t1.triwulan=t2.triwulan WHERE t1.tahun=$tahun and t1.triwulan=$triwulan GROUP BY bulan"; $hasil = mysql_query($query); $baris = 3; while ($data = mysql_fetch_array($hasil)) { $worksheet2->write_string(11, $baris, number_format($data['taverage'],2),$format2); $baris++; }
Try this query 试试这个查询
SELECT t1.total as total1, t2.total as total2, total1/total2 as total_avg
from t_slim t1 INNER JOIN t_revenue t2 on t1.th=t2.th
and t2.tw=t1.tw WHERE t1.th=2018 and t1.tw=4
not sure about what you want. 不确定你想要什么。
First you want to sum the column 'total' : 首先,您要对“总计”列进行求和:
SELECT SUM(total) as total1, th, tw FROM t_silm GROUP BY th,tw
Then you want to sum the column jumlah : 然后你要总结列jumlah:
SELECT SUM(jumlah) as total2, th, tw FROM t_silm GROUP BY th,tw
Group this 2 query in 1 query : 将此2个查询分组为1个查询:
SELECT *
FROM
(SELECT SUM(total) as total1, th, tw FROM t_silm GROUP BY th,tw ) as T1
INNER JOIN
(SELECT SUM(jumlah) as total2, th, tw FROM t_silm GROUP BY th,tw) as T2
on T2.tw =T1.tw AND T2.th=T1.th
Now add the condition and the avg : 现在添加条件和平均值:
SELECT T1.th, T1.tw, total1/total2 as avg
FROM
(SELECT SUM(total) as total1, th, tw FROM t_silm GROUP BY th,tw ) as T1
INNER JOIN
(SELECT SUM(jumlah) as total2, th, tw FROM t_silm GROUP BY th,tw) as T2
on T2.tw =T1.tw AND T2.th=T1.th
WHERE T1.tw =4 and T1.th = 2018;
you can use this query 你可以使用这个查询
SELECT sum(t_slim.total) as to1, sum(t_revenue.jumlah) as to2, to1/to2 as taverage
from t_slim t1 INNER JOIN t_revenue t2 on t1.th=t2.th
and t1.tw=t2.tw WHERE t1.th=2018 and t1.tw=4
this gives you the average as the answer 这给你平均值作为答案
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.