以0(零)为分母的SQL

以0(零)为分母的SQL,sql,ms-access,Sql,Ms Access,我试图在MS Access中编写一个查询,该查询对两个表中的两个不同计数进行除法。看起来是这样的: Select Count(*)/(Select Count(*) FROM table1 where column1 = userInput) FROM table2; 当我运行这个程序时,我被要求为“userInput”输入一个值。但是,有时列(column1)将不具有该值,它将返回0。有没有一种方法可以解决这个问题…例如,我可以在分母为0的时候让分子变成0 谢谢 您可以将该值转换为NULL:

我试图在MS Access中编写一个查询,该查询对两个表中的两个不同计数进行除法。看起来是这样的:

Select Count(*)/(Select Count(*) FROM table1 where column1 = userInput) FROM table2;
当我运行这个程序时,我被要求为“userInput”输入一个值。但是,有时列(column1)将不具有该值,它将返回0。有没有一种方法可以解决这个问题…例如,我可以在分母为0的时候让分子变成0


谢谢

您可以将该值转换为
NULL

Select (Count(*) /
        (Select iif(Count(*) = 0, NULL, COUNT(*)) from table1 where column1 = userInput
        )
       )
from table2;

您可以将该值转换为
NULL

Select (Count(*) /
        (Select iif(Count(*) = 0, NULL, COUNT(*)) from table1 where column1 = userInput
        )
       )
from table2;
你可以试试:

Select 
    IIf(
        (Select Count(*) FROM table1 where column1 = userInput) = 0,
        0,
        Count(*)/(Select Count(*) FROM table1 where column1 = userInput))
From table2;
你可以试试:

Select 
    IIf(
        (Select Count(*) FROM table1 where column1 = userInput) = 0,
        0,
        Count(*)/(Select Count(*) FROM table1 where column1 = userInput))
From table2;