मैं केवल उन स्टेशनों की तुलना करना और प्राप्त करना चाहता हूं जो एक से दूसरे की दूरी के भीतर हैं। मान लें कि मेरे पास 3 स्टेशन A-B-C हैं, उन सभी की स्थिति x-y-z है। मैं उन स्टेशनों को प्राप्त करना चाहता हूं जो 30 मीटर से दूर हैं (मेरे पास दूरी की गणना करने के लिए एक फ़ंक्शन है तो चलिए इसे दूरी (x, y) कहते हैं)।
चुनें * स्टेशन से जहां दूरी(स्टेशन1, स्टेशन2) < 30
मेरी समस्या यह है कि आप स्टेशन 1 और स्टेशन 2 की दो अलग-अलग पंक्तियों की दूरी की तुलना कैसे कर सकते हैं?
धन्यवाद!!!
1 उत्तर
आप ऐसा कुछ कर सकते हैं:
select a.*
from station a
inner join station b
on distance(a.station_id, b.station_id) < 30;
संबंधित सवाल
नए सवाल
sql
संरचित क्वेरी भाषा (एसक्यूएल) डेटाबेस को क्वेरी करने के लिए एक भाषा है। प्रश्नों में कोड उदाहरण, तालिका संरचना, नमूना डेटा और DBMS कार्यान्वयन के लिए एक टैग (जैसे MySQL, PostgreSQL, Oracle, MS SQL Server, IBM DB2, आदि) का उपयोग किया जाना चाहिए। यदि आपका प्रश्न केवल एक विशिष्ट DBMS (विशिष्ट एक्सटेंशन / सुविधाओं का उपयोग करता है) से संबंधित है, तो इसके बजाय उस DBMS के टैग का उपयोग करें। एसक्यूएल के साथ टैग किए गए सवालों के जवाब में आईएसओ / आईईसी मानक एसक्यूएल का उपयोग करना चाहिए।
select distinct a.*
के उपयोग से मदद मिलनी चाहिए।