ST_EQUALS 没有返回正确的结果?
ST_EQUALS is not returning correct result?
当 运行 ST_EQUALS 在两个多边形上时,我得到了这些奇怪的结果:
SELECT ST_EQUALS(
ST_GEOMFROMTEXT(
'POLYGON((81.65 34.8667,81.65 5.9167,75.9833 34.8667,75.9833 5.9167,81.65 34.8667))',4326),
ST_GEOMFROMTEXT(
'POLYGON((81.65 34.8667,81.65 5.9167,75.9833 34.8667,75.9833 5.9167,81.65 34.8667))',4326));
多边形的坐标完全相同,但 MYSQL returns 0 表示它们不相等。
当我运行没有SRID(默认=0)的查询时,
SELECT ST_EQUALS(
ST_GEOMFROMTEXT(
'POLYGON((81.65 34.8667,81.65 5.9167,75.9833 34.8667,75.9833 5.9167,81.65 34.8667))'),
ST_GEOMFROMTEXT(
'POLYGON((81.65 34.8667,81.65 5.9167,75.9833 34.8667,75.9833 5.9167,81.65 34.8667))'));
MySQL returns 1表示确实相等
我在这里遗漏了什么吗?谢谢。
这是一个无效的多边形:
SELECT ST_IsValid(ST_GEOMFROMTEXT('POLYGON((81.65 34.8667,81.65 5.9167,75.9833 34.8667,75.9833 5.9167,81.65 34.8667))',4326)) AS v
0
对于无效的几何图形,任何地理空间函数的结果都是不确定的——它可能会给出正确的结果,也可能会给出随机值。对于几何 SRID (0),它似乎可以像您预期的那样工作,而对于测地线 SRID (4326),它会给出不同的结果。
有关有效几何的更多详细信息,请参阅此内容:
https://dev.mysql.com/doc/refman/5.7/en/geometry-well-formedness-validity.html
规则多边形不是self-intersecting在这里被打破了。
对于无效的几何图形,此文档说“由于计算开销,MySQL 不会明确检查几何图形的有效性。空间计算可能会检测到某些无效几何图形的情况并引发错误,但它们也可能return未检测到无效性的未定义结果。"
当 运行 ST_EQUALS 在两个多边形上时,我得到了这些奇怪的结果:
SELECT ST_EQUALS(
ST_GEOMFROMTEXT(
'POLYGON((81.65 34.8667,81.65 5.9167,75.9833 34.8667,75.9833 5.9167,81.65 34.8667))',4326),
ST_GEOMFROMTEXT(
'POLYGON((81.65 34.8667,81.65 5.9167,75.9833 34.8667,75.9833 5.9167,81.65 34.8667))',4326));
多边形的坐标完全相同,但 MYSQL returns 0 表示它们不相等。
当我运行没有SRID(默认=0)的查询时,
SELECT ST_EQUALS(
ST_GEOMFROMTEXT(
'POLYGON((81.65 34.8667,81.65 5.9167,75.9833 34.8667,75.9833 5.9167,81.65 34.8667))'),
ST_GEOMFROMTEXT(
'POLYGON((81.65 34.8667,81.65 5.9167,75.9833 34.8667,75.9833 5.9167,81.65 34.8667))'));
MySQL returns 1表示确实相等
我在这里遗漏了什么吗?谢谢。
这是一个无效的多边形:
SELECT ST_IsValid(ST_GEOMFROMTEXT('POLYGON((81.65 34.8667,81.65 5.9167,75.9833 34.8667,75.9833 5.9167,81.65 34.8667))',4326)) AS v
0
对于无效的几何图形,任何地理空间函数的结果都是不确定的——它可能会给出正确的结果,也可能会给出随机值。对于几何 SRID (0),它似乎可以像您预期的那样工作,而对于测地线 SRID (4326),它会给出不同的结果。
有关有效几何的更多详细信息,请参阅此内容: https://dev.mysql.com/doc/refman/5.7/en/geometry-well-formedness-validity.html
规则多边形不是self-intersecting在这里被打破了。
对于无效的几何图形,此文档说“由于计算开销,MySQL 不会明确检查几何图形的有效性。空间计算可能会检测到某些无效几何图形的情况并引发错误,但它们也可能return未检测到无效性的未定义结果。"