where子句中的SQL Math运算符

时间:2013-03-12 14:24:15

标签: sql math operators where

我想知道是否可以在WHERE子句中获取数学运算符。

示例:我有一个带有dataType字段名称的表。这个长度可以不同。 1527或152710或15271712 ...

我可以使用:

SELECT * FROM table WHERE CONVERT(INT, (dataType / 10000)) = 1527 LIMIT 10
PD:现在我正在使用:

... WHERE dataType BETWEEN (15270000 and 15279999)

用零填充数据条目,但它没有真正优化。我的意思是:

... BETWEEN (15000000 and 15999999)

它将比较1.000.000的注册表。

1 个答案:

答案 0 :(得分:0)

您可以使用MySql中提供的Mathematical FunctionsFLOOR适用于您的情况:

.... WHERE FLOOR(dataType / 10000.0) = 1527