2011-12-05 7 views
1

1日ごとにグループ化されたレコードの数をカウントする2つのMySQLクエリがあります。コンテンツはお互いに関連しています(私はやがて1つのカウントを他のもののパーセンテージとして見たいと思っています)。一緒にグループ化するにはどうすればいいですか?2つのMySQLクエリを組み合わせて、別々のテーブルを並べて調べる

1:

SELECT 
    COUNT(*) AS `total`, 
    CONCAT(DAY(logtime),'.',MONTH(logtime),'.',YEAR(logtime)) AS `day` 
FROM log 
WHERE some-conditions-here 
GROUP BY 
    YEAR(logtime), MONTH(logtime), DAY(logtime) 

2:そうこれにより

SELECT 
    COUNT(*) AS `otherTotal`, 
    CONCAT(DAY(tstamp),'.',MONTH(tstamp),'.',YEAR(tstamp)) AS `day` 
FROM othertable 
GROUP BY 
    YEAR(tstamp), MONTH(tstamp), DAY(tstamp) 

答えて

2
select 
    q1.day, 
    (q2.total/q1.total)*100 as percentage 
from 
(
    // first group by 
) as q1 
inner join 
(
    // second group by 
) as q2 
using day; 

、q1は常にゼロで、
、あなたがうまくいけば(ゼロによる任意の除算を得ることはありません、楽しい!)

関連する問題