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

MySQL लाइक इन ()?

<घंटा/>

आप रेगुलर एक्सप्रेशन (regexp) की मदद से MySQL लाइक IN () को भी लागू कर सकते हैं। वाक्य रचना इस प्रकार है -

अपनेTableName से *चुनें जहां आपकाColumName regexp 'value1|value2|value3……|valueN';

उपरोक्त तर्क को समझने के लिए, आपको एक तालिका बनानी होगी। आइए पहले एक टेबल बनाएं -

mysql> टेबल बनाएं INDemo -> ( -> Id int, -> Name varchar(100) -> );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.90 सेकंड)

तालिका में कुछ रिकॉर्ड डालें। क्वेरी इस प्रकार है -

mysql> INDemo मानों में डालें (100, 'जॉन'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.13 सेकंड) mysql> INDemo मानों में डालें (104, 'कैरोल'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.18 सेकंड) )mysql> INDemo मानों में डालें (108, 'डेविड'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.19 सेकंड) mysql> INDemo मानों में डालें (112, 'स्मिथ'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.12 सेकंड) mysql> INDemo मानों में डालें (116, 'जॉनसन'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड) mysql> INDemo मानों में डालें (120, 'सैम'); क्वेरी ठीक, 1 पंक्ति प्रभावित (0.16 सेकंड)

अब हम सेलेक्ट स्टेटमेंट की मदद से सभी रिकॉर्ड्स को प्रदर्शित कर सकते हैं। क्वेरी इस प्रकार है -

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

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

<पूर्व>+----------+-----------+| आईडी | नाम |+----------+---------+| 100 | जॉन | | 104 | कैरल || 108 | डेविड || 112 | स्मिथ || 116 | जॉनसन || 120 | सैम |+------+-----------+6 पंक्तियों में सेट (0.00 सेकंड)

रेगेक्सपी का प्रयोग करें जो आईएन() की तरह काम करता है। आप उपरोक्त सिंटैक्स को लागू कर सकते हैं जिसकी मैंने शुरुआत में चर्चा की है। क्वेरी इस प्रकार है -

mysql> INDemo से *चुनें जहां Id regexp '112|116|100';

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

<पूर्व>+----------+-----------+| आईडी | नाम |+----------+---------+| 100 | जॉन || 112 | स्मिथ || 116 | जॉनसन |+------+-----------+3 पंक्तियों में सेट (0.21 सेकंड)

आपको IN() के साथ समान आउटपुट मिलेगा। आइए अब इसे IN() की मदद से चेक करते हैं। क्वेरी इस प्रकार है -

mysql> INDemo से *चुनें जहां Id IN(112,116,100);

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

<पूर्व>+----------+-----------+| आईडी | नाम |+----------+---------+| 100 | जॉन || 112 | स्मिथ || 116 | जॉनसन |+------+--------+3 पंक्तियों में सेट (0.00 सेकंड)

जैसा कि आप उपरोक्त आउटपुट में देख सकते हैं, हमें वही परिणाम मिल रहे हैं।


  1. एक MySQL क्वेरी में दो बार LIKE क्लॉज का उपयोग करना

    आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable2009(Name varchar(20));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.51 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable2009 मानों में डालें (डेविड मिलर); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.18 सेकंड) चयन कथन का उपयोग करके तालिका से सभी

  1. MySQL में ORDER BY के साथ एकाधिक पसंद ऑपरेटर?

    ORDER BY के साथ कई LIKE ऑपरेटरों को लागू करने वाला सिंटैक्स निम्नलिखित है - अपनेTableNameआदेश से *चुनें(yourColumnName जैसे %yourValue1%)+(yourColumnName जैसे %yourValue2%)+..Ndesc; आइए एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (1.53 सेकंड) इंसर्ट कमांड की मदद से टेबल में कुछ रिकॉर्ड डाल

  1. गतिशील सरणी के साथ MySQL क्वेरी की तरह?

    डायनेमिक सरणी के साथ LIKE क्वेरी को लागू करने के लिए, सिंटैक्स इस प्रकार है - उदाहरण अपनेTableName से *चुनें, जहां yourColumnName2 जैसे %yourValue% ऑर्डर आपके ColumnName1 द्वारा आपकेLimitValue को सीमित करता है; आइए एक टेबल बनाएं - उदाहरण ;क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.67 इंसर्ट कमांड की मदद