在MySQL问题中获取十进制值

时间:2018-01-09 14:41:46

标签: mysql

我有一个包含很多行的列。我的行看起来像:

1.0000
2.0000
1.7500
3.2500
3.0000
1.0000
2.0000
47.000
1.2500
0.7500
......

我想获得查询中小数部分大于零的所有数据。我怎样才能做到这一点 ? 我会像

那样做

select * from table where (column = 1.7500) OR (column = 0.75000) ....但它们太多了。谢谢

3 个答案:

答案 0 :(得分:2)

只需将值与不带小数部分的值进行比较。

SELECT * FROM your_table
WHERE your_column != FLOOR(your_column)

答案 1 :(得分:0)

或者试试MOD-operator:

select id from t
where MOD(id, 1) > 0;

答案 2 :(得分:0)

@fancyPants给出的另一种方法是在MySQL中使用模运算:

SELECT * FROM table WHERE MOD(column, 1) != 0

MOD操作的文档:https://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.html