الاسم
= — تُعيد TRUE إذا كانت إحداثيات geometry/geography A وترتيبها مطابقة لإحداثيات geometry/geography B وترتيبها.
المختصر
boolean =( geometry A , geometry B );
boolean =( geography A , geography B );
الوصف
يُعيد العامل = القيمة TRUE إذا كانت إحداثيات geometry/geography A وترتيبها مطابقة لإحداثيات geometry/geography B وترتيبها. يستخدم PostgreSQL العوامل = و< و> المعرَّفة للأشكال الهندسية لإجراء الترتيب الداخلي للأشكال الهندسية ومقارنتها (أي في عبارة GROUP BY أو ORDER BY).
|
|
|
لا يَعدّ هذا العامل متساويةً إلا قيم geometry/geography المتطابقة تمامًا من كل الوجوه، بالإحداثيات نفسها وبالترتيب نفسه. وللتحقق من «التساوي المكاني» الذي يتجاهل أمورًا مثل ترتيب الإحداثيات ويمكنه اكتشاف المعالم التي تغطي المساحة المكانية نفسها بتمثيلات مختلفة، استخدم ST_OrderingEquals أو ST_Equals |
|
|
|
لا يستفيد هذا العامل من أي فهارس قد تكون متاحة على الأشكال الهندسية. لاختبار تساوٍ تام بمساعدة الفهرس، اجمع = مع &&. |
تغيّرت في: 2.4.0، في الإصدارات السابقة كان هذا اختبار تساوي المستطيلات المحيطة لا التساوي الهندسي. إذا احتجت إلى تساوي المستطيلات المحيطة، فاستخدم ~= بدلًا منه.
تدعم هذه الدالة الأقواس الدائرية (Circular Strings) والمنحنيات.
تدعم هذه الدالة الأسطح متعددة الوجوه (Polyhedral surfaces).
أمثلة
SELECT 'LINESTRING(0 0, 0 1, 1 0)'::geometry = 'LINESTRING(1 1, 0 0)'::geometry;
?column?
----------
f
(1 row)
SELECT ST_AsText(column1)
FROM ( VALUES
('LINESTRING(0 0, 1 1)'::geometry),
('LINESTRING(1 1, 0 0)'::geometry)) AS foo;
st_astext
---------------------
LINESTRING(0 0,1 1)
LINESTRING(1 1,0 0)
(2 rows)
-- Note: the GROUP BY uses the "=" to compare for geometry equivalency.
SELECT ST_AsText(column1)
FROM ( VALUES
('LINESTRING(0 0, 1 1)'::geometry),
('LINESTRING(1 1, 0 0)'::geometry)) AS foo
GROUP BY column1;
st_astext
---------------------
LINESTRING(0 0,1 1)
LINESTRING(1 1,0 0)
(2 rows)
-- In versions prior to 2.0, this used to return true --
SELECT ST_GeomFromText('POINT(1707296.37 4820536.77)') =
ST_GeomFromText('POINT(1707296.27 4820536.87)') As pt_intersect;
--pt_intersect --
f