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

MySQL - डेटाबेस से त्रिज्या के भीतर अंक खोजें

मैं वर्तमान में एक ऐसे प्रोजेक्ट पर काम कर रहा हूँ जहाँ मैं कई स्थानों के बीच दूरियों की गणना कर रहा हूँ। मैं निम्नलिखित क्वेरी का उपयोग object_id के चयन के लिए कर रहा हूं जो एक निश्चित दायरे में हैं।

SELECT id, 
( 6371 * 
    ACOS( 
        COS( RADIANS( db_latitude ) ) * 
        COS( RADIANS( $user_latitude ) ) * 
        COS( RADIANS( $user_longitude ) - 
        RADIANS( db_longitude ) ) + 
        SIN( RADIANS( db_latitude ) ) * 
        SIN( RADIANS( $user_latitude) ) 
    ) 
) 
AS distance FROM the_table HAVING distance <= $the_radius ORDER BY distance ASC"

मैं स्वयं ACOS फॉर्मूला की व्याख्या नहीं कर सकता क्योंकि मुझे यह शोध से मिला है।

db_latitude = database latitude field
db_longitude = database longitude field
$user_latitude = browser latitude coördinate
$user_longitude = browser longitude coördinate
$the_radius = the radius that you want to search in

यह किलोमीटर में है।



  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. SQL तालिका नहीं बना सकता (त्रुटि:150)

  3. पिछले महीने की गणना करने के लिए MySQL क्वेरी

  4. mysql क्वेरी मॉनिटर टूल

  5. मैं एक MySQL तालिका को UTF-8 में कैसे बदलूं?