我正在寻找一些解决方法,解决我遇到的包含空间关系从句的问题,特别是在5.5.41-MariaDB上。如果不是解决方法,那么至少要确认视图中不支持此类子句。关于示例!
此选择语句有效
SELECT m.*
FROM members m
INNER JOIN ipDB ON Intersects(ipDB.ip_range, Polygon( LineString( Point(INET_ATON(m.signup_ip), 1), Point(INET_ATON(m.signup_ip), 0), Point(INET_ATON(m.signup_ip) + 0.5, 0), Point(INET_ATON(m.signup_ip) + 0.5, 1), Point(INET_ATON(m.signup_ip), 1))))
WHERE ipDB.name LIKE '%special%';
这个创建视图也适用
CREATE VIEW debug_view AS (
SELECT m.*
FROM members m
INNER JOIN ipDB ON Intersects(ipDB.ip_range, Polygon( LineString( Point(INET_ATON(m.signup_ip), 1), Point(INET_ATON(m.signup_ip), 0), Point(INET_ATON(m.signup_ip) + 0.5, 0), Point(INET_ATON(m.signup_ip) + 0.5, 1), Point(INET_ATON(m.signup_ip), 1))))
WHERE ipDB.name LIKE '%special%';
)
然而,这个选择视图
SELECT * FROM debug_view;
触发此错误:
Error in query (1356): View 'debug_view' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
有什么想法吗?