我已经尝试过这段代码但是没有申请,请提前帮助我
SELECT PositionName,
(SELECT COUNT(ApplicationNo) FROM APPLICATION) AS
NoOfApplications,
(SELECT COUNT(ApplicationNo)
FROM APPLICATION
WHERE EligibleStatus1=1 AND
EligibleStatus2=1) AS Qualified,
(SELECT COUNT(ApplicationNo)
FROM APPLICATION
WHERE EligibleStatus1=2 OR
EligibleStatus2=2) AS DisQualified
FROM APPLICATION
GROUP BY PositionName ORDER BY PositionName
PositionName Elligible Disqualified NoOfApplications
A 3 4 7
B 3 4 7
C 3 4 7
PositionName Elligible Disqualified NoOfApplications
A 1 2 3
B 1 1 2
C 1 1 2
答案 0 :(得分:0)
SELECT a.PositionName,COUNT(a.ApplicationNo) AS
NoOfApplications,apl1.Qualified,apl2.DisQualified
FROM APPLICATION a
INNER JOIN (
SELECT PositionName, COUNT(ApplicationNo) AS Qualified
FROM APPLICATION
WHERE EligibleStatus1=1 AND
EligibleStatus2=1
GROUP BY PositionName
)apl1 ON a.PositionName=apl1.PositionName
INNER JOIN (
SELECT PositionName, COUNT(ApplicationNo) AS DisQualified
FROM APPLICATION
WHERE EligibleStatus1=1 AND
EligibleStatus2=1
GROUP BY PositionName
)apl2 ON a.PositionName=apl2.PositionName
GROUP BY PositionName ORDER BY PositionName
答案 1 :(得分:0)
Private Sub Supplier_name_DblClick(Cancel As Integer)
strSQL = "Select * from [Query1] where"
strSQL = strSQL & "[Supplier_name] ="'" & "Me!current record![Supplier_name]" &"'"
Form![Mainform]![Subform2].Form.RecordSource = strSQL
End Sub
答案 2 :(得分:0)
当你正在寻找摘要结果然后通过使用Case和Sum我们可以获得所需的结果基于你的假设数据
select PositionName,
sum(case when EligibleStatus1 = 1 AND EligibleStatus2=1 then 1 else 0 end) AS Qualified,
sum(case when EligibleStatus1 = 2 OR EligibleStatus2=2 then 1 else 0 end) AS DisQualified,
count(ApplicationNo)
from APPLICATION
GROUP BY PositionName
ORDER BY PositionName