作者On1earth (小浅)
看板Database
标题[SQL ] 计算 Count(xx=1) / Count(*) 在一个结合的表上
时间Sun Jan 23 21:52:20 2011
DBMS 是 Access 2003
请问若有两个表
A
=============
id date
1 2011/1/2
2 2011/1/4
3 2012/2/15
B
==============
id userName state
1 Mike 1
1 Mary 1
1 Jack 0
2 Mike 1
2 Mary 0
2 Jack 0
我想要的结果
userName 在B表出现的总次数 state=1的总次数 state=1的总次数/B表出现的总次数
Mike 2 2 1
Mary 2 1 0.5
Jack 2 0 0
再把上面三个结果相加 1+0.5+0 = 1.5
目前写到这边,不知道怎麽把上面的计算过程写在同一句SQL。
SELECT B.userName, Count(*)
FROM A INNER JOIN B
ON A.id = B.id
WHERE Year([A].[date]))=2011
GROUP BY B.userName
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.132.189.217