database - SQLite 搜索的错误行为
问题描述
我想搜索所有大于 0.9 的值。我无法向您显示属性的名称,因为这些是公司内部名称。但它们不是显示当前问题的必要条件。
这是结果:
我的问题:这怎么可能?这与浮点数学是否损坏中描述的原因相同吗???
解决方案
SELECT 0.8 > 0.9;
0
SELECT '0.8' > 0.9;
1
您的数据库中有字符串,并且在 SQLite 的排序顺序中,它们被认为比任何数字都大。
推荐阅读
- c - 编译循环错误:Linux 头文件中的未知类型名称“__kernel_time64_t”
- python-3.x - 在新子集合中创建具有自定义 ID 的新文档
- java - loader.properties 在 spring boot 中不被读取
- c - 搜索匹配的括号
- c++ - cmake Eigen find_package 提示
- javascript - 将外部函数从脚本加载到 Vue 组件
- java - 为什么在读取目录时无法访问 windows 快捷方式
- elasticsearch - 当输出设置为文件时,Filebeat 无法启动
- java - Java,排序分析。Heapsort,Quicksort1,Quicksort2,Mergesort,给定一个黑盒
- tensorflow - 带有 padding='SAME' 的 Tensorflow/Keras Conv2D 层表现异常