Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/240.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php MySQL大于,带有微时间时间戳_Php_Mysql_Microtime - Fatal编程技术网

Php MySQL大于,带有微时间时间戳

Php MySQL大于,带有微时间时间戳,php,mysql,microtime,Php,Mysql,Microtime,我有一个PHP脚本在MySQL数据库中插入行。每一行都有一个字段“created_at”,该字段填充PHP函数microtime(true)的值,并以双精度插入。(微时间,因为我需要比秒更精确的东西) 我有另一个PHP脚本,它根据在字段中创建的_选择行 当我继续选择时,如下所示: 1302775523.51878处创建的'ms_voltage'中选择* 我收到一个结果集,其中第一行的值正好是创建时的值 这发生在我的PHP脚本和手动执行查询时的PhpMyAdmin中。但并非总是如此,并非所有价值观

我有一个PHP脚本在MySQL数据库中插入行。每一行都有一个字段“created_at”,该字段填充PHP函数microtime(true)的值,并以双精度插入。(微时间,因为我需要比秒更精确的东西)

我有另一个PHP脚本,它根据在字段中创建的_选择行

当我继续选择时,如下所示:
1302775523.51878处创建的'ms_voltage'中选择*
我收到一个结果集,其中第一行的值正好是创建时的值

这发生在我的PHP脚本和手动执行查询时的PhpMyAdmin中。但并非总是如此,并非所有价值观都如此。只是偶尔,真的

这怎么可能?我没有要求大于/等于,我严格要求大于。
我是否忽略了与类型相关的内容?

双精度类型仅表示近似的数字数据值。尝试使用十进制类型。

双精度类型仅表示近似的数字数据值。尝试使用十进制类型。

是您的列浮点吗?使用true调用microtime会给您一个浮点值,看起来像是一个浮点值,在.51878后面会有一些您看不到的数字,因此这些数字会使存储的值大于查询中的值


除非您真的需要浮点,否则我会将字符串结果转换为int,甚至是秒和秒的两列。然后,您可以在已知值上使用>或<,而不用担心浮点值的不精确性。

是您的列浮点吗?使用true调用microtime会给您一个浮点值,看起来像是一个浮点值,在.51878后面会有一些您看不到的数字,因此这些数字会使存储的值大于查询中的值


除非您真的需要浮点,否则我会将字符串结果转换为int,甚至是秒和秒的两列。然后,您可以对已知值使用>或<,而不用担心浮点值的不精确性。

是的,浮点运算有时可以做到这一点。要理解原因,认识到并非所有数字都能准确地以10为基数表示,也并非所有数字都能准确地以2为基数表示是很有帮助的

例如,“1/3”可以写成0.33333或0.33334。两者都不是真正的“正确”;他们是我们能做的最好的。基数10中的“DOUBLE”可能是0.3333或0.3334,这是数字的两倍,但仍然不“正确”


最好的选择是使用十进制值,或者使用整型值(将实际值乘以10000或100000,以便将您关心的十进制数字转换为该整型)。

是的,浮点算术有时可以做到这一点。要理解原因,认识到并非所有数字都能准确地以10为基数表示,也并非所有数字都能准确地以2为基数表示是很有帮助的

例如,“1/3”可以写成0.33333或0.33334。两者都不是真正的“正确”;他们是我们能做的最好的。基数10中的“DOUBLE”可能是0.3333或0.3334,这是数字的两倍,但仍然不“正确”


最好的选择是使用十进制值,或者使用整型值(并将实际值乘以10000或100000,以便将您关心的十进制数字转换为该整型)。

欢迎使用。我删除了你的个人便条,因为这在社区中是普遍不受欢迎的。不过没什么私事。另请参见常见问题解答。干杯谢谢@Joris Meys-没问题。欢迎来到SO。我删除了你的个人便条,因为这在社区中是普遍不受欢迎的。不过没什么私事。另请参见常见问题解答。干杯谢谢所有(非常快的)回复。我现在更了解这个问题了。我想我将转换成int来缓解任何舍入问题,这肯定会奏效。再次感谢!非常感谢所有(非常快速)的回复。我现在更了解这个问题了。我想我将转换成int来缓解任何舍入问题,这肯定会奏效。再次感谢!