【发布时间】:2017-12-19 07:54:04
【问题描述】:
在我的 mysql 查询中,我得到了纬度、经度和总计列。使用 lat 和 long 我做了一些计算,这些东西将打印在别名列中。到目前为止有效。结果看起来像这样:
Lat long length total
-----------------------------------------
49.236000 11.637500 3100 0.401500
49.178900 11.731900 3100 0.553000
49.582100 10.988300 3600 0.593800
现在我想将长度列中的所有值相加得到一个值total_length
这是我的sql语句:
SELECT latitude, longitude, length, (ABS( latitude - 49.439810 ) + ABS( longitude - 11.439810 )) as total FROM records ORDER BY total LIMIT 20
甚至可以只总结一列吗?
我需要的是这样的:
Lat long length total
-----------------------------------------
49.236000 11.637500 3100 0.401500
49.178900 11.731900 3100 0.553000
49.582100 10.988300 3600 0.593800
----------------------------------------
9800
会有一个给定的值,例如20000。如果total_length 小于20000,则LIMIT 应加10 并再次计算total_length。 Do 的频率一直保持到 total_length 为 20000 或更多。
对 SQL 数据库的请求将来自 node.js 后端。
【问题讨论】:
-
Output应该是什么不是很清楚,你能得到例子的预期结果吗?
-
你是如何“消费”查询结果的? (PHP?C#?Java?...)在产品中执行它可能比在 MySQL 中执行它更容易和更有效,特别是当您使用表示分页的限制时。
-
是的,但它只会传递一行,或者多行重复相同的值。
-
@Jens 我添加了预期的结果
-
@Used_By_Already 请求将来自 node.js 后端,因此它将是 JavaScript
标签: mysql