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

एक MySQL संग्रहीत प्रक्रिया में केवल एक विशेष रिकॉर्ड प्राप्त करने के लिए IN () का उपयोग करें?

<घंटा/>

आइए पहले एक टेबल बनाएं -

mysql> टेबल बनाएं DemoTable2004(UserId varchar(20), UserName varchar(20));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.57 सेकंड)

इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें -

mysql> DemoTable2004 मानों ('जॉन_123', 'जॉन') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.93 सेकंड) mysql> DemoTable2004 मानों में डालें ('23456_कैरोल', 'कैरोल'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.25 सेकंड)mysql> DemoTable2004 मान ('111_Bob','Bob') में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.14 सेकंड)

चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें -

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

यह निम्नलिखित आउटपुट देगा -

<पूर्व>+---------------+----------+| उपयोगकर्ता आईडी | उपयोगकर्ता नाम |+---------------+----------+| जॉन_123 | जॉन || 23456_कैरोल | कैरल || 111_बॉब | बॉब |+---------------+----------+3 पंक्तियों में सेट (0.00 सेकंड)

यहां संग्रहीत कार्यविधि बनाने और IN() −

. के साथ केवल एक विशेष रिकॉर्ड का चयन करने के लिए क्वेरी है
mysql> delimiter //mysql> create प्रक्रिया test_of_in(IN uid varchar(20)) BEGIN DemoTable2004 से * चुनें जहां UserId IN(uId); END//क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.15 सेकंड)mysql> सीमांकक;संग्रहीत प्रक्रिया को कॉल करें:mysql> कॉल test_of_in('23456_Carol');

यह निम्नलिखित आउटपुट देगा -

<पूर्व>+---------------+----------+| उपयोगकर्ता आईडी | उपयोगकर्ता नाम |+---------------+----------+| 23456_कैरोल | कैरल |+---------------+----------+1 पंक्ति सेट (0.00 सेकंड) में ठीक है, 0 पंक्तियाँ प्रभावित हैं, 1 चेतावनी (0.02 सेकंड)
  1. एक MySQL संग्रहीत प्रक्रिया में लागू एक क्वेरी से डेटाबेस का नाम प्राप्त करें?

    डेटाबेस का नाम प्राप्त करने के लिए, नीचे दिए गए सिंटैक्स का उपयोग करें - डेटाबेस चुनें (); आइए हम उपरोक्त सिंटैक्स को संग्रहीत कार्यविधि में लागू करें - सीमांकक; अब आप कॉल कमांड का उपयोग करके एक संग्रहीत कार्यविधि को कॉल कर सकते हैं - get_procedure_database_name() पर कॉल करें; यह निम्नलिखित आउट

  1. एक पैरामीटर प्राप्त करने के लिए डायनामिक एसक्यूएल और इसे संग्रहीत प्रक्रिया के अंदर बनाई गई नई तालिका के लिए LIKE में उपयोग करें

    इसके लिए तैयार कथन का प्रयोग करें। आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable1973 (StudentId int, StudentName varchar(20));क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.00 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1973 मानों में डालें (104, जॉन स्मिथ); क्वेरी ठीक है, 1 प

  1. एक MySQL संग्रहीत प्रक्रिया में डिलीमीटर का सही ढंग से उपयोग कैसे करें और मान डालें?

    आइए पहले एक टेबल बनाएं - );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.87 सेकंड) यहाँ एक संग्रहीत कार्यविधि बनाने और मान सम्मिलित करने के लिए क्वेरी है (सही ढंग से सीमांकक का उपयोग करके) - सीमांकक; कॉल कमांड का उपयोग करके संग्रहीत कार्यविधि को कॉल करें - कॉल इन्सर्ट_नाम (क्रिस, ब्राउन); क्वेरी ओके,