如何用SQL统计无法被指定数值整除的数据行数
如何用SQL统计无法被48整除的数据行数?
嘿,我来帮你搞定这个统计需求!你需要统计Value列里不能被48整除的行数,对吧?
要实现这个需求,核心是利用**取模运算符(%)**来判断数值除以48后的余数是否为0——余数不为0就说明这个数无法被48整除。
正确的SQL语句
SELECT COUNT(*) FROM tbl WHERE Value % 48 != 0;
语句解释
Value % 48:计算Value列的数值除以48的余数!= 0:筛选出余数不为0的行(也就是无法被48整除的行)COUNT(*):统计这些符合条件的行的数量,最终会得到你预期的结果2
另外要注意,你给出的示例select count(*) from tbl where value/42是不符合需求的,直接做除法得到的是一个数值,SQL里会把非零值视为真,这样会错误统计所有非零行,而不是无法被指定数整除的行,所以一定要用取模来做判断哦。
内容的提问来源于stack exchange,提问作者TheDataGuy
相关产品推荐
相关产品推荐

