Алексей Паутов - MySQL: руководство профессионала
- Название:MySQL: руководство профессионала
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:неизвестен
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Алексей Паутов - MySQL: руководство профессионала краткое содержание
Это не совсем книга. Просто по ходу работы и изучения пакета у меня накопилось немало заметок, которые я в конце концов собрал воедино и опубликовал с оглавлением и под единым названием. Данные заметки относятся к версиям 4 и 5 пакета MySQL. По ходу текста особо отмечены места, относящиеся к специфической версии пакета.
MySQL: руководство профессионала - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
mysql> SELECT Area(GeomFromText(@mpoly));
+----------------------------+
| Area(GeomFromText(@mpoly)) |
+----------------------------+
| 8 |
+----------------------------+
Спецификация OpenGIS также определяет следующие функции, которые MySQL не выполняет:
Centroid( mpoly )
Возвращает математический центр для значения MultiPolygon mpoly как Point. Не гарантируется, что результат будет в MultiPolygon.
PointOnSurface( mpoly )
Возвращает значение Point, которое гарантированно будет в значении MultiPolygon mpoly .
4.5.2.7. Функции GeometryCollection
GeometryN( gc , N )
Возвращает N -ую геометрию в значении GeometryCollection gc . Конфигурации пронумерованы, начиная с 1.mysql> SET @gc = 'GeometryCollection(Point(1 1), LineString(2 2, 3 3))';
mysql> SELECT AsText(GeometryN(GeomFromText(@gc), 1));
+----------------------------------------+
| AsText(GeometryN(GeomFromText(@gc), 1))|
+----------------------------------------+
| POINT(1 1) |
+----------------------------------------+
NumGeometries( gc )
Возвращает число конфигураций в значении GeometryCollection gc .mysql> SET @gc = 'GeometryCollection(Point(1 1), LineString(2 2, 3 3))';
mysql> SELECT NumGeometries(GeomFromText(@gc));
+----------------------------------+
| NumGeometries(GeomFromText(@gc)) |
+----------------------------------+
| 2 |
+----------------------------------+
4.5.3. Функции, которые создают новые конфигурации из существующих
4.5.3.1. Функции геометрии, которые производят новые конфигурации
Раздел "4.5.2. Функции Geometry Алексей В. Паутов MySQL: руководство профессионала Введение Это не совсем книга. Просто по ходу работы и изучения пакета у меня накопилось немало заметок, которые я в конце концов собрал воедино и опубликовал с оглавлением и под единым названием. Данные заметки относятся к версиям 4 и 5 пакета MySQL. По ходу текста особо отмечены места, относящиеся к специфической версии пакета. Необходимо также отметить, что эти заметки логически продолжают книгу MySQL: Руководство администратора и ориентированы на ту же аудиторию. Данный материал подготовлен Паутовым Алексеем в рамках некоммерческого проекта RussianLDP:MySQL. При любом использовании ссылка на автора и проект обязательна!
" обсуждает несколько функций, которые создают новые конфигурации из существующих.
Envelope( g )
StartPoint( ls )
EndPoint( ls )
PointN( ls , N )
ExteriorRing( poly )
InteriorRingN( poly , N )
GeometryN( gc , N )
4.5.3.2. Пространственные операторы
OpenGIS предлагает ряд других функций, которые могут производить конфигурации. Они разработаны, чтобы выполнить пространственные операторы.
Эти функции не выполнены в MySQL. Они могут появляться в будущих выпусках.
Buffer( g , d )
Возвращает геометрию, которая представляет все пункты (точки), чьи расстояния от геометрии g меньше или равны расстоянию d .
ConvexHull( g )
Возвращает геометрию, которая представляет выпуклую оболочку геометрии g .
Difference( g1 , g2 )
Возвращает геометрию, которая представляет разность множеств точек значения геометрий g1 и g2 .
Intersection( g1 , g2 )
Возвращает геометрию, которая представляет пересечение набора точек геометрий g1 и g2 .
SymDifference( g1 , g2 )
Возвращает геометрию, которая представляет набор точек, симметричных разнице значений геометрий g1 и g2 .
Union( g1 , g2 )
Возвращает геометрию, которая представляет объединение набора точек значений геометрии g1 и g2 .
4.5.4. Функции для тестирования пространственных отношений между геометрическими объектами
Функции, описанные в этих разделах, берут две конфигурации как входные параметры и возвращают качественное или количественное отношение между ними.
4.5.5. Отношения на геометрии: минимальные ограничительные прямоугольники (MBR)
MySQL обеспечивает несколько функций, которые проверяют отношения между минимальными ограничительными прямоугольниками двух конфигураций g1 и g2. Возвращаемые значения 1 и 0 указывают истину и ложь соответственно.
MBRContains( g1 , g2 )
Возвращает 1 или 0, чтобы указать, содержит ли минимальный ограничительный прямоугольник g1 минимальный ограничительный прямоугольник g2 .mysql> SET @g1 = GeomFromText('Polygon((0 0, 0 3, 3 3, 3 0, 0 0))');
mysql> SET @g2 = GeomFromText('Point(1 1)');
mysql> SELECT MBRContains(@g1, @g2), MBRContains(@g2, @g1);
+----------------------+----------------------+
| MBRContains(@g1, @g2)| MBRContains(@g2, @g1)|
+----------------------+----------------------+
| 1 | 0 |
+----------------------+----------------------+
MBRDisjoint( g1 , g2 )
Возвращает 1 или 0, чтобы указать, являются ли минимальные ограничительные прямоугольники двух конфигураций g1 и g2 непересекающимися.
MBREqual( g1 , g2 )
Возвращает 1 или 0, чтобы указать, являются ли минимальные ограничительные прямоугольники двух конфигураций g1 и g2 тем же самым.
MBRIntersects( g1 , g2 )
Возвращает 1 или 0, чтобы указать, пересекаются ли минимальные ограничительные прямоугольники двух конфигураций g1 и g2 .
MBROverlaps( g1 , g2 )
Возвращает 1 или 0, чтобы указать, накладываются ли минимальные ограничительные прямоугольники g1 и g2 .
MBRTouches( g1 , g2 )
Возвращает 1 или 0, чтобы указать, касаются ли минимальные ограничительные прямоугольники g1 и g2 .
MBRWithin( g1 , g2 )
Возвращает 1 или 0, чтобы указать, является ли минимальный ограничительный прямоугольник g1 внутренним для минимального ограничительного прямоугольника g2 .mysql> SET @g1 = GeomFromText('Polygon((0 0, 0 3, 3 3, 3 0, 0 0))');
mysql> SET @g2 = GeomFromText('Polygon((0 0, 0 5, 5 5, 5 0, 0 0))');
mysql> SELECT MBRWithin(@g1, @g2), MBRWithin(@g2, @g1);
+--------------------+--------------------+
| MBRWithin(@g1, @g2)| MBRWithin(@g2, @g1)|
+--------------------+--------------------+
| 1 | 0 |
+--------------------+--------------------+
4.5.6. Функции, которые проверяют пространственные связи между конфигурациями
Спецификация OpenGIS определяет следующие функции. Они проверяют связь между двумя значениями геометрии g1 и g2.
В настоящее время MySQL не выполняет эти функции согласно спецификации. Которые выполнены, возвратят тот же самый результат, что и соответствующие MBR-функции. Это включает функции в следующем списке. Эти функции могут быть выполнены в будущих выпусках с полной поддержкой для пространственного анализа, а не только MBR-поддержки.
Contains( g1 , g2 )
Возвращает 1 или 0, чтобы указать, содержит ли g1 полностью g2 .
Crosses( g1 , g2 )
Возвращает 1, если g1 пространственно пересекает g2 . Возвращает NULL, если g1 Polygon или MultiPolygon, либо если g2 Point или MultiPoint. Иначе возвращает 0.
Термин "пространственно пересекается", обозначает пространственное отношение между двумя данными конфигурациями, которые имеют следующие реквизиты:
Две конфигурации пересекаются.
Их пересечение приводит к геометрии, которая имеет размерность, которая на единицу меньше, чем максимальная размерность двух данных конфигураций.
Их пересечение не равно любой из двух данных конфигураций.
Читать дальшеИнтервал:
Закладка: