我想知道是否可以在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的注册表。
答案 0 :(得分:0)
您可以使用MySql中提供的Mathematical Functions。 FLOOR
适用于您的情况:
.... WHERE FLOOR(dataType / 10000.0) = 1527