如何根据查询中的百分比值显示结果

时间:2019-12-04 13:53:00

标签: ms-access access-vba

我有一个查询,其中我根据窗体和子窗体上的控件中的值来计算百分比值

=[Total]/[Forms]![FrmDSTResultsCompare]![mainTotal]

如果我在查询条件中输入> = 50,它将返回参数值输入

我要在查询中执行的操作是显示结果最多50%。请帮忙。

SELECT Val([SumTest1])+Val([SumTest2]) AS Total, QryDSTResultsGroupbyID2.PatientID, QryDSTResultsGroupbyID2.Test1, QryDSTResultsGroupbyID2.Test2, [Total]/[Forms]![FrmDSTResultsCompare]![mainTotal] AS Expr1
FROM QryDSTResultsGroupbyID2
WHERE ((([Total]/[Forms]![FrmDSTResultsCompare]![mainTotal])>=50))
ORDER BY Val([SumTest1])+Val([SumTest2]) DESC;

1 个答案:

答案 0 :(得分:0)

您无法引用“总计”,因为它是即时计算的。在查询中使用计算方式,而不要使用值的名称:

SELECT 
    Val([SumTest1])+Val([SumTest2]) AS Total, 
    QryDSTResultsGroupbyID2.PatientID, 
    QryDSTResultsGroupbyID2.Test1, 
    QryDSTResultsGroupbyID2.Test2,
    [Total]/[Forms]![FrmDSTResultsCompare]![mainTotal] AS Expr1
FROM QryDSTResultsGroupbyID2
WHERE (((Val([SumTest1])+Val([SumTest2]) )/[Forms]![FrmDSTResultsCompare]![mainTotal])>=50)
ORDER BY Val([SumTest1])+Val([SumTest2]) DESC;