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

Neo4j - साइफर का उपयोग करके MATCH के साथ डेटा का चयन करना

साइफर का MATCH कथन आपको डेटा खोजने की अनुमति देता है जो किसी दिए गए मानदंड से मेल खाता है। आप MATCH . का उपयोग कर सकते हैं डेटा वापस करने या उस पर कोई अन्य ऑपरेशन करने के लिए।

MATCH कथन का उपयोग किसी दिए गए मानदंड से मेल खाने के लिए किया जाता है, लेकिन यह वास्तव में वापसी नहीं करता है आंकड़ा। MATCH . से किसी भी डेटा को वापस करने के लिए कथन, हमें अभी भी RETURN . का उपयोग करने की आवश्यकता है खंड।

एक नोड प्राप्त करें

यहां MATCH . का उपयोग करने का एक सरल उदाहरण दिया गया है नोड को पुनः प्राप्त करने के लिए कथन:

MATCH (p:Person)
WHERE p.Name = "Devin Townsend"
RETURN p

WHERE क्लॉज उसी तरह काम करता है जैसे SQL का WHERE खंड, जिसमें यह आपको अतिरिक्त मानदंड प्रदान करके परिणामों को कम करने की अनुमति देता है।

हालांकि, आप WHERE . का उपयोग किए बिना समान परिणाम प्राप्त कर सकते हैं खंड। आप उसी नोटेशन को प्रदान करके भी एक नोड की खोज कर सकते हैं जिसका उपयोग आपने नोड बनाने के लिए किया था।

निम्नलिखित कोड उपरोक्त कथन के समान परिणाम प्रदान करता है:

MATCH (p:Person {Name: "Devin Townsend"})
RETURN p

उपरोक्त प्रश्नों में से किसी एक को चलाने के परिणामस्वरूप निम्न नोड प्रदर्शित होगा:

आपने देखा होगा कि एक नोड पर क्लिक करने से एक बाहरी सर्कल को तीन खंडों में विभाजित किया जाता है - प्रत्येक एक अलग विकल्प का प्रतिनिधित्व करता है:

निचले भाग पर क्लिक करने से नोड के संबंध विस्तृत हो जाएंगे:

रिश्ते

आप MATCH . के साथ संबंधों को भी पार कर सकते हैं बयान। वास्तव में, यह उन चीजों में से एक है जिसमें Neo4j वास्तव में अच्छा है।

उदाहरण के लिए, यदि हम यह पता लगाना चाहते हैं कि किस कलाकार ने हैवी ऐज़ अ रियली हैवी थिंग नामक एल्बम जारी किया है , हम निम्नलिखित क्वेरी का उपयोग कर सकते हैं:

MATCH (a:Artist)-[:RELEASED]->(b:Album)
WHERE b.Name = "Heavy as a Really Heavy Thing" 
RETURN a

यह निम्नलिखित नोड लौटाएगा:

आप देख सकते हैं कि जिस पैटर्न का हम उपयोग करते हैं वह MATCH . में है बयान लगभग आत्म-व्याख्यात्मक है। यह उन सभी कलाकारों से मेल खाता है, जिन्होंने हैवी ऐज़ अ रियली हैवी थिंग नामक एल्बम जारी किया था। .

हम चर का उपयोग करते हैं (अर्थात a और b ) ताकि हम बाद में क्वेरी में उनका उल्लेख कर सकें। हमने संबंध के लिए कोई चर प्रदान नहीं किया, क्योंकि हमें बाद में क्वेरी में संबंध को संदर्भित करने की आवश्यकता नहीं थी।

आप यह भी देख सकते हैं कि पहली पंक्ति उसी पैटर्न का उपयोग करती है जिसका उपयोग हमने पहले संबंध बनाने के लिए किया था। यह साइफर भाषा की सरलता पर प्रकाश डालता है। हम अलग-अलग संदर्भों में एक ही पैटर्न का उपयोग कर सकते हैं (यानी डेटा बनाने और डेटा पुनर्प्राप्त करने के लिए)।

सभी नोड लौटाएं

आप किसी भी फ़िल्टरिंग विवरण को छोड़ कर डेटाबेस में सभी नोड्स को वापस कर सकते हैं। इसलिए, निम्न क्वेरी डेटाबेस में सभी नोड्स लौटा देगी:

MATCH (n) RETURN n

इसके परिणामस्वरूप हमारे सभी नोड वापस आ जाते हैं:

आप पंक्तियों . पर भी क्लिक कर सकते हैं पंक्ति प्रारूप में डेटा प्रदर्शित करने के लिए किनारे पर आइकन:

सभी नोड्स लौटाते समय सावधान रहें। बड़े डेटाबेस पर ऐसा करने से प्रमुख प्रदर्शन प्रभाव पड़ सकते हैं। आम तौर पर अनपेक्षित मुद्दों से बचने के लिए परिणामों को सीमित करने की अनुशंसा की जाती है।

नीचे "परिणाम सीमित करें" देखें।

परिणाम सीमित करें

LIMIT का उपयोग करें आउटपुट में रिकॉर्ड की संख्या को सीमित करने के लिए। इसका उपयोग करना एक अच्छा विचार है जब आप सुनिश्चित नहीं हैं कि परिणाम सेट कितना बड़ा होने वाला है।

तो हम बस LIMIT 5 append जोड़ सकते हैं आउटपुट को 5 रिकॉर्ड तक सीमित करने के लिए पिछले स्टेटमेंट में:

MATCH (n) RETURN n 
LIMIT 5

  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. ubuntu linux में MySql रूट पासवर्ड कमांड लाइन को कैसे रीसेट/बदलें?

  3. तैयार कथनों का उपयोग कब *नहीं* करना है?

  4. MySQL - सबसे कम और सबसे बड़ा तुलना ऑपरेटर

  5. MySQL में रूपांतरण दर की गणना कैसे करें?