MySQL documentation for the DOUBLE type对于最小值和最大值是什么确实是不透明的。
Permissible values are -1.7976931348623157E+308 to -2.2250738585072014E-308, 0, and 2.2250738585072014E-308 to 1.7976931348623157E+308.
这对我来说没有意义。也许我是一个数学家,但我不明白这一点。似乎有两个可能的范围和零。
最佳答案
是的,它有一系列可能的正值、零和一系列可能的负值。
他们这样做的原因是为了确保您同时得到零两侧的最大和最小可能数字。
或者,他们可以声明范围是 -1.7976931348623157E+308
到 1.7976931348623157E+308
但这不会为您提供任何关于最接近的数字的信息他们可以代表的零。 (具有 -308
指数的那些)您可能认为您可以表示 1E-999(但实际上不能)。
对于无符号变体,它只是不允许负范围,这可能是他们分别指定两个范围的另一个原因 - 在这种情况下您可以完全忽略负范围。
关于DOUBLE 类型的 MySQL 最小值/最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6949673/