2.1 SQL चा परिचय

जर तुमच्याकडे डेटाबेस (डीबी) असेल आणि त्यात - काही डेटा असलेली एक टेबल असेल, तर या टेबलमधील विशिष्ट डेटा शोधणे हे सर्वात सामान्य कार्य आहे. 40 वर्षांपूर्वी SQL चा शोध लावला होता.

SQL म्हणजे स्ट्रक्चर्ड क्वेरी लँग्वेज .

सर्वात सोपी SQL क्वेरी यासारखी दिसते:

SELECT column1, column2, … columnN FROM table

समजा तुमच्याकडे तुमच्या स्टार्टअपच्या कर्मचार्‍यांची यादी असलेले कर्मचारी टेबल आहे:

आयडी नाव व्यवसाय पगार वय रुजू दिनांक
इव्हानोव्ह इव्हान प्रोग्रामर 100,000 २५ 2012-06-30
2 पेट्रोव्ह पेत्र प्रोग्रामर 80,000 23 2013-08-12
3 इव्हानोव्ह सेर्गे परीक्षक 40,000 तीस 2014-01-01
4 राबिनोविच मोइशा दिग्दर्शक 200,000 35 2015-05-12
किरिएन्को अनास्तासिया कार्यालय व्यवस्थापक 40,000 २५ 2015-10-10
6 वास्का मांजर 1,000 3 2018-01-01

तुम्हाला एक क्वेरी लिहायची आहे जी employee namesत्यांना देखील प्रदर्शित करेल salaries, नंतर तुम्हाला एक क्वेरी लिहायची आहे:

SELECT name, salary FROM employee

तुम्हाला क्वेरीचा परिणाम मिळेल:

नाव पगार
इव्हानोव्ह इव्हान 100,000
पेट्रोव्ह पेत्र 80,000
इव्हानोव्ह सेर्गे 40,000
राबिनोविच मोइशा 200,000
किरिएन्को अनास्तासिया 40,000
वास्का 1,000

जर तुम्हाला तुमच्या टेबलचे सर्व कॉलम दाखवायचे असतील तर सर्व कॉलम्सची नावे दाखवण्याऐवजी तुम्ही फक्त एक तारका लिहू शकता. उदाहरण:

SELECT * FROM employee

तुम्हाला क्वेरीचा परिणाम मिळेल:

आयडी नाव व्यवसाय पगार वय रुजू दिनांक
इव्हानोव्ह इव्हान प्रोग्रामर 100,000 २५ 2012-06-30
2 पेट्रोव्ह पेत्र प्रोग्रामर 80,000 23 2013-08-12
3 इव्हानोव्ह सेर्गे परीक्षक 40,000 तीस 2014-01-01
4 राबिनोविच मोइशा दिग्दर्शक 200,000 35 2015-05-12
किरिएन्को अनास्तासिया कार्यालय व्यवस्थापक 40,000 २५ 2015-10-10
6 वास्का मांजर 1,000 3 2018-01-01

2.2 SQL क्वेरीचे प्रगत दृश्य

SQL भाषा शक्य तितक्या वापरकर्त्यासाठी अनुकूल म्हणून डिझाइन केली गेली.

प्रथम, विनंती मजकूराच्या बाबतीत काही फरक पडत नाही . तुम्ही SELECT, सिलेक्ट किंवा सिलेक्ट लिहू शकता आणि सर्वकाही कार्य करेल. दुसरे म्हणजे, लाइन ब्रेक कोणत्याही प्रकारे विचारात घेतले जात नाहीत . DBMS तरीही क्वेरीला एका लांबलचक स्ट्रिंगमध्ये बदलेल, त्यामुळे तुम्ही ते तुम्हाला हवे तसे लिहू शकता.

जसे तुम्ही आधीच अंदाज लावला असेल, SELECT आणि FROM कीवर्ड मर्यादित नाहीत. अन्यथा एसक्यूएलच्या आसपास इतकी चर्चा झाली नसती. SQL क्वेरीचे विस्तारित दृश्य असे दिसते:

SELECT columns
FROM table
WHERE condition
GROUP BY columns
HAVING columns
ORDER BY sorting

कीवर्डच्या मदतीने WHEREतुम्ही निवडलेल्या पंक्तींसाठी कंडिशन/फिल्टर सेट करू शकता.

उदाहरण १ . चला एक क्वेरी लिहू जी "प्रोग्रामर" या व्यवसायासह कर्मचारी निवडेल:

SELECT * FROM employee WHERE occupation = 'Programmer'

आणि आम्हाला खालील क्वेरी परिणाम मिळतात:

आयडी नाव व्यवसाय पगार वय रुजू दिनांक
इव्हानोव्ह इव्हान प्रोग्रामर 100,000 २५ 2012-06-30
2 पेट्रोव्ह पेत्र प्रोग्रामर 80,000 23 2013-08-12

तुम्ही बघू शकता, क्वेरीच्या अंमलबजावणीच्या परिणामी, फक्त त्या पंक्ती प्रदर्शित केल्या जातात जेथे कर्मचा-यांचा व्यवसाय "प्रोग्रामर" म्हटले जाते.

कीवर्ड GROUP BY, ORDER BYआणि HAVINGआम्ही पुढील व्याख्यानांमध्ये कव्हर करू. आणि यामध्ये आपण WHERE या शब्दासह आणखी काही उदाहरणांचे विश्लेषण करू.

उदाहरण २ . आता एक क्वेरी लिहूया जी 100K पेक्षा जास्त पगार असलेले सर्व कर्मचारी दर्शवेल. ते कसे दिसेल ते येथे आहे:

SELECT * FROM employee WHERE salary > 100000

आम्हाला खालील क्वेरी परिणाम मिळतात:

आयडी नाव व्यवसाय पगार वय रुजू दिनांक
4 राबिनोविच मोइशा दिग्दर्शक 200,000 35 2015-05-12

उदाहरण ३ . आता आणखी कठीण काहीतरी प्रयत्न करूया. 2015 मध्ये नियुक्त केलेले सर्व कर्मचारी कसे प्रदर्शित करायचे? आणि याप्रमाणे:

SELECT * FROM employee WHERE YEAR(join_date) = 2015

आम्हाला खालील क्वेरी परिणाम मिळतात:

आयडी नाव व्यवसाय पगार वय रुजू दिनांक
4 राबिनोविच मोइशा दिग्दर्शक 200,000 35 2015-05-12
किरिएन्को अनास्तासिया कार्यालय व्यवस्थापक 40,000 २५ 2015-10-10

या क्वेरीमध्‍ये, आम्‍ही एक विशेष फंक्‍शन वापरतो YEAR()जे आम्‍हाला तारखेवरून वर्ष काढण्‍याची आणि नंतर 2015 च्‍या संख्‍येशी तारखेच्‍या वर्षाची तुलना करू देते.

2.3 SQL क्वेरींमध्ये टिप्पण्या

आणि आणखी एक महत्त्वाचा मुद्दा म्हणजे SQL क्वेरींमधील टिप्पण्या. टिप्पण्या ही खूप उपयुक्त गोष्ट आहे. प्रथम, आपण त्यामध्ये स्पष्टीकरण आणि / किंवा आपल्या कल्पना लिहू शकता. दुसरे म्हणजे, टिप्पण्यांच्या मदतीने, आपण तुटलेला कोड अक्षम करू शकता. किंवा कोडच्या जुन्या आवृत्तीवर टिप्पणी द्या.

Java प्रमाणे SQL मध्ये सिंगल-लाइन आणि मल्टी-लाइन टिप्पण्या आहेत. शिवाय, एक मल्टी-लाइन टिप्पणी Java सारखी दिसते. त्याचे स्वरूप:


/*
 	comment text
 	comment text
 	comment text
*/
        

अर्थात, ते एका ओळीतही वापरले जाऊ शकते. उदाहरण:


/*comment text*/
        

जावा "//" प्रमाणे "सुरुवातीपासून ओळीच्या शेवटापर्यंत" टिप्पणीचा एक प्रकार देखील आहे. फक्त SQL मध्ये तुम्हाला दोन वजा अक्षरे आणि एक जागा लिहायची आहे . अशा टिप्पणीचे सामान्य दृश्यः

-- comment text

उदाहरण:


        SELECT * FROM employee -- WHERE YEAR(join_date) = 2015 
        

वरील उदाहरणात, आम्ही क्वेरी स्थितीवर टिप्पणी केली आहे, म्हणून MySQL फक्त क्वेरी कार्यान्वित करेल:

SELECT * FROM employee

2.4 SQL उच्चारण

जर तुम्ही परदेशी ग्राहकांशी संवाद साधत असाल किंवा अमेरिकन कंपनीसाठी ऑनलाइन मुलाखत पास करत असाल तर तुम्हाला सिक्वेल भाषेतील तुमच्या अनुभवाबद्दल विचारले जाईल . तुम्ही प्रामाणिकपणे सांगाल की तुम्ही त्याच्यासोबत काम केले नाही आणि लगेचच मुलाखतीपासून दूर गेलात.

आणि गोष्ट अशी आहे की एसक्यूएल भाषेला मूळतः SEQUEL म्हटले जात होते, ज्याचा उच्चार सिक्वेल (ˈsēkwəl) सारखा केला जातो, म्हणून यूएसए आणि इतर इंग्रजी-भाषेतील स्त्रोतांमध्ये तुम्हाला "एस्क्युएल" नाही तर "सिक्वेल" ऐकू येईल. एसक्यूएल लिहिले आहे, आणि सिक्वेल वाचला आहे. असा ऐतिहासिक विरोधाभास येथे आहे.