روز برنامه‌نویس مبارک 🤩🎉 از هدایای روز برنامه‌نویس جا نمونی ⌛
۰ ثانیه
۰ دقیقه
۰ ساعت
۳ محمد مجتبی احمدی
دریافت کویری مناسب برای پیدا کردن نزدیک‌ترین مکان ها
جامعه پی اچ پی ایجاد شده در ۰۹ آذر ۱۴۰۰
<p>سلام و عرض ادب</p><p>میخواستم نزدیک‌ترین مکان‌ها را نظر به مختضات جغرافیای و نوعیت مکان داده شده پیدا کنم</p><pre class=\"ql-syntax\" spellcheck=\"false\">select *,MIN(<span class=\"hljs-built_in\">abs</span>((lat+lng)-(<span class=\"hljs-number\">34.502389</span>+<span class=\"hljs-number\">69.120784</span>)))<span class=\"hljs-keyword\">as</span> near_location FROM locations GROUP BY <span class=\"hljs-built_in\">type</span>; </pre><p>اینم کیوری که زدم</p><p>نزدیک‌ترین مکان را درست پیدا میکنه اما مشخصه‌های دیگه رو نظر به اولین ریکارد بر میگردونه</p><p>یعنی جواب درست آی دی 9 داره اما کیوری آی دی 8 که نظر به تایپ خود اولین ریکارد هست رو بر میگردونه</p><p>اگه راه حلی یا کیوری بهتری دارید لطفا در میان بگذارید</p><p>سپاس</p>
<p>سلام. </p><p>این کوئری که نوشتید، نتیجه اش اشتباهه. </p><p>شما اومدین فاصله ی دو نقطه رو ریختین داخل یک فیلد به نام near_location. البته فاصله ای که حساب کردین هم درست نیست. </p><p>کوئری که شما زدین مثه این میمونه:</p><pre class="ql-syntax" spellcheck="false">MIN(<span class="hljs-number">10</span> - <span class="hljs-number">6</span>) <span class="hljs-keyword">as</span> near_location <span class="hljs-comment">// 4</span> </pre><p><br></p><p>برای یافتن نزدیک‌ترین نقاط به یک نقطه ی مشخص این <a href="https://ourcodeworld.com/articles/read/1019/how-to-find-nearest-locations-from-a-collection-of-coordinates-latitude-and-longitude-with-php-mysql" target="_blank">مقاله</a> رو بخونید و از کوئریش استفاده کنید. </p><p><span style="color: var(--bs-gray-800) ;"></span></p><p>در متن سؤال چند اشتباه نوشتاری داشتید که در ابتدا خوندنش سخت بود که بعد متوجه منظورتون شدم:</p><p>Query = کوئری</p><p>Record = رکورد</p><p>نظر؟؟ اینو نفهمیدم! </p>
بهترین پاسخ
محسن موحد ۰۹ آذر ۱۴۰۰، ۱۱:۲۹
<p>سلام</p><p>اولا سپاس بابت همکاری تون</p><p>دوما راجع به کیوری :) تو سوال هم گفتم که منظورم دریافت نزدیک‌ترین مکان از انواع مختلف هست یعنی وقتی یک مکان رو پین میکنیم نزدیک‌ترین رستورانت‌ها , دانشگاه‌ها و... رو باید پیدا کنه پس نیاز به فرمول سخت نداره با یک جمع و تفریق ساده هم بدست میاد 6=(4-10) , 5=(5-10) فهمیده میشه 5 نزدیکتر به 10 هست نسبت به 6 یعنی کیلو متر را نمیخواستم درسته استانداردش نشون دادن به کیلو متر هست اما فقظ میخواستم تمرین ساده کنم</p><p>این مقاله هم که توصیه کردین عالی هست و قابل استفاده,سپاس</p><p>سوما راجع به املا خدمتتون عرض کنم چون زیاد با کامپیوتر فارسی تایپ نمیکنم اشتباه نوشتم و بعد اینکه کودت به ایرور میخوره کی حوصله داره بیاد دنبال حرف درست بگرده :) :) :)</p><p> </p>
محمد مجتبی احمدی ۰۹ آذر ۱۴۰۰، ۱۸:۳۵
<p>در مورد املا، من فک کردم تصورت از کلماتی که گفتی اشتباهه و خواستم تصحیحش کنم که میگید مشکلات تایپیه. حله. موفق باشید?</p>
محسن موحد ۰۹ آذر ۱۴۰۰، ۱۹:۴۱