mysql - 未除以数字的行数

标签 mysql sql sql-server divide

我有一个如下所示的专栏。

Value
_____
48
48
39
96
50

我想用这个除以 48。

从上面的5个值中,可以划分第1,2,4行,但不能划分第3,5行。我必须使用 SQL 来完成此操作。

EG:

select count(*) from tbl where value/42 
Result: 2

最佳答案

您要求的是整数除以 48 时的余数。这在数学中有一个特定的名称,取模运算。这实际上是数论和群论中非常有趣的部分(对某些人来说)。

大多数数据库通过 % 支持模运算符或函数。所以想法是:

select value
from t
where value % 48 = 0;

这可能是:

where value mod 48 = 0
where mod(value, 48) = 0

取决于数据库。

另一种方法是:

where floor(val / 48) * 48 = val

关于mysql - 未除以数字的行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61889514/

相关文章:

MYSQL存储过程: How to delete a just updated record

mysql - SQL:父子字段之间的或条件

mysql - 在另一个表中保留/分配一个新行,并将每一行添加到一个表中

SQL : Find if XML node exists

sql - 新行基于sql server 2008中的计算列

Mysql, 树, 分层查询, 性能

java - 如何使用 context.xml 正确连接到 XAMPP mySQL DB

PHP 准备语句 - 在 while 循环内进行查询时出现错误

sql - 多版本实体数据库设计

sql-server - 是否可以使用非 ACID 数据库模拟分布式事务?