【发布时间】:2019-07-17 07:05:12
【问题描述】:
所以我有这个方法,其中包含来自 mysql 的几何函数:
select *, (SELECT SUM(t_o.value) FROM tree_operations t_o WHERE t_o.operation_id = operations.id) operationTreeValue, (SELECT COUNT(t_o.id) FROM `tree_operations` t_o WHERE t_o.operation_id = operations.id) operationTreeNumber, (CASE\r WHEN operations.type = 'pieces' THEN (SELECT GROUP_CONCAT(p.name) FROM `pieces` p WHERE p.id IN (SELECT piece_id FROM `piece_row_operations` WHERE operation_id = operations.id))\r WHEN operations.type = 'rows' THEN (SELECT GROUP_CONCAT(r.number) FROM `rows` r WHERE r.id IN (SELECT row_id FROM `piece_row_operations` WHERE operation_id = operations.id))\r END) AS typeName from `operations` where operations.id IN (SELECT t_o.operation_id FROM `tree_operations` t_o WHERE t_o.tree_id IN (SELECT t.id FROM `trees` t WHERE t.coordinates IN (Contains(GeomFromText('POLYGON(49.816472 35.971209,49.7868 35.970981,49.788668 35.947219,49.15201 35.947905,49.816472 35.971209)'))))) order by `operations`.`id` desc
但令人惊讶的是它在服务器上不起作用(虽然在本地完全没问题) 在花费大量时间之后(在不同的环境中运行查询等等),我无法得到任何可靠的答案。 我的查询有什么问题还是功能不再起作用? p.s:我本地的mysql版本是5.7,服务器是mariadb 10.2
【问题讨论】:
-
请提供Mysql版本。
-
@P.Salmon 问题已被编辑。
-
GeomFromText() 和 GeometryFromText() 自 MySQL 5.7.6 起已弃用,并将在未来的 MySQL 版本中删除。请改用 ST_GeomFromText() 和 ST_GeometryFromText()。 - dev.mysql.com/doc/refman/5.7/en/gis-wkt-functions.html
-
拥有不同的本地版本和服务器版本很危险,但是将完全独立维护的服务器混入其中是冒险的。
标签: mysql