我正在尝试使用SQL前面各列中的计算。我尝试使用变量,但没有运气。这是我现在所拥有的:
CREATE VIEW CalculationsTable (id, deltaLat, deltaLon, a, c, d) AS
SELECT Resource.id,
RADIANS("+lat+"-Resource.lat) AS deltaLat,
RADIANS("+lon+"-Resource.lon) AS deltaLon,
(SIN(deltaLat/2)*SIN(deltaLat/2)) + COS("+lat+")
* cos(Resource.lat) * (SIN(deltaLon/2)
* SIN(deltaLon/2)) AS a,
2 * ATAN2(SQRT(a), SQRT(1-a)) AS c,
6371 *c AS d
FROM Resource AS Resource;
我继续收到此错误:
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:“字段列表”中的未知列“ deltaLat”
错误中的
deltaLat
是代码deltaLat
此部分中的"(SIN(deltaLat/2)..."
最佳答案
您可以尝试重新格式化查询并使用子表。例如。
SELECT calcValueA + 3,
FROM (SELECT A + B calcValueA FROM yourTable);
对于您的查询,您必须执行几次。
关于java - 如何使用SQL中其他列的数据?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8374067/