Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> MySql

सबक्वेरी में उपयोग करते समय MySQL EXISTS और IN के बीच में से किसे प्राथमिकता दी जाती है?

<घंटा/>

EXISTS बताता है कि क्वेरी ने परिणाम लौटाया है या नहीं, जबकि IN का उपयोग एक मान की दूसरे के साथ तुलना करने के लिए किया जा सकता है। IN शाब्दिक मूल्यों का उपयोग करता है।

नोट - जब भी कोई सबक्वेरी परिणाम बहुत छोटा होता है, तो सबक्वेरी में IN को प्राथमिकता दी जाती है। यदि सबक्वेरी परिणाम बहुत बड़ा है तो EXISTS का उपयोग किया जाता है।

चूंकि छोटे सबक्वेरी परिणामों के लिए IN एक पसंदीदा विकल्प है, इसलिए हम IN के एक उदाहरण पर विचार कर रहे हैं।

तालिका बनाने के लिए।

mysql> तालिका बनाएं InSubQueryDemo -> ( -> PNumber int, -> PName varchar(100) -> );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.60 सेकंड)

तालिका में रिकॉर्ड सम्मिलित करना।

mysql> InSubQueryDemo मानों (1, 'लैपटॉप') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड) mysql> InSubQueryDemo मानों में डालें (2, 'वायरलेसकीबोर्ड'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.21 सेकंड) )mysql> InSubQueryDemo मानों में डालें(3,'वायरलेसमाउस'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.12 सेकंड)

सभी रिकॉर्ड प्रदर्शित करना।

mysql> InSubQueryDemo से *चुनें;

निम्न आउटपुट है।

<पूर्व>+------+---------------------+| पीएनंबर | PName |+------+---------------------+| 1 | लैपटॉप || 2 | वायरलेसकीबोर्ड || 3 | वायरलेसमाउस |+-----------+---------------------+3 पंक्तियाँ सेट में (0.00 सेकंड)

IN के लिए सिंटैक्स निम्नलिखित है, जिसमें 1 से अधिक "PNumber" लाने के लिए एक सबक्वेरी शामिल है।

mysql> InSubQueryDemo से * चुनें -> जहां PNumber IN (InSubQueryDemo से PNumber चुनें जहां PNumber> 1);

यहाँ आउटपुट है।

<पूर्व>+------+---------------------+| पीएनंबर | PName |+------+---------------------+| 2 | वायरलेसकीबोर्ड || 3 | वायरलेसमाउस |+-----------+---------------------+2 पंक्तियों में सेट (0.04 सेकंड)
  1. MySQL में intvalue ='1' और intvalue =1 के बीच अंतर?

    आपको intvalue =1 का उपयोग करने की आवश्यकता है। कथन intvalue=1 को MySQL द्वारा आंतरिक रूप से कास्ट (1 as int) में बदल दिया गया है। आइए पहले एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.64 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1566 मान (90) में डालें; क्व

  1. पंक्तियों को पुनः प्राप्त करते समय MySQL में AND, OR ऑपरेटर के बीच क्या अंतर है?

    AND, OR के बीच का अंतर यह है कि समग्र स्थिति के सही होने के लिए AND दोनों स्थितियों का मूल्यांकन सही होना चाहिए। समग्र स्थिति के सही होने के लिए OR मूल्यांकन करता है कि एक शर्त सही होनी चाहिए। आइए एक टेबल बनाएं - mysql> create table demo70 −> ( −> id int not null auto_increment

  1. एक MySQL डेटाबेस बनाना और उसका उपयोग करना

    एक बार MySQL इंस्टाल हो जाने के बाद, और उपयोगकर्ता को पता है कि SQL स्टेटमेंट्स को कैसे दर्ज करना है, एक डेटाबेस तक पहुँचा जा सकता है। आइए डेटाबेस में तालिकाओं से डेटा पुनर्प्राप्त करने के लिए आवश्यक चरणों को समझें - सर्वर से कनेक्ट करें एक डेटाबेस बनाएं एक टेबल बनाएं तालिका में डेटा लोड