我有下表items
。看起来像这样
| date | id | s_px | c_px | fee |
+------------+-----+----------+----------+-----+
| 2015-01-01 | 001 | 5355.00 | 5355.00 | 2 |
| 2015-01-01 | 002 | 13240.00 | 13240.00 | 3 |
| 2015-01-01 | 003 | 5840.00 | 5840.00 | 1 |
| 2015-01-01 | 004 | 20.55 | 20.59 | 5 |
| 2015-01-01 | 005 | 64.42 | 64.42 | 6 |
列s_px
和c_px
的数据类型为pf float8
当我比较s_px
和c_px
是否不平等时
select * from items where s_px != c_px
这将返回几乎相同的原始表。我知道直接进行浮点比较并不容易。
但是有什么类似于numpy.isclose
答案 0 :(得分:3)
不等式运算符为<>
(或!=
),因此您的查询正确。但是,浮点值是易变的。我建议检查一下以确保它们彼此之间的距离不大:
select *
from items
where abs(s_px - c_px) > 0.0001;