2010-08-19 61 views
7

我試圖從2個表獲得2個計數和制定出像一個MySQL數據庫簡單的SQL查詢,與結果相結合,分化

1)選擇field_one,COUNT(*)從表1組COUNT_ONE百分比通過field_one; 2)選擇other_field,count_(*)作爲COUNT_TWO從table2組中by other_field;

我想結合結果併爲FINAL_COUNT =(COUNT_ONE/COUNT_TWO)* 100表示​​百分比嗎?

+0

如何在表連接?通過field_one = other_field? – 2010-08-19 12:56:01

+0

不加入,兩個單獨的表 – piet 2010-08-19 12:56:25

+0

field_one和other_field在兩個表中有相同的值嗎? – 2010-08-19 12:57:11

回答

12

快速和骯髒的:

select (a.count_one/b.count_two) * 100 as final_count from 
(select field_one, count(*) as count_one from table1 group by field_one) a, 
(select field_two, count(*) as count_two from table2 group by field_two) b 
where a.field_one = b.field_two 
+0

!真棒作品:D謝謝 – piet 2010-08-19 13:06:19

5
select sum(((QUERY FROM TABLE 1)/(QUERY FROM TABLE 2)) * 100) as percentage 
+2

這很好吃!但僅供參考:在代碼中不需要'sum()',這足夠:'select(((QUERY FROM TABLE 1)/(QUERY FROM TABLE 2)* 100)以百分比形式 – 2013-04-10 12:58:39

+0

Marco您是對的。這個解決方案甚至更好,因爲寫得更快:)。 – rom 2014-12-01 17:03:57