SQL धोखा शीट (2021 अपडेट)

विषय - सूची

इस SQL ​​क्वेरी धोखा शीट में आप सीखेंगे

डेटाबेस और टेबल कमांड बनाएं

आदेश विवरण
DATABASE DATABASE बनाएं; डेटाबेस बनाएँ
डेटाबेस का निर्माण न करें डेटाबेस 1; यदि EXISTS आपको डेटाबेस बनाने से पहले एक समान नाम के साथ डेटाबेस के अस्तित्व की जांच करने के लिए MySQL सर्वर को निर्देश देने की अनुमति नहीं देता है।
डेटाबेस को अलग न करें लैटिन 1 कैरेक्टर सेट में लैटिन 1_स्विकाल्डी_सि का उपयोग किया गया है जो स्वीडिश केस असंवेदनशील आदेश है।
शो DATABASES SQL कमांड को चलाकर आप मौजूदा डेटाबेस की सूची देख सकते हैं।
टेबल टेबल [अगर नहीं है] तालिका सिंटैक्स बनाएँ

डेटा के प्रकार

संख्यात्मक डेटा प्रकार

आदेश विवरण
टिनिनेट () -128 से 127 सामान्य 0 से 255 अंक।
लघु () -32768 से 32767 सामान्य 0 से 65535 UNSIGNED।
दवा () -8388608 से 8388607 सामान्य 0 से 16777215 UNSIGNED।
INT () -2147483648 से 2147483647 सामान्य 0 से 4294967295 UNSIGNED।
BIGINT () -9223372036854775808 से 9223372036854775807 सामान्य 0 से 18446744073709551615 UNSIGNED।
फ्लोट फ्लोटिंग दशमलव बिंदु के साथ एक छोटी अनुमानित संख्या।
डबल () फ्लोटिंग दशमलव बिंदु के साथ एक बड़ी संख्या।
DECIMAL (,) एक दशमलव एक निश्चित दशमलव बिंदु के लिए अनुमति देता है, एक स्ट्रिंग के रूप में संग्रहीत। मुद्रा मूल्यों को संग्रहीत करने के लिए विकल्प।

पाठ डेटा प्रकार

आदेश विवरण
CHAR () 0 से 255 वर्ण लंबा एक निश्चित खंड।
VARCHAR () एक वर्ण खंड 0 से 255 वर्ण लंबा।
TINYTEXT अधिकतम 255 वर्णों वाली एक स्ट्रिंग।
पाठ अधिकतम 65535 वर्णों वाली एक स्ट्रिंग।
ब्लॉब अधिकतम 65535 वर्णों वाली एक स्ट्रिंग।
मेडिटेट 16777215 वर्णों की अधिकतम लंबाई वाला एक तार।
MEDIUMBLOB 16777215 वर्णों की अधिकतम लंबाई वाला एक तार।
लंबा 4294967295 वर्णों की अधिकतम लंबाई के साथ एक स्ट्रिंग।
LONGBLOB 4294967295 वर्णों की अधिकतम लंबाई के साथ एक स्ट्रिंग।

दिनांक / समय डेटा प्रकार

आदेश विवरण
तारीख YYYY-MM-DD
दिनांक और समय YYYY-MM-DD HH: MM: SS
TIMESTAMP YYYYMMDDHHMMSS
समय एचएच: एमएम: एसएस

अन्य डेटा प्रकार

आदेश विवरण
ENUM पूर्वनिर्धारित पाठ मानों की सूची से चुना गया पाठ मान संग्रहीत करने के लिए।
सेट इसका उपयोग पूर्व-निर्धारित पाठ मानों की सूची से चुने गए पाठ मानों को संग्रहीत करने के लिए भी किया जाता है। इसके कई मूल्य हो सकते हैं।
BOOL टिनिनेट (1) के लिए पर्यायवाची शब्द, बूलियन मूल्यों को संग्रहीत करने के लिए उपयोग किया जाता है
बायनरी CHAR के समान, अंतर ग्रंथ बाइनरी प्रारूप में संग्रहीत हैं।
वार्बिनरी VARCHAR के समान, अंतर ग्रंथों को बाइनरी प्रारूप में संग्रहीत किया जाता है।

MySQL सेलेक्ट स्टेटमेंट कमांड

आदेश विवरण
चयन करें [DISTINCT | ALL] {* | [fieldExpression [AS newName]} से तालिका का नाम [उपनाम] [WHERE की शर्त] [GROUP BY fieldName (s)] [स्थिति] के आधार पर फ़ील्डनाम (ओं) से SQL चयन कथन वाक्यविन्यास
चयन करें * तालिका 1 से; तालिका का चयन करें
टेबल 1 से टी 1, टी 2, टी 3, टी 4 का चयन करें; हम केवल केवल t1, t2, t3 और t4 फ़ील्ड प्राप्त करने में रुचि रखते हैं।
सेक्ट कॉनैट (t1, (, t3,)), t4 FROM table2 से; तालिका 2 सूची प्राप्त करना
स्तंभ का चयन करें। उपनाम क्षेत्र नाम सिंटैक्स है

MySQL कहां और, या, के साथ, कमांड में नहीं है

आदेश विवरण
का चयन करें * से तालिका का नाम कहीं भी हालत; जहां उपवाक्य वाक्य
का चयन करें * टेबल 1 से जहां टी 1 = 2 और टी 2 = 2008; जहां - और तार्किक ऑपरेटर के साथ संयुक्त खंड
का चयन करें * टेबल 1 से जहां टी 1 = 1 या टी 1 = 2; जहां - या तार्किक ऑपरेटर के साथ संयुक्त खंड
का चयन करें * टेबल 2 से जहां टी 1 में (1,2,3); कहाँ से जोड़ा गया - कीवर्ड में
का चयन करें * तालिका 2 से जहां टी 1 में नहीं (1,2,3); कहाँ से जोड़ा गया है - कीवर्ड में नहीं
का चयन करें * से तालिका 2 जहां टी 3 = महिला; जहाँ क्लार्क को समान (=) के साथ जोड़ा जाता है
चयन करें * टेबल 3 से जहां टी 3> 2000; जहाँ अधिक से अधिक (>) COMPARISON OPERATORS के साथ संयुक्त खंड है
चयन करें * टेबल 1 से जहां टी 1 <> 1; जहाँ समान नहीं (<>) COMPARISON OPERATORS के साथ संयुक्त खंड

MySQL कमांड INSERT INTO टेबल

आदेश विवरण
INSERT INTO table_name (column_1, column_2,…) VALUES (value_1, value_2,…); SQL INSERT कमांड का मूल सिंटैक्स
INSERT INTO table1 (t1, t2, t3, t4) VALUES (X1, X2, X3, X4); तालिका में डेटा सम्मिलित करें
INSERT INTO table_1 तालिका 2 से * चयन करें; किसी अन्य तालिका से तालिका में सम्मिलित करना

MySQL DELETE कमांड

आदेश विवरण
तालिका से नाम हटाएं [कहां]; MySQL में एक पंक्ति हटाएं

उदाहरण: - तालिका 1 से हटाएं जहां तालिका 1_आईडी = 18 है;

(18 नंबर आईडी फॉर्म टेबल 1 की प्रविष्टि हटाएं।) तालिका 1 से हटाएं जहां तालिका 1 पर क्लिक करें (20,21); (20 और 21 नंबर आईडी फॉर्म टेबल 1 की प्रविष्टि हटाएं)

MySQL अपडेट कमांड

आदेश विवरण
अद्यतन तालिका_नाम सेट कॉलम_नाम = नया_वल्यू [जहां पर स्थिति]; अद्यतन कमांड सिंटैक्स

उदाहरण: - तालिका 1 का चयन करें * जहां से t1 = 1;

(t1 = 1 के रिकॉर्ड को पुनः प्राप्त करें) अद्यतन तालिका 1 सेट करें t4 = X1 WHERE t1 = 1; (तालिका में t4 मान अपडेट करें)

MySQL में ORDER BY: DESC & ASC कमांड

आदेश विवरण
चयन विवरण ... [जहां हालत | GROUP BY field_name (s) HAVING की स्थिति] ORDER BY field_name (s) [ASC | DESC]; क्लॉज बेसिक सिंटेक्स द्वारा ऑर्डर
सेलेक्ट करें {fieldName (s) | *> तालिका से नाम (ओं) [कहां की स्थिति] आदेश द्वारा क्षेत्रनाम (ओं) ASC / DESC [लिमा एन] DESC और ASC सिंटैक्स

उदाहरण: - DESC के लिए (अवरोही)

चयन करें * से तालिका 1 ORDER से t3 DESC; ASC के लिए (आरोही) का चयन करें * T3 ASC द्वारा table1 ORDER से;

MySQL ग्रुप बाय और हाइविंग क्लॉज कमांड

समूह द्वारा

आदेश विवरण
सेलेक्ट स्टेटमेंट्स… GROUP BY column_name1 [, column_name2,…] [HAVING कंडीशन]; सिंटेक्स द्वारा ग्रुप

एकल कॉलम को समूहीकृत करने के लिए उदाहरण: - तालिका 1 से t4 का चयन करें;

टेबल से ग्रुप 4 ग्रुप का चयन करें। (मान लें कि हम टी 4 के लिए अद्वितीय मान प्राप्त करना चाहते हैं।)

कई कॉलमों को समूहीकृत करने के लिए उदाहरण: - SEL1 t1_id, t4 FROM table2;

सेलेक्ट t1_id, t4 टेबल 2 ग्रुप से t1_id, t4

समूहीकरण और समग्र कार्य

आदेश विवरण
सेलेक्ट t2, COUNT (t1) F1 से टेबल 1 ग्रुप; मान लीजिए कि हम अपने डेटाबेस में कुल t2 कॉलम मान चाहते हैं।

हवलदार खंड

आदेश विवरण
सेलेक्ट * FROM table2 GROUP by t1_id, t4 HAVING t1_id = X1; टेबल 2 टी 1 आईडी एक्स 1 के लिए सभी टी 4। हम अपने परिणामों को प्राप्त करने के लिए निम्नलिखित स्क्रिप्ट का उपयोग करेंगे।

MySQL वाइल्डकार्ड कमांड लाइक, लाइक, एस्केप, (%), (_)

MySQL में% वाइल्डकार्ड कमेंड

आदेश विवरण
चयन कथनों ... कहाँ फ़ील्डनाम पसंद xxx%; % प्रतिशत वाइल्डकार्ड के लिए मूल सिंटैक्स

उदाहरण: - हम टेबल 1 के भाग t2 के रूप में "X1" शब्द के दोनों किनारों पर एक पैटर्न मैच करने के लिए प्रतिशत वाइल्डकार्ड का उपयोग करेंगे। चयन करें * तालिका 1 से जहां t2 पसंद% X1%;

चयन करें * तालिका 1 से जहां t2 पसंद% X1; (केवल खोज मापदंड की शुरुआत में प्रतिशत वाइल्डकार्ड) तालिका 1 का चयन करें * जहां से t2 पसंद X1%; (मिलान किए जाने वाले निर्दिष्ट पैटर्न के अंत तक प्रतिशत वाइल्डकार्ड।)

_ अंडरस्कोर वाइल्डकार्ड कमांड

आदेश विवरण
चयन करें * तालिका 1 से जहां t3 पसंद x2_; सभी तालिका 1 जो वर्ष "x2" में t3 थे

वाइल्डकार्ड कमांड की तरह नहीं

आदेश विवरण
का चयन करें * तालिका 1 से जहां T3 नहीं पसंद X2_; मान लीजिए कि हम तालिका 1 प्राप्त करना चाहते हैं जो वर्ष X2_ में t3 नहीं थे

बच कीवर्ड वाइल्डकार्ड कमांड

आदेश विवरण
67 # %% ESCAPE #; हम स्ट्रिंग "67%" की जांच करना चाहते हैं

MYSQL नियमित अभिव्यक्ति (REGEXP)

आदेश विवरण
चयन कथनों ... कहाँ फ़ील्डनाम REGEXP पैटर्न; नियमित अभिव्यक्ति की मूल वाक्य रचना

उदाहरण: - सभी तालिका 1 t1 जिनके पास शब्द X1 है। इससे कोई फर्क नहीं पड़ता कि शीर्षक के शुरुआत, मध्य या अंत में "एक्स 1" है या नहीं। का चयन करें * तालिका 1 से जहां टी 1 REGEXP X1;

नियमित अभिव्यक्ति मेटाचैकर

आदेश विवरण
* तारांकन चिह्न (*) मेटाचैकर का उपयोग शून्य (0) से मेल खाने के लिए किया जाता है या इससे पहले हुए तारों के अधिक उदाहरण
+ प्लस (+) मेटाचैकर का उपयोग एक या एक से अधिक उदाहरणों से मेल खाने के लिए किया जाता है।
? प्रश्न (?) मेटाचैकर का उपयोग शून्य (0) से मेल खाने के लिए किया जाता है या इसके पूर्व के एक उदाहरण से।
. डॉट (।) मेटाचैकर का उपयोग किसी एक वर्ण को एक नई पंक्ति के अलावा मेल करने के लिए किया जाता है।
[abc] संलग्न सूची में से किसी से मेल खाने के लिए चारलिस्ट का उपयोग किया जाता है।
[^abc] Charlist [abc] का उपयोग किसी भी वर्णों से मेल खाने के लिए किया जाता है।
[A-Z] [AZ] का उपयोग किसी भी ऊपरी मामले के पत्र से मेल खाने के लिए किया जाता है
[a-z] [Az] का प्रयोग किसी भी निचले अक्षर से मेल खाने के लिए किया जाता है
[0-9] [0-9] का उपयोग किसी भी अंक को ० से ९ के बीच मिलान करने के लिए किया जाता है।
^ मैच शुरू करने के लिए कैरट (^) का उपयोग किया जाता है।
| ऊर्ध्वाधर पट्टी (!) का उपयोग विकल्पों को अलग करने के लिए किया जाता है।
[[:<:]] [[: <:]] शब्दों की शुरुआत से मेल खाता है।
[[:>:]] [[:>:]] शब्दों के अंत से मेल खाता है।
[:class:] अक्षर से मेल खाने के लिए [: वर्ग:] एक वर्ण वर्ग से मेल खाता है [[: अल्फ़ा:], श्वेत स्थान का मिलान करने के लिए [: space:], उच्च श्रेणी के अक्षरों के लिए मैच पंचर और [: ऊपरी:] है।

SQL फ़ंक्शंस आदेश

स्ट्रिंग फ़ंक्शन

आदेश विवरण
तालिका 1 से t1_id, t2, UCASE (t2) का चयन करें; ऐसा करने के लिए "UCASE" फ़ंक्शन। यह एक पैरामीटर के रूप में एक स्ट्रिंग लेता है और सभी अक्षरों को ऊपरी मामले में परिवर्तित करता है।

संख्यात्मक कार्य

आदेश विवरण उदाहरण
DIV पूर्णांक विभाजन 23 DIV 6 का चयन करें;
/ विभाजन 23/6 का चयन करें;
- घटाव चयनित 23 - 6;
+ इसके अलावा 23 + 6 का चयन करें;
* गुणा 23 23 का चयन करें।
% or MOD मापांक 23% 6 का चयन करें; या SELECT 23 MOD 6;
Floor यह फ़ंक्शन दशमलव संख्या को एक संख्या से हटाता है और इसे निकटतम निम्नतम संख्या में राउंड करता है। चुनें फर्श (23/6) के रूप में floor_result;
Round यह फ़ंक्शन दशमलव स्थानों के साथ एक संख्या को निकटतम पूर्ण संख्या में गोल करता है। SELUND ROUND (23/6) as round_result;

संग्रहित कार्य

आदेश विवरण
बनाएँ FUNCTION sf_name ([पैरामीटर (s)]) डेटा डेटा प्रकार सांख्यिकी एक संग्रहीत फ़ंक्शन बनाने के लिए मूल सिंटैक्स
बनाएँ फंक्शन sf_name ([पैरामीटर (s)]) अनिवार्य और MySQL सर्वर को कोष्ठक में परिभाषित वैकल्पिक मापदंडों के साथ `sf_name 'नामक एक फ़ंक्शन बनाने के लिए कहता है।
डेटा डेटा प्रकार अनिवार्य और डेटा प्रकार निर्दिष्ट करता है कि फ़ंक्शन वापस लौटना चाहिए।
निष्कर्ष यदि समान तर्क इसे प्रदान किए जाते हैं तो फ़ंक्शन समान मान लौटाएगा।
कथन प्रक्रियात्मक कोड जो फ़ंक्शन निष्पादित करता है।

MySQL एग्रीगेट फंक्शन कमांड

आदेश विवरण
तालिका से का चयन करें COUNT समारोह
तालिका 2 से MIN (t3) का चयन करें; MIN फ़ंक्शन
तालिका 2 से MAX (t3) का चयन करें; अधिकतम समारोह
तालिका 3 से SUM (t4) का चयन करें; SUM फ़ंक्शन
तालिका 3 से AVG (t4) का चयन करें; AVG फ़ंक्शन

MySQL पूर्ण नहीं है और पूर्ण कमांड नहीं है

आदेश विवरण
तालिका 1 से चयनित COUNT (t3); (यदि t3 में शून्य मान मौजूद है जो गिनती नहीं है) मान के रूप में अशक्त
सृजन टेबल 2 (t1_number int NOT NULL, t2_names varchar (255), t3 varchar (6)); पूर्ण मान नहीं
comlumn_name IS NULL comlumn_name पूरा नहीं है NULL कीवर्ड्स बेसिक सिंटेक्स
का चयन करें * तालिका 1 से जहां t2_number है नल; IS NULL का उदाहरण
चयन करें * तालिका 1 से जहां t2_number पूर्ण नहीं है; IS का उदाहरण NULL नहीं है

MySQL AUTO_INCREMENT कमांड

आदेश विवरण
सृजन तालिका 1 (t1_id int (11) AUTO_INCREMENT, t2_name varchar (150) DEFAULT NULL, t3 varchar (500) DEFAULT NULL, PRIMARY KEY (tt_id)); ऑटो वेतन वृद्धि वाक्यविन्यास

MYSQL - ALTER, DROP, RENAME, MODIFY

आदेश विवरण
तालिका तालिका_नाम जोड़ें कॉलम कॉलम_नाम data_type; अल्टर- वाक्य रचना
ड्रॉप टेबल नमूना_टेबल; ड्रॉप टेबल सिंटैक्स
RENAME TABLE current_table_name करने के लिए new_table_name; RENAME COMMAND सिंटैक्स
तालिका तालिका 1 चेंज COLUMN t1_names t1name चार (250) पूर्ण नहीं है; बदलें बदलें
सारणी तालिका 1MODIFY t1name चार (50) पूरी नहीं; आधुनिक कुंजी
सारणी तालिका 1 ADD t4 दिनांक NULL AFTER t3; कुंजी के बाद

MySQL सीमा और ऑफसेट

आदेश विवरण
चयनित {फ़ील्ड नाम (s) | * = तालिका से नाम (ओं) [कहां की स्थिति] सीमा एन; कीवर्ड सिंटैक्स
चयन करें * तालिका 1 से सीमा 1, 2; सीमा क्वेरी में सेट करें

MySQL SubQuery आदेश:

आदेश विवरण
तालिका 1 से सेलेक्ट t1_name, WHERE श्रेणी_id = (तालिका 2 से चयन MIN (t1_id)); उप प्रश्न

MySQL JOINS कमांड देता है

आदेश विवरण
तालिका 1 पार से तालिका 2 का चयन करें * जॉय क्रॉस करें
तालिका 1, 1, तालिका 1, 2, तालिका 2 से 1 का चयन करें। तालिका 1 से तालिका 2, जहां तालिका 2 है। आंतरिक रूप से जुड़ा
A.t1, B.t2, B.t3 से तालिका 2 के रूप में चयन करें। एक LEFT JOIN तालिका 1 AS B पर B.table2_id = A.id पर बाँया जोड़
A.t1, A.t2, B.t3 से तालिका 1 के रूप में चुनें। सही शामिल हैं
तालिका 1 के रूप में A.t1, B.t2, B.t3 से एक LEFT JOIN तालिका 1 AS B USING (table2_id) का चयन करें "चालू" और "उपयोग" खंड

MySQL यूनिअन कमांड

आदेश विवरण
स्तंभ 1 का चयन करें यूनिअन सिंटैक्स
स्तंभ 1 का चयन करें, स्तंभ 2 से स्तंभ 2; यूनिअन DISTINCT

दृश्य कमांड में MySQL

आदेश विवरण
चयनित दृश्य देखें_नाम चयन कथन के रूप में; दृश्य वाक्य रचना
DROP VIEW general_v_movie_rentals; गिरते हुए दृश्य

MySQL Index को कमांड करता है

आदेश विवरण
तालिका_नाम (कॉलम_नाम) पर INDEX id_index बनाएँ; इंडेक्स बेसिक सिंटैक्स जोड़ें
DROP INDEX index_id पर table_name; ड्रॉप इंडेक्स बेसिक सिंटैक्स

दिलचस्प लेख...