我不太喜欢数据库,我有以下问题从查询中的 point 对象提取地理坐标。我正在使用 mysql 。
所以我有一个这样的桌子:
Field Type Null Key Default Extra
------------------------------------------------------------------------------------
id bigint(20) NO PRI auto_increment
localization_id bigint(20) NO MUL
market_name varchar(255) NO
market_cod varchar(255) YES
description text YES
gps point YES
您可以看到查询包含 gps 字段 point 。
运行此查询它可以正常工作:
SELECT
MD.market_name as market_name,
MD.description as market_description,
X(gps)as longitude,
Y(gps)as latitude
FROM MarketDetails as MD
我正确地检索了经度和 latitude 分别由 x(gps)和 y(GPS)返回的字段函数。
问题是 MarketDetails 表具有 MD 别名(因为那时我会与其他表格一起加入),所以我也试图使以前的
SELECT
MD.market_name as market_name,
MD.description as market_description,
MD.X(gps)as longitude,
MD.Y(gps)as latitude
FROM MarketDetails as MD
但是执行此查询,我正在获取以下错误消息:
#42000FUNCTION MD.X does not exist
那么,怎么了?我想念什么?我如何正确地指具有具有 md 别名的表的x(gps)和y(gps)?
别名在列上,而不是 function :
SELECT MD.market_name as market_name,
MD.description as market_description,
X(MD.gps)as longitude,
Y(MD.gps)as latitude
FROM MarketDetails MD;