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

त्रिज्या के अनुसार मानचित्र डेटाबेस से बिंदुओं का चयन करें

कभी-कभी ACOS() . के पैरामीटर दूरी कम होने पर - उस फ़ंक्शन के डोमेन से थोड़ा बाहर - 1 से थोड़ा अधिक हो सकता है। विंसेंटी की वजह से एक बेहतर दूरी का फॉर्मूला उपलब्ध है। यह ATAN2(y,x) . का उपयोग करता है ACOS() . के बजाय फ़ंक्शन फ़ंक्शन और इसलिए संख्यात्मक रूप से अधिक स्थिर है।

यही है।

DEGREES(
    ATAN2(
      SQRT(
        POW(COS(RADIANS(lat2))*SIN(RADIANS(lon2-lon1)),2) +
        POW(COS(RADIANS(lat1))*SIN(RADIANS(lat2)) -
             (SIN(RADIANS(lat1))*COS(RADIANS(lat2)) *
              COS(RADIANS(lon2-lon1))) ,2)),
      SIN(RADIANS(lat1))*SIN(RADIANS(lat2)) +
      COS(RADIANS(lat1))*COS(RADIANS(lat2))*COS(RADIANS(lon2-lon1))))

यह फ़ंक्शन अपना परिणाम डिग्री में देता है। एक डिग्री में 111.045 किमी होते हैं। 60 समुद्री मील। 69 क़ानून मील। तो दूरी प्राप्त करने के लिए उन संख्याओं में से एक से परिणाम गुणा करें। MySQL के लिए एक संग्रहीत-फ़ंक्शन परिभाषा सहित एक और पूर्ण लेखन है, यहां

एक अन्य उपाय ISNULL(ACOS(formula), 0.0) . का उपयोग करना है




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL में डेटाबेस के आकार की जांच कैसे करें

  2. MySQL क्या है?

  3. क्या पीडीओ के साथ एक MySQL तैयार कथन को बंद करने के लिए कोई कार्य है?

  4. क्या mysql_free_result($result) का उपयोग करना एक अच्छा अभ्यास है?

  5. जांचें कि PHP के माध्यम से mysql तालिका में उपयोगकर्ता नाम मौजूद है या नहीं?