Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

बड़े 3D बिंदु डेटा सेट के साथ SELECT क्वेरी पर प्रदर्शन बढ़ाना

B-Tree इस तरह की क्वेरी के लिए अनुक्रमणिका बहुत मदद नहीं करेगी।

R-Tree के रूप में आपको क्या चाहिए अनुक्रमणिका और उस पर न्यूनतम बाउंडिंग समानांतर चतुर्भुज क्वेरी।

दुर्भाग्य से, MySQL R-Tree . का समर्थन नहीं करता है 3d . से ऊपर के इंडेक्स अंक, केवल 2d . हालांकि, आप X . के ऊपर एक इंडेक्स बना सकते हैं और Y एक साथ जो अधिक चयनात्मक होगा कि B-Tree . में से कोई भी X . पर अनुक्रमणिका और Y अकेला:

ALTER TABLE points ADD xy POINT;

UPDATE  points
SET     xy = Point(x, y);

ALTER TABLE points MODIFY xy POINT NOT NULL;


CREATE SPATIAL INDEX sx_points_xy ON points (xy);

SELECT  *
FROM    points
WHERE   MBRContains(LineString(Point(100, 100), Point(200, 200), xy)
        AND z BETWEEN 100 and 200
        AND otherParameter > 10;

यह तभी संभव है जब आपकी तालिका MyISAM . हो ।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एकाधिक विषम डेटाबेस में शामिल होना उदा। पोस्टग्रेएसक्यूएल और माईएसक्यूएल

  2. PHP में एक MySQL तालिका से ड्रॉप डाउन बॉक्स को पॉप्युलेट करें

  3. एक ही प्रश्न में योग और कुल योग द्वारा समूह प्राप्त करना

  4. apache में mod_mysql, mod_xml और mod_zlib जोड़ें

  5. अकथनीय गतिरोध की व्याख्या करें