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

php/mysql ज़िप कोड निकटता खोज

यहाँ मुझे मिला सबसे अच्छा तरीका है। बेशक यह आवश्यक होगा कि आपके पास डेटाबेस में आपके सभी ज़िपकोड लेट/लॉन एन्कोडेड हों।

// get all the zipcodes within the specified radius - default 20
function zipcodeRadius($lat, $lon, $radius)
{
    $radius = $radius ? $radius : 20;
    $sql = 'SELECT distinct(ZipCode) FROM zipcode  WHERE (3958*3.1415926*sqrt((Latitude-'.$lat.')*(Latitude-'.$lat.') + cos(Latitude/57.29578)*cos('.$lat.'/57.29578)*(Longitude-'.$lon.')*(Longitude-'.$lon.'))/180) <= '.$radius.';';
    $result = $this->db->query($sql);
    // get each result
    $zipcodeList = array();
    while($row = $this->db->fetch_array($result))
    {
        array_push($zipcodeList, $row['ZipCode']);
    }
    return $zipcodeList;
}

आपको बस इस फ़ंक्शन को छोड़ने में सक्षम होना चाहिए। उस ज़िपकोड का $lat और $lon पास करें जिसके लिए आप त्रिज्या चाहते हैं, वैकल्पिक त्रिज्या शामिल करें, और वापस ज़िपकोड की सूची प्राप्त करें।

आप उन सभी उपयोगकर्ताओं को प्राप्त करने के लिए बहुत आसानी से इसे संशोधित कर सकते हैं जहां zipcode IN (radius_sql) है और अपनी सूची के उपयोगकर्ताओं को वापस प्राप्त करें।

हैप्पी कोडिंग!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Django माइग्रेट:टेबल नहीं बनाता है

  2. MySQL त्रुटि:संग्रहीत फ़ंक्शन/ट्रिगर में तालिका को अपडेट नहीं कर सकता क्योंकि यह पहले से ही कथन द्वारा उपयोग किया जाता है जिसने इस संग्रहीत फ़ंक्शन/ट्रिगर को बुलाया

  3. $ परिणाम =mysql_query ()

  4. JSF डेटाटेबल में MySQL डेटाबेस से चित्र प्रदर्शित करना

  5. बिना सीमा के MySQL को ऑफ़सेट करें