Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/70.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 如何定义数据库中的哪个数字接近(圆形)获取数字?_Php_Sql_Rounding - Fatal编程技术网

Php 如何定义数据库中的哪个数字接近(圆形)获取数字?

Php 如何定义数据库中的哪个数字接近(圆形)获取数字?,php,sql,rounding,Php,Sql,Rounding,我有一个如下所示的SQL表。所以在PHP页面上,我输入temp 44或43以及数字1或2。例如,我输入了数字:2和temp:44…Php根据公式计算(我认为如何计算并不重要),得到的数字如46.5777。所以这个数字不在数据库中。我必须从数据库中定义哪个数字接近(圆形)46.5777?我如何定义它并展示它 num temp decimal 1 43 44.5760 2 44 47.0827 2 43 45.9396 3 44 48.

我有一个如下所示的SQL表。所以在PHP页面上,我输入temp 44或43以及数字1或2。例如,我输入了数字:2和temp:44…Php根据公式计算(我认为如何计算并不重要),得到的数字如46.5777。所以这个数字不在数据库中。我必须从数据库中定义哪个数字接近(圆形)46.5777?我如何定义它并展示它

num  temp   decimal

1    43     44.5760
2    44     47.0827
2    43     45.9396
3    44     48.5177
3    43     47.3053
-同样的问题。
在您的示例中,查询将是
SELECT*,其中num=2,temp=44 ORDER BY ABS(十进制-46.5777)LIMIT 1。它应该返回最接近的值46.5777。

有多近??46/47 ??? 哪一个?@swapnesh,看,我得到的是46.5777,这个数字从数据库中四舍五入到45.9396和47.0827。但该数字47.0827比45.9396更接近46.5777。所以,我必须在页面上找到47.0827号