Get the most accurate RBSE Solutions for Class 12 Computer Science Chapter 14 रिलेशनल डाटाबेस की अवधारणायें here. Updated for the 2026-27 academic session, these solutions are based on the latest RBSE textbooks for Class 12 Computer Science. Our expert-created answers for Class 12 Computer Science are available for free download in PDF format.
Detailed Chapter 14 रिलेशनल डाटाबेस की अवधारणायें RBSE Solutions for Class 12 Computer Science
For Class 12 students, solving RBSE textbook questions is the most effective way to build a strong conceptual foundation. Our Class 12 Computer Science solutions follow a detailed, step-by-step approach to ensure you understand the logic behind every answer. Practicing these Chapter 14 रिलेशनल डाटाबेस की अवधारणायें solutions will improve your exam performance.
Class 12 Computer Science Chapter 14 रिलेशनल डाटाबेस की अवधारणायें RBSE Solutions PDF
RBSE Class 12 Computer Science Chapter 14 रिलेशनल डाटाबेस की अवधारणायें
RBSE Class 12 Computer Science Chapter 14 पाठ्यपुस्तक के प्रश्न
RBSE Class 12 Computer Science Chapter 14 वस्तुनिष्ठ प्रश्न
Question 1. ये एक SQL खण्ड नहीं है
(अ) Select
(ब) From
(स) Where
(द) Condition
Answer: (द) Condition
In simple words: SQL में 'Select', 'From', और 'Where' जैसे हिस्से होते हैं, लेकिन 'Condition' कोई SQL खंड नहीं है।
🎯 Exam Tip: याद रखें कि SQL में ‘Select’, ‘From’, ‘Where’, ‘Group By’, ‘Having’, और ‘Order By’ जैसे clause मुख्य खंड होते हैं।
Question 2. SQL का पूर्ण रूप है
(स) Structure Query Language
Answer: (स) Structure Query Language
In simple words: SQL का मतलब 'स्ट्रक्चर्ड क्वेरी लैंग्वेज' है। यह कंप्यूटर को डेटाबेस से बात करने और जानकारी मांगने का तरीका है।
🎯 Exam Tip: SQL का पूरा नाम याद रखना महत्वपूर्ण है क्योंकि यह डेटाबेस प्रबंधन में एक मूलभूत अवधारणा है।
Question 3. DDL केलिए है
(अ) डेटा डेफिनेशन लैंग्वेज
(स) डेटा डेटा लेंग्वेज
(ब) डबल डेटा लैंग्वेज
(द) इनमें से कोई नहीं
Answer: (अ) डेटा डेफिनेशन लैंग्वेज
In simple words: DDL का अर्थ 'डेटा डेफिनेशन लैंग्वेज' है। यह डेटाबेस में टेबल और संरचना बनाने या बदलने के लिए उपयोग होती है।
🎯 Exam Tip: DDL का उपयोग डेटाबेस की संरचना को परिभाषित करने के लिए किया जाता है, जैसे टेबल बनाना या हटाना।
Question 4. Count() है एक
(अ) स्ट्रिंग फंक्शन
(ब) सांख्यिक फंक्शन
(स) दोनों
(द) मौजूद नहीं
Answer: (ब) सांख्यिक फंक्शन
In simple words: Count() एक सांख्यिक फंक्शन है जो किसी ग्रुप में डेटा की संख्या गिनने के काम आता है।
🎯 Exam Tip: Aggregate functions जैसे COUNT(), SUM(), AVG(), MIN(), MAX() डेटा के समूहों पर काम करते हैं और एक सिंगल वैल्यू देते हैं।
Question 5. Like ऑपरेटर के लिए उपयोग किया जाता है, जैसे
(अ) Concatenating strings
(ब) Count string character
(स) String matching
(द) All
Answer: (स) String matching
In simple words: 'Like' ऑपरेटर का उपयोग तब किया जाता है जब हमें किसी टेक्स्ट या स्ट्रिंग के एक खास पैटर्न को ढूंढना होता है।
🎯 Exam Tip: 'LIKE' ऑपरेटर में '%' और '_' वाइल्डकार्ड कैरेक्टर का उपयोग पैटर्न मैचिंग के लिए किया जाता है। '%' किसी भी संख्या में कैरेक्टर के लिए और '_' सिंगल कैरेक्टर के लिए होता है।
RBSE Class 12 Computer Science Chapter 14 अतिलघु उत्तरीय प्रश्न
Question 1. SQL क्या है?
Answer: FROM clause में हम उन रिलेशन का नाम लिखते हैं जिनका उपयोग हमें क्वेरी में करना है। FROM clause में लिखे गए रिलेशन का Cartesian product बनता है।
In simple words: SQL एक खास भाषा है जिसका उपयोग डेटाबेस से जानकारी प्राप्त करने, बदलने या डेटाबेस की संरचना को मैनेज करने के लिए किया जाता है।
🎯 Exam Tip: SQL (Structured Query Language) डेटाबेस प्रबंधन के लिए एक मानक भाषा है, जिसका उपयोग डेटा बनाने, पढ़ने, अपडेट करने और हटाने के लिए होता है।
Question 3. SQL select clause का महत्त्व क्या है?
Answer: SELECT clause में हम उन एट्रीब्यूट को लिखते हैं जो हमें हमारे आउटपुट रिलेशन में चाहिए।
In simple words: SELECT clause हमें बताता है कि डेटाबेस से कौन सी जानकारी (कॉलम) दिखानी है।
🎯 Exam Tip: SELECT clause किसी क्वेरी का सबसे बुनियादी हिस्सा होता है और यह निर्धारित करता है कि कौन से कॉलम (एट्रीब्यूट) परिणाम में शामिल किए जाएंगे।
Question 4. SQL के प्रकार का नाम दें।
Answer: SQL के निम्न प्रकार हैं
• डेटा डेफिनेशन लैंग्वेज (Data Definition Language)
• डेटा मैनिपुलेशन लैंग्वेज (Data Manipulation Language)
• डेटा कंट्रोल लैंग्वेज (Data Control Language)
In simple words: SQL तीन मुख्य तरह का होता है: DDL (जो डेटाबेस की बनावट बनाता है), DML (जो डेटा को बदलता है), और DCL (जो डेटा तक पहुँच को कंट्रोल करता है)।
🎯 Exam Tip: DDL, DML और DCL SQL के प्रमुख घटक हैं, और इनके विभिन्न कमांड्स का उपयोग डेटाबेस प्रबंधन के विभिन्न पहलुओं को संभालने के लिए किया जाता है।
Question 5. अद्वितीय और प्राथमिक बाधाओं के बीच क्या अन्तर है?
Answer: अद्वितीय बाधा (Unique Constraint) और प्राथमिक बाधा (Primary constraint) में अंतर यह है कि Unique Constraint यह सुनिश्चित करता है कि कॉलम के सभी मान अलग-अलग हों। दोनों अद्वितीय और प्राथमिक बाधाएँ कॉलम के सेट के लिए विशिष्टता की गारंटी देती हैं। एक प्राथमिक बाधा स्वचालित रूप से एक अद्वितीय बाधा होती है।
एक टेबल पर कई अद्वितीय बाधाएँ लगाई जा सकती हैं, लेकिन प्राथमिक बाधा सिर्फ एक टेबल पर एक ही लगाई जाती है।
In simple words: 'यूनिक' बाधा पक्का करती है कि कोई भी मान दोहराया न जाए, जबकि 'प्राइमरी' बाधा भी यही करती है, लेकिन यह टेबल को पहचानने में खास होती है और एक टेबल में सिर्फ एक ही हो सकती है।
🎯 Exam Tip: Primary Key एक Unique Constraint है, लेकिन सभी Unique Constraints Primary Key नहीं होते हैं। Primary Key Null मान स्वीकार नहीं करती, जबकि Unique Constraint Null मान स्वीकार कर सकता है (एक Null मान को Unique माना जाता है)।
Question 6. डेटाबेस instances को परिभाषित कीजिए।
Answer: किसी डेटाबेस में समय के किसी भी क्षण डेटा के समूह को डेटाबेस इन्स्टेन्स कहते हैं। उदाहरण के लिए, एक student टेबल student डेटाबेस का एक इन्सटेन्स है।
In simple words: डेटाबेस इन्स्टेन्स का मतलब है कि किसी खास समय पर डेटाबेस में मौजूद सभी जानकारी।
🎯 Exam Tip: एक डेटाबेस इन्सटेन्स डेटाबेस का एक स्नैपशॉट होता है, जो किसी भी समय डेटाबेस में संग्रहित सभी डेटा को दर्शाता है।
Question 8. SQL में NULL क्या है?
Answer: एक फील्ड में NULL मान का मतलब है कि उस फील्ड में कोई मान नहीं है। अगर एक फील्ड किसी टेबल में वैकल्पिक (optional) है, तो इस फील्ड में एक नया रिकॉर्ड सम्मिलित करना या अपडेट करना संभव है। फिर फील्ड को NULL मान के साथ सहेजा (Save) जाएगा।
In simple words: SQL में NULL का मतलब है कि किसी जानकारी का कोई मान नहीं है, यह खाली या अननोन है।
🎯 Exam Tip: NULL किसी भी डेटा टाइप का मान नहीं होता है, बल्कि यह 'कोई मान नहीं' या 'अननोन' को दर्शाता है। NULL मानों की तुलना कभी भी बराबर या असमान के रूप में नहीं की जा सकती।
Question 9. आप Aggregate फंक्शन द्वारा क्या समझते हो?
Answer: Aggregate फंक्शन MySQL में इनपुट के तौर पर मानों का संग्रह लेते हैं और आउटपुट में एक सिंगल मान देते हैं। MySQL में निम्न 5 प्रकार के Built in Aggregate फंक्शन होते हैं:
AVERAGE : Avg ()
MAXIMUM : Max()
MINIMUM : Min ()
TOTAL : Sumo COUNT_Count ()
In simple words: एग्रीगेट फंक्शन वे फंक्शन होते हैं जो डेटा के एक समूह पर काम करते हैं और एक सिंगल नतीजा देते हैं, जैसे कुल संख्या, औसत, सबसे बड़ा या सबसे छोटा मान।
🎯 Exam Tip: Aggregate functions अक्सर GROUP BY clause के साथ उपयोग किए जाते हैं, ताकि डेटा को समूहों में विभाजित करके हर समूह के लिए एक एकल मान निकाला जा सके।
Question 10. हम SQL grant कमाण्ड का उपयोग क्यों करते हैं?
Answer: रिलेशनल डेटाबेस में एक यूजर द्वारा बनाए गए ऑब्जेक्ट को दूसरे यूजर तक तब तक नहीं पहुँचाया जा सकता जब तक उसे बनाने वाला यूजर दूसरे यूजर को इसकी सहमति न दे। यह सहमति (permission) GRANT कमांड के उपयोग द्वारा दी जा सकती है।
In simple words: GRANT कमांड का उपयोग डेटाबेस में किसी यूजर को कोई काम करने की इजाजत देने के लिए किया जाता है, जैसे किसी टेबल को देखना या बदलना।
🎯 Exam Tip: GRANT कमांड डेटाबेस सुरक्षा का एक महत्वपूर्ण हिस्सा है, जो यह नियंत्रित करता है कि कौन से उपयोगकर्ता किन डेटाबेस ऑब्जेक्ट्स पर कौन सी कार्रवाई कर सकते हैं।
RBSE Class 12 Computer Science Chapter 14 लघु उत्तरीय प्रश्न
Question 2. विभिन्न DML कमाण्ड क्या हैं? उनके लिए Syntax's दें।
Answer: SQL DML कमांड निम्नलिखित हैं:
(i) INSERT
(ii) DELETE
(iii) UPDATE
(iv) SELECT
(i) INSERT कमांड - CREATE TABLE कमांड का उपयोग करके किसी टेबल को बनाने पर एक खाली टेबल बनती है, जिसका अर्थ है कि उस टेबल में कोई मान या रिकॉर्ड नहीं होता है। किसी टेबल में रिकॉर्ड या डेटा डालने के लिए हम SQL INSERT INTO कमांड का उपयोग करते हैं।
My SQL Syntax
INSERT INTO
Table_Name (Column_Name 1, Column_Name 2, ....,Column_Name n) VALUES (Value 1, value 2,....value n);
स्ट्रिंग प्रकार के डेटा के लिए सभी मानों को सिंगल या डबल quotes (" ") में लिखें।
(ii) SQL DELETE कमांड - DELETE कमांड द्वारा हम एक पूरा टपल DELETE करते हैं। इसके द्वारा हम किसी एट्रीब्यूट के मान को DELETE नहीं कर सकते हैं।
Syntax:
In simple words: DML कमांड डेटाबेस में डेटा को बदलने के लिए होते हैं। INSERT डेटा डालने, DELETE डेटा हटाने, UPDATE डेटा बदलने और SELECT डेटा देखने के लिए उपयोग होते हैं।
🎯 Exam Tip: DML कमांड डेटा को मैनेज करने के लिए हैं, जबकि DDL कमांड डेटाबेस की संरचना को मैनेज करने के लिए हैं। दोनों के बीच के अंतर को समझना महत्वपूर्ण है।
Question 3. फोरेन key क्या है? हम किसी टेबल में एक फोरेन key कैसे बनाते हैं?
Answer: फोरेन की (Foreign key) इंटीग्रिटी कंस्ट्रेंट्स - ये कंस्ट्रेंट्स यह सुनिश्चित करते हैं कि एक टेबल में एक कॉलम या कॉलम का सेट किसी दूसरी टेबल के प्राइमरी की कॉलम या सेट से मिलता जुलता हो। यह दो टेबल के बीच संबंध बनाता है।
एक फोरेन की बनाने के लिए, उस कॉलम को परिभाषित करें जो दूसरी टेबल की प्राइमरी की को संदर्भित करता है।
| Roll_No | Name | Age | Address | Class |
|---|---|---|---|---|
| 120 | Ronak | 14 | Udaipur | 8th |
| 135 | Shanker | 13 | Jaipur | 7th |
| Class_name | Class_room | Strength |
|---|---|---|
| 12th | F-1 | 95 |
| 10th | F-2 | 80 |
| 9th | F-3 | 70 |
| 4th | F4 | 110 |
चित्र 1 : फोरेन की स्टूडेन्ट रिलेशन टेबल
उपरोक्त टेबल में Student टेबल की प्राइमरी की Roll_no है, जबकि Classes टेबल की प्राइमरी की Class_name है। यहाँ हमने माना है कि सभी स्टूडेंट की एक ही क्लास है, जैसे कि 12th की एक क्लास, 10th की एक क्लास, 9th की एक क्लास, आदि। इसलिए classes टेबल की प्राइमरी की Class_name है।
Student टेबल अपने एट्रीब्यूट (Roll_no, address, age, name, class) के बीच में एक ऐसा एट्रीब्यूट भी रखता है जो किसी अन्य टेबल की प्राइमरी key है। उदाहरण के लिए Student टेबल में Class एट्रीब्यूट Classes टेबल की प्राइमरी Key है। अतः Student टेबल में इस एट्रीब्यूट class को हम इस टेबल की primary key कहेंगे, जो Classes टेबल को रेफर करेगी।
रिलेशन Student टेबल को हम रेफ्रेंसिंग कहेंगे, जबकि Classes को रेफ्रेंसड रिलेशन ऑफ फोरेन key कहेंगे। किसी एट्रीब्यूट को primary key होने के लिए उसका डोमेन वही होना चाहिए जो दूसरे रिलेशन के एट्रीब्यूट का है, तथा foreign key में एट्रीब्यूट की संख्या भी दूसरे रिलेशन के एट्रीब्यूट के बराबर होनी चाहिए, अर्थात वे कॉम्पेटिबल होने चाहिए।
In simple words: फॉरेन की एक कॉलम होता है जो एक टेबल में दूसरी टेबल की प्राइमरी की से जुड़ता है। यह दो टेबल के बीच संबंध बनाने में मदद करता है।
🎯 Exam Tip: फॉरेन की referential integrity को बनाए रखने में मदद करती है, यह सुनिश्चित करती है कि संबंधित डेटा दोनों तालिकाओं में सुसंगत हो।
Question 4. SQL के group by clause का उपयोग उदाहरण के द्वारा समझाओ।
Answer: SQL GROUP BY clause MySQL का एक बहुत उपयोगी clause है। इस clause का उपयोग करके कई महत्वपूर्ण क्वेरी लिखी जा सकती हैं। GROUP BY clause किसी कॉलम या कॉलम के सेट की वैल्यूज का एक समूह बना सकता है। इसका मतलब है कि clause में दिए गए एट्रीब्यूट का उपयोग समूहों (GROUP) को बनाने के लिए किया जाता है। GROUP BY clause में दिए गए एट्रीब्यूट या एट्रीब्यूट की वैल्यूज जिन टपल्स या पंक्तियों के लिए समान हैं, वे सभी टपल्स या पंक्तियाँ एक समूह में आएंगी।
GROUP BY clause को समझने के लिए हम एक उदाहरण देखते हैं। इसके लिए Student टेबल को लेते हैं, जिसमें किसी क्षण निम्न रिकॉर्ड्स हैं:
| Roll No | Name | Age | Address | Class |
|---|---|---|---|---|
| 21 | Om | 21 | Ajmer | 12th |
| 51 | Mayank | 15 | Ajmer | 9th |
| 90 | Anju | 18 | Ajmer | 11th |
| 53 | Suman | 12 | Ajmer | 10th |
| 64 | Kamal | 10 | Kota | 4th |
| 500 | Komal | 16 | Udaipur | 9th |
| 700 | Aryabhatt | 11 | Jaipur | 7th |
| 900 | Bodhayan | 13 | Jodhpur | 8th |
चित्र: Student table
उदाहरण
क्वेरी – प्रत्येक Class में पढ़ने वाले छात्रों की संख्या बताएँ।
अगर हम यह क्वेरी इस प्रकार से लिखेंगे तो परिणाम गलत प्राप्त होगा।
MySQL>SELECT Count(*) FROM Student
Output->
| Count(*) |
|---|
| 12 |
क्योंकि इस Syntax के द्वारा कुल पढ़ने वाले छात्रों की संख्या प्राप्त होगी, अर्थात Student टेबल में जितने रिकॉर्ड उपलब्ध हैं, वही उस स्कूल में पढ़ने वाले छात्र हैं। अतः यह Syntax, Student टेबल में कुल कितने टपल हैं, उनकी संख्या देगा। सही परिणाम के लिए count aggregate फंक्शन के GROUP BY clause का उपयोग करना पड़ता है। जिसका Syntax निम्नानुसार है।
MySQL>SELECT Class, Count (Roll_No) FROM Student GROUP BY Class;
Student टेबल में समूह बनने के बाद, Student टेबल कुछ इस प्रकार दिखेगी क्योंकि GROUP BY clause में Class एट्रीब्यूट के द्वारा समूह बनाया जा रहा है। अतः एक समान Class वाली पंक्तियाँ एक समूह में दिखेंगी।
| Class | Count (Roll_No) |
|---|---|
| 10th | 1 |
| 11th | 1 |
| 12th | 2 |
| 9th | 2 |
| 8th | 2 |
| 7th | 2 |
| 4th | 2 |
जिस कॉलम के द्वारा GROUP बनाया जाता है, उस कॉलम पर कोई calculation Count, Avg, Max, Min आदि aggregate function के द्वारा की जा सकती है। अतः इस क्वेरी में Count, aggregate फंक्शन को हर समूह के टपल के लिए, जिनकी Class एक समान है, लगाया गया है। क्योंकि SELECT clause में दो ही फील्ड हैं, अतः परिणाम निम्नानुसार प्राप्त होगा।
| Class | Count (Roll_No) |
|---|---|
| 10th | 1 |
| 11th | 1 |
| 12th | 2 |
| 9th | 2 |
| 8th | 2 |
| 7th | 2 |
| 4th | 2 |
In simple words: GROUP BY clause डेटा को एक या एक से ज़्यादा कॉलम के आधार पर छोटे-छोटे ग्रुप में बांट देता है। फिर हम हर ग्रुप के लिए औसत या संख्या जैसी चीजें निकाल सकते हैं।
🎯 Exam Tip: GROUP BY clause हमेशा SELECT clause के बाद और ORDER BY clause से पहले आता है। इसका उपयोग aggregate functions के साथ ही किया जाता है।
Question 5. Cartesian join और Natural join में क्या अन्तर है?
Answer: Cartesian join - SQL CROSS JOIN एक रिजल्ट सेट बनाता है जो पहली टेबल में पंक्तियों (rows) की संख्या को दूसरी टेबल में पंक्तियों (rows) की संख्या से गुणा करता है। अगर CROSS JOIN के साथ WHERE clause का उपयोग होता है, तो वह परिणाम को फ़िल्टर करता है।
एक Natural join Inner join, Left Outer join या Right outer join हो सकता है। डिफ़ॉल्ट रूप से Inner join होता है।
In simple words: Cartesian join दो टेबल के हर रो को दूसरे टेबल के हर रो से जोड़ देता है, जिससे बहुत सारे परिणाम मिलते हैं। Natural join सिर्फ उन रो को जोड़ता है जहाँ कॉमन कॉलम में मान एक जैसे होते हैं।
🎯 Exam Tip: Cartesian join तब होता है जब कोई JOIN condition नहीं दी जाती है, जबकि Natural join समान कॉलम नामों पर आधारित होता है और डुप्लीकेट कॉलम को हटा देता है।
RBSE Class 12 Computer Science Chapter 14 निबंधात्मक प्रश्न
Question 1. SQL Joins, टेबिल्स के उपयुक्त उदाहरण लेने के साथ समझाओ।
Answer: SQL JOIN - SQL के JOIN कीवर्ड का उपयोग दो या दो से अधिक टेबल से डेटा को क्वेरी करने के लिए होता है। ऑपरेशन दो रिलेशन को इनपुट के तौर पर लेते हैं और एक रिलेशन आउटपुट के तौर पर देते हैं। SQL में दो रिलेशन को JOIN करने के कई तरीके (mechanisms) हैं।
जैसे कि-
1. Cartesian product mechanism
2. Inner join
3. Outer join (left, right, full)
ऊपर दिए प्रत्येक join type के लिए एक Join condition भी जुड़ी हुई होती है। अतः एक Join expression इन दोनों (join type और join expression) से मिलकर बनती है जिसे हम FROM clause में उपयोग करते हैं। JOIN को समझने के लिए हम Student टेबल और Class टेबल जिसमें किसी क्षण निम्न रिकॉर्ड को लेते हैं।
| Class table | |||
|---|---|---|---|
| oul | 010 | F-10 | 85 |
| 7th | F-10 | 85 | |
| 6th | F-17 | 65 | |
| 5th | F-7 | 60 | |
| 4th | F-9 | 55 | |
| 3rd | F-8 | 50 | |
| 2nd | S-15 | 35 | |
| 1st | S-9 | 60 |
| Roll No | Name | Age | Address | Class |
|---|---|---|---|---|
| 1 | Ajay | 9 | Jaipur | 4th |
| 2 | Vijay | 17 | Kota | 12th |
| 10 | Hari | 11 | Udaipur | 7th |
| 17 | Shanker | 13 | Jaipur | 8th |
| 21 | Om | 21 | Ajmer | 12th |
| 51 | Mayank | 15 | Ajmer | 9th |
| 90 | Anju | 18 | Ajmer | 11th |
| 53 | Suman | 12 | Ajmer | 10th |
| 64 | Kamal | 10 | Kota | 4th |
| 500 | Komal | 16 | Udaipur | 9th |
| 700 | Aryabhatt | 11 | Jaipur | 7th |
| 900 | Bodhayan | 13 | Jodhpur | 8th |
Student टेबल और Class टेबल को JOIN करने के लिए एक क्वेरी लिखते हैं।
MySQL>SELECT Roll_No, Class, CStrength FROM Student AS St, Classes AS S, WHERE St. Class = S. Class_name;
इस क्वेरी में FROM clause में Student टेबल को RENAME करके St और Class को S किया गया है। इन दोनों रिलेशन का Cartesian product होगा जिसमें St टेबल के हर टपल का S टेबल के हर टपल से JOIN होगा। अतः प्राप्त रिलेशन में कुल टपल होंगे।
N1 N2 = 12 * 12 = 144
यहाँ N1 St टेबल में टपल की संख्या है और N2 S टेबल में टपल की संख्या है। यहाँ पर रिजल्ट टेबल में टपल प्राप्त होंगे जो WHERE clause की शर्तों को पूर्ण करने वाली ही होंगी।
OUTER JOIN आपरेशन – ये निम्न प्रकार के होते हैं।
1. LEFT OUTER JOIN
1. Natural
2. ON (Predicate)
3. Using (A1, A2, . . . An)
Left outer join और ON Join condition - Left Join को समझने के लिए निम्न दो टेबल लेते हैं।
| Classes | ||
|---|---|---|
| Class_name | C Room No | C Strength |
| 12th | F-11 | 90 |
| 9th | S-21 | 110 |
| 7th | F-10 | 85 |
| 4th | F-9 | 55 |
| Admission | ||
|---|---|---|
| Class_name | Roll No | admission_date |
| 12th | 79 | 2000/7/15 |
| 9th | 89 | 2010/8/13 |
| 6th | 69 | 2012/7/21 |
| 5th | 49 | 2013/7/03 |
Syntax:
Select Classes, Class_Name, Roll_No, CStrength From Classes Left Outer Join Admission on Classes. class_Name = Admission. Class_Name
यहाँ रिलेशन का नाम उसके एट्रीब्यूट के साथ लिखते हैं क्योंकि एक समान नाम का एट्रीब्यूट एक से ज्यादा रिलेशन में हैं। अतः अस्पष्टता (ambiguity) को दूर करने के लिए ऐसा किया है।
| Output | ||
|---|---|---|
| Class_name | Room No | C Strength |
| 12th | 79 | 90 |
| 9th | 89 | 110 |
| 7th | Null | 85 |
| 4th | Null | 55 |
Left Outer Join के रिजल्ट में दोनों रिलेशन के Matching tuples तथा Left वाले रिलेशन (classes) के unmatched tuples उपस्थित होते हैं।
Right Outer Join और on Join Condition
Syntax:
Classes Right Outer Join admission on classes. Class Name=Admission. Class_Name
Right Outer Join ऑपरेशन Left Outer Join के समान ही है। किन्तु इसमें Join operation के दाँयी (right) ओर वाले रिलेशन के unmatched tuples भी आते हैं। left रिलेशन के एट्रीप्यूट के लिए वेल्यू Null रखेंगे।
Full outer join और On condition
Syntax:
Classes full outer join admission on classes. Class_Name = Admission. Class_Name
| Class Name | CRoom No | CStrength | Class_Name | Roll No | Admission_date |
|---|---|---|---|---|---|
| 12th | F-11 | 90 | 12th | 79 | 2000/7/15 |
| 9th | S-12 | 110 | 9th | 89 | 2010/8/13 |
| 7th | F-10 | 85 | Null | Null | Null |
| 4th | F-9 | 55 | Null | Null | Null |
| Null | Null | Null | 6th | 69 | 2012/7/21 |
| Null | Null | Null | 5th | 49 | 2013/7/03 |
यहाँ दोनों रिलेशन के unmatched टपल भी आएंगे। साथ में दूसरे रिलेशन के unmatched टपल के लिए Null आएगा।
Outer Join और Natural Condition
दो रिलेशन का Natural Join करने पर उन टपल की संख्या उन रिलेशन में उपस्थित एक समान (common) एट्रीब्यूट के द्वारा प्राप्त होते हैं और common एट्रीब्यूट रिजल्ट रिलेशन में एक बार आते हैं। वह क्रम में सबसे पहले आते हैं।
उदाहरण-Classes Natural right outer join admission
| Class Name | CRoom No | CStrength | Roll No | Admission_date |
|---|---|---|---|---|
| 12th | F-11 | 90 | 79 | 2000/7/15 |
| 9th | S-12 | 110 | 89 | 2010/8/13 |
| 6th | Null | Null | 69 | 2012/7/21 |
| 5th | Null | Null | 49 | 2013/7/03 |
अन्य outer join भी Natural condition शर्त के लिए ऊपर दिए अनुसार हम प्राप्त कर सकते हैं।
Inner join-
उदाहरण
Classes inner Join Admission on Classes. Class_Name=Admission. Class_Name;
| Class Name | CRoom No | CStrength | Class Name | Roll No | dmission_date |
|---|---|---|---|---|---|
| 12th | F-11 | 90 | 12th | 79 | 2000/7/15 |
| 9th | S-12 | 110 | 9th | 89 | 2010/8/13 |
यहाँ केवल एक ही एट्रीब्यूट दोनों रिलेशन में समान है। अतः Join केवल उस ही एट्रीब्यूट के द्वारा होगा।
In simple words: SQL Joins हमें अलग-अलग टेबल्स से जानकारी को एक साथ लाने में मदद करते हैं। इनर जॉइन केवल मिलती-जुलती एंट्रीज को दिखाता है, जबकि आउटर जॉइन मिलती-जुलती और न मिलती-जुलती दोनों एंट्रीज को दिखाता है।
🎯 Exam Tip: Joins डेटाबेस में रिलेशनल मॉडल की नींव हैं। विभिन्न प्रकार के Joins (INNER, LEFT, RIGHT, FULL) और उनके उपयोग के मामलों को समझना महत्वपूर्ण है।
Question 2. Aggregate फंक्शन क्या है? हम aggregate फंक्शन का उपयोग कैसे करें? प्रत्येक का एक उदाहरण दें।
Answer: Aggregate फंक्शन - MySQL में Aggregate फंक्शन इनपुट के तौर पर मानों का संग्रह लेते हैं और आउटपुट में एक सिंगल मान देते हैं। MySQL में निम्न 5 प्रकार के built in Aggregate फंक्शन होते हैं।
AVERAGE: Avg ()
MAXIMUM: Max ()
MINIMUM: Min()
TOTAL: Sum ()
COUNT: Count ()
यहाँ Sum एवं Average फंक्शन की इनपुट वैल्यूज आवश्यक रूप से नंबर होने चाहिए। जबकि दुसरे ऑपरेटर्स, स्ट्रिंग के ऊपर भी काम कर सकते हैं।
Avg () function फंक्शन – यह फंक्शन टेबल के किसी फील्ड की वैल्यूज का औसत निकालने के उपयोग में आता है।
उदाहरण-
MySQL>SELECT Avg (Salary) FROM Teacher;
Output->
| Avg (Salary) |
|---|
| 14250.0000 |
ऊपर दिए उदाहरण में Average फंक्शन Salary फील्ड में वैल्यूज का औसत रिटर्न करता है।
Sum () Function फंक्शन – यह फंक्शन किसी फील्ड की सभी वैल्यूज का Sum देता है।
उदाहरण-
MySQL>SELECT Sum (Salary) FROM Teacher;
OUTPUT->
| Sum (Salary) |
|---|
| 57000 |
Min () function फंक्शन – यह फंक्शन निम्नतम वैल्यू वाला रिकॉर्ड देता है।
उदाहरण-
MySQL>SELECT Min (Salary) FROM Teacher
Output->
| Min (Salary) |
|---|
| 3000 |
Count () function फंक्शन – यह फंक्शन टेबल में रिकॉर्ड की संख्या गणना के लिए काम में आता है। अर्थात रिकॉर्ड्स की कुल संख्या पता करने के काम आता है। (counting the number of records)
उदाहरण-
SELECT Count(*) FROM Student
Output->
| Count (*) |
|---|
| 4 |
उदाहरण-
SELECT Count(*) FROM Student WHERE Class="9th"
Output->
| Count (*) |
|---|
| 2 |
In simple words: एग्रीगेट फंक्शन डेटा के ग्रुप पर काम करके एक सिंगल रिजल्ट देते हैं, जैसे COUNT (गिनना), SUM (जोड़ना), AVG (औसत निकालना), MAX (सबसे बड़ा मान), और MIN (सबसे छोटा मान)।
🎯 Exam Tip: एग्रीगेट फंक्शन का उपयोग डेटा समूहन और रिपोर्टिंग के लिए किया जाता है, और ये डेटा का सार संक्षेप में प्रस्तुत करने के लिए बहुत उपयोगी होते हैं।
Question 3. किसी एकल SQL क्वेरी में Where, group by और having clause के उपयोग की व्याख्या करें। एक उपयुक्त उदाहरण दें।
Answer: SQL क्वेरी में WHERE, GROUP BY और HAVING क्लॉज का उपयोग डेटा को खास तरीके से चुनने और ग्रुप बनाने के लिए किया जाता है।
WHERE Clause:
यह क्लॉज किसी टेबल से डेटा को निकालते समय व्यक्तिगत रिकॉर्ड्स पर शर्तें (conditions) लगाने के लिए इस्तेमाल होता है। यह सिर्फ उन पंक्तियों को चुनता है जो दी गई शर्त को पूरा करती हैं। यह GROUP BY से पहले काम करता है।
GROUP BY Clause:
यह क्लॉज किसी एक या एक से अधिक कॉलम के मानों के आधार पर डेटा को छोटे-छोटे ग्रुप में बांटने के लिए उपयोग होता है। इन ग्रुप्स पर फिर Count, Sum, Avg, Max, Min जैसे फ़ंक्शन चलाए जा सकते हैं। उदाहरण के लिए, यह उन रिकॉर्ड्स को एक साथ लाता है जिनकी Class एक जैसी होती है। इससे हम हर ग्रुप के लिए अलग-अलग गणना कर पाते हैं।
उदाहरण:
यदि हम Student टेबल में प्रत्येक क्लास के छात्रों की संख्या जानना चाहते हैं:MySQL> SELECT Class, Count(Roll_No) FROM Student GROUP BY Class;
इस क्वेरी का आउटपुट कुछ ऐसा दिखेगा:
| Class | Count (Roll_No) |
|---|---|
| 10th | 1 |
| 11th | 1 |
| 12th | 2 |
| 9th | 2 |
| 8th | 2 |
| 7th | 2 |
| 4th | 2 |
HAVING Clause:
यह क्लॉज GROUP BY द्वारा बनाए गए ग्रुप्स पर शर्तें लगाने के लिए उपयोग होता है। यह WHERE क्लॉज की तरह काम करता है, लेकिन यह ग्रुप्स पर लागू होता है, व्यक्तिगत रिकॉर्ड्स पर नहीं। यह अक्सर Count, Sum, Avg जैसे एग्रीगेट फ़ंक्शन के साथ उपयोग होता है।
उदाहरण:
यदि हम सिर्फ उन क्लासों के नाम जानना चाहते हैं जिनमें पढ़ने वाले छात्रों की संख्या 1 से अधिक है:MySQL> SELECT Class, Count(Roll_No) FROM Student GROUP BY Class HAVING Count(Roll_No)>1;
इस क्वेरी का आउटपुट कुछ ऐसा दिखेगा:
| Class | Count (Roll_No) |
|---|---|
| 12th | 2 |
| 9th | 2 |
| 8th | 2 |
| 7th | 2 |
| 4th | 2 |
In simple words: WHERE क्लॉज सीधे रिकॉर्ड्स पर फिल्टर करता है, GROUP BY समान रिकॉर्ड्स को समूह में रखता है, और HAVING क्लॉज उन समूहों पर फिल्टर लगाता है जो GROUP BY ने बनाए हैं।
🎯 Exam Tip: WHERE क्लॉज पहले चलता है (रिकॉर्ड फिल्टर करने के लिए), फिर GROUP BY (ग्रुप बनाने के लिए), और अंत में HAVING क्लॉज (ग्रुप्स को फिल्टर करने के लिए).
Question 4. दिए गए स्कीमा पर विचार करें।
students (Roll_no, Sname, age, phone, address, class)
Classes (Class_name, CRoom_No, CStrength)
और निम्न के लिए कोई SQL सिंटैक्स लिखें।
(1) कमरा नंबर F-12 में बैठे 5 वी class के छात्रों का नाम का पता लगाएँ।
(2) अजमेर में रहने वाले 10 वीं कक्षा के छात्रों की संख्या का पता लगाएँ।
Answer:
(1) कमरा नंबर F-12 में बैठे 5वीं क्लास के छात्रों का नाम और पता खोजने के लिए SQL सिंटैक्स:SELECT Sname, address FROM Students, Classes WHERE Classes.CRoom_No = 'F-12' AND Students.class = 5;
(2) अजमेर में रहने वाले 10वीं कक्षा के छात्रों की संख्या जानने के लिए SQL सिंटैक्स:SELECT Count(Sname) FROM Students WHERE class = 10 AND address = 'Ajmer';
In simple words: पहले प्रश्न के लिए, हमें छात्रों का नाम और पता चाहिए जो क्लास 5 में हैं और क्लास F-12 रूम में पढ़ते हैं। दूसरे प्रश्न के लिए, हमें उन छात्रों की गिनती चाहिए जो क्लास 10 में हैं और अजमेर में रहते हैं।
🎯 Exam Tip: सुनिश्चित करें कि आप JOIN conditions को सही ढंग से लिखें, खासकर जब मल्टीपल टेबल्स का उपयोग कर रहे हों। String values को हमेशा Single quotes (') में लिखें।
Question 5. उप क्वेरीज (Sub queries) द्वारा आपका क्या मतलब है? उप क्वेरीज क्यों उपयोगी होती है? सेट comparison में उप क्वेरी का उपयोग कैसे होता है, उदाहरण सहित समझाएँ।
Answer:
उप क्वेरीज (Subqueries):
एक उप क्वेरी (जिसे नेस्टेड क्वेरी या इनर क्वेरी भी कहते हैं) एक SQL क्वेरी होती है जो दूसरी SQL क्वेरी के अंदर होती है। इनर क्वेरी पहले चलती है और उसका रिजल्ट आउटर क्वेरी के लिए इनपुट के रूप में इस्तेमाल होता है। यह एक वेल्यू को दूसरे वेल्यू से कंपेयर करने के लिए Comparison ऑपरेटर (जैसे =, >=, <=) का उपयोग करती हैं।
उपयोगिता:
उप क्वेरीज बहुत उपयोगी होती हैं जब हमें जटिल शर्तें (complex conditions) लगानी हों या जब हमें किसी एक क्वेरी के रिजल्ट का उपयोग दूसरी क्वेरी में करना हो। यह डेटा को एक साथ कई फिल्टर लगाने या एक डेटा सेट को दूसरे डेटा सेट से तुलना करने में मदद करती हैं।
सेट Comparison में उप क्वेरी:
सेट comparison में उप क्वेरी का उपयोग तब होता है जब हमें एक वैल्यू को किसी सेट की वैल्यूज से कंपेयर करना होता है। इसके लिए हम `IN`, `NOT IN`, `ANY`, `ALL`, `EXISTS` जैसे ऑपरेटर्स का उपयोग करते हैं।
उदाहरण:
मान लीजिए हमें उन छात्रों के रोल नंबर खोजने हैं जो उन क्लासों में हैं जिनकी जानकारी 'Classes' टेबल में मौजूद है।SELECT Roll_No FROM Student WHERE Class IN (SELECT Class_name FROM Classes);
एक और उदाहरण के लिए, मान लीजिए हमें Teacher टेबल से उन टीचर्स के नाम और सैलरी चाहिए जिनकी सैलरी सबसे ज़्यादा है:SELECT Tname, Salary FROM Teacher WHERE Salary = (SELECT Max(Salary) FROM Teacher);
इस क्वेरी का आउटपुट होगा:
| Tname | Salary |
|---|---|
| Hariom | 40000 |
और उन टीचर्स के नाम जिनकी सैलरी औसत सैलरी से कम है:SELECT Tname, Salary FROM Teacher WHERE Salary < (SELECT Avg(Salary) FROM Teacher);
इस क्वेरी का आउटपुट होगा:
| Tname | Salary |
|---|---|
| Radha Krishnan | 3000 |
| Rajesh | 5000 |
In simple words: उप क्वेरी एक क्वेरी के अंदर दूसरी क्वेरी होती है। यह मुश्किल सवालों के जवाब देने में मदद करती है, जैसे "सबसे ज़्यादा सैलरी वाले व्यक्ति को ढूँढो" या "उन सभी छात्रों को ढूँढो जो पास हुए हैं।"
🎯 Exam Tip: याद रखें कि इनर क्वेरी पहले चलती है और उसका रिजल्ट आउटर क्वेरी द्वारा उपयोग किया जाता है। `IN` और `NOT IN` ऑपरेटर्स सेट comparisons के लिए सबसे आम हैं।
RBSE Class 12 Computer Science Chapter 14 अन्य महत्त्वपूर्ण प्रश्न
RBSE Class 12 Computer Science Chapter 14 अतिलघु उत्तरीय प्रश्न
Question 1. टेबल से आप क्या समझते हैं?
Answer: RDBMS (रिलेशनल डाटाबेस मैनेजमेंट सिस्टम) में डेटा एक खास ऑब्जेक्ट में स्टोर होता है जिसे टेबल कहते हैं। दूसरे शब्दों में, एक टेबल संबंधित डेटा एंट्रीज का संग्रह होती है जिसमें पंक्तियाँ (rows) और स्तंभ (columns) होते हैं। यह डेटा को एक व्यवस्थित तरीके से स्टोर करने का एक तरीका है।
In simple words: टेबल डेटा को पंक्तियों और स्तंभों में स्टोर करने का एक तरीका है, जैसे एक स्प्रेडशीट।
🎯 Exam Tip: टेबल को डेटाबेस की बुनियादी संरचना मानें, क्योंकि सभी डेटा इसी में स्टोर होता है।
Question 3. रिकॉर्ड (Record) क्या होता है?
Answer: रिकॉर्ड को टेबल की पंक्ति (row) भी कहते हैं। यह टेबल में किसी एक व्यक्ति या चीज़ की पूरी जानकारी होती है। हर रिकॉर्ड एक अलग एंट्री को दर्शाता है।
In simple words: रिकॉर्ड टेबल की एक पंक्ति है, जिसमें किसी एक चीज़ की पूरी जानकारी होती है।
🎯 Exam Tip: याद रखें कि एक रिकॉर्ड एक ही इकाई के सभी संबंधित डेटा को दर्शाता है।
Question 4. स्तम्भ से आप क्या समझते हैं?
Answer: स्तंभ को कॉलम भी कहते हैं। यह किसी टेबल की एक सीधी (vertical) एंट्री होती है जो किसी खास फील्ड से जुड़ी सारी जानकारी रखती है। उदाहरण के लिए, 'नाम' एक स्तंभ हो सकता है जिसमें सभी व्यक्तियों के नाम हों।
In simple words: स्तंभ टेबल का एक कॉलम होता है, जिसमें एक ही तरह की जानकारी होती है (जैसे, सभी के नाम)।
🎯 Exam Tip: प्रत्येक स्तंभ का एक डेटा टाइप होता है जो उसमें स्टोर किए जा सकने वाले डेटा के प्रकार को परिभाषित करता है।
Question 5. डोमेन की परिभाषा बताइए।
Answer: किसी फील्ड के लिए अनुमत (permitted) मानों के समूह को उसका डोमेन (Domain) कहते हैं। जैसे, 'नाम' फील्ड का डोमेन सभी संभव नामों का सेट हो सकता है, या 'उम्र' फील्ड का डोमेन 0 से 150 तक की संख्याएँ हो सकती हैं।
In simple words: डोमेन उन सभी मानों की सूची है जो एक कॉलम में आ सकते हैं।
🎯 Exam Tip: डोमेन डेटा की शुद्धता और वैधता सुनिश्चित करने में मदद करता है।
Question 6. डाटाबेस स्कीमा से आप क्या समझते हैं?
Answer: डाटाबेस स्कीमा (Database Schema) किसी डाटाबेस का लॉजिकल डिज़ाइन है। यह बताता है कि डेटा को कैसे व्यवस्थित किया जाता है, विभिन्न टेबल कैसे संबंधित हैं और उन पर कौन से नियम लागू होते हैं। यह आमतौर पर नहीं बदलता है।
In simple words: डाटाबेस स्कीमा डाटाबेस का पूरा डिज़ाइन या ब्लूप्रिंट है, जिसमें टेबल्स और उनके संबंध शामिल हैं।
🎯 Exam Tip: स्कीमा डाटाबेस की संरचना को समझने और बनाए रखने के लिए महत्वपूर्ण है।
Question 7. डेटा डेफीनेशन लैंग्वेज के विषय में बताइए।
Answer: डेटा डेफीनेशन लैंग्वेज (DDL) SQL का एक हिस्सा है जिसका उपयोग डाटाबेस स्कीमा को परिभाषित करने या बदलने के लिए किया जाता है। इसका मतलब है कि आप DDL कमांड्स का उपयोग करके टेबल बना सकते हैं, बदल सकते हैं या हटा सकते हैं। `CREATE`, `ALTER`, `DROP` इसके मुख्य कमांड हैं।
In simple words: DDL का उपयोग डेटाबेस की संरचना को बनाने और बदलने के लिए किया जाता है।
🎯 Exam Tip: DDL कमांड्स डाटाबेस की संरचना को स्थायी रूप से बदलते हैं।
Question 8. डेटा मेनीपुलेशन लैंग्वेज के विषय में बताइए।
Answer: डेटा मेनीपुलेशन लैंग्वेज (DML) SQL का वह हिस्सा है जिसे क्वेरी लैंग्वेज भी कहा जाता है। DML का उपयोग रिलेशन में स्टोर डेटा को मैनेज करने के लिए किया जाता है, जिसमें डेटा डालना (INSERT), हटाना (DELETE), अपडेट करना (UPDATE) और प्राप्त करना (RETRIEVE) शामिल है। `SELECT`, `INSERT`, `UPDATE`, `DELETE` इसके मुख्य कमांड हैं।
In simple words: DML का उपयोग डाटाबेस में डेटा को जोड़ने, बदलने, हटाने और खोजने के लिए किया जाता है।
🎯 Exam Tip: DML कमांड्स डेटा को बदलते हैं, लेकिन डाटाबेस की संरचना को नहीं।
Question 10. डेटा कन्ट्रोल लैंग्वेज के विषय में बताइए।
Answer: डेटा कंट्रोल लैंग्वेज (DCL) SQL कमांड्स का एक समूह है जिसका उपयोग डाटाबेस में डेटा की सुरक्षा और डेटा को मैनेज करने के अधिकारों (permissions) को नियंत्रित करने के लिए किया जाता है। `GRANT` और `REVOKE` इसके मुख्य कमांड हैं, जिनका उपयोग यूजर्स को अधिकार देने या वापस लेने के लिए होता है।
In simple words: DCL डेटाबेस में कौन क्या कर सकता है, यह तय करने के लिए उपयोग होता है, जैसे किसी को डेटा देखने या बदलने की अनुमति देना।
🎯 Exam Tip: DCL सुरक्षा और डेटाबेस तक पहुंच नियंत्रण के लिए बहुत महत्वपूर्ण है।
Question 11. Table create करने का Syntax लिखिए।
Answer: MySQL में एक टेबल बनाने का सामान्य सिंटैक्स नीचे दिया गया है:CREATE TABLE table-Name (F1 D1, F2 D2, ..., Fn Dn, Integrity constraints 1, ..., ICK);
इस सिंटैक्स में, `table-Name` टेबल का नाम है। `F1, F2, ... Fn` फील्ड या एट्रीब्यूट के नाम हैं, और `D1, D2, ... Dn` प्रत्येक फील्ड के लिए डेटा टाइप (डोमेन टाइप) हैं। `Integrity constraints` अतिरिक्त नियम हैं, जैसे Primary Key या Not Null.
In simple words: टेबल बनाने के लिए `CREATE TABLE` कमांड का उपयोग करते हैं, जिसके बाद टेबल का नाम और उसके अंदर के कॉलम के नाम और उनके प्रकार लिखते हैं।
🎯 Exam Tip: हर कॉलम के लिए सही डेटा टाइप चुनना डेटाबेस के प्रदर्शन और अखंडता के लिए महत्वपूर्ण है।
Question 12. Create Index कमाण्ड क्या है? इसका syntax भी लिखिए।
Answer: `CREATE INDEX` कमांड का उपयोग किसी टेबल पर इंडेक्स बनाने के लिए किया जाता है। इंडेक्स डेटा को तेजी से खोजने में मदद करते हैं, बिल्कुल जैसे किताब के अंत में इंडेक्स होता है। हम इंडेक्स को सीधे नहीं देख सकते, लेकिन यह टेबल में डेटा को सर्च करने की गति को बढ़ाता है।
इसका सिंटैक्स निम्नलिखित है:CREATE INDEX Index_name ON table_name (column_name);
यहां `Index_name` इंडेक्स का नाम है, `table_name` वह टेबल है जिस पर इंडेक्स बनाया जा रहा है, और `column_name` वह कॉलम है जिस पर इंडेक्स लागू होगा।
In simple words: `CREATE INDEX` कमांड टेबल में डेटा को तेज़ी से खोजने के लिए इंडेक्स बनाता है।
🎯 Exam Tip: इंडेक्स छोटे डेटाबेस में उतना प्रभावी नहीं होता, लेकिन बड़े डेटाबेस में यह बहुत काम आता है। हालांकि, बहुत अधिक इंडेक्स बनाने से डेटा डालने (INSERT) और अपडेट करने (UPDATE) की गति धीमी हो सकती है।
Question 13. INSERT कमाण्ड के विषय में Syntax सहित बताइए।
Answer: `INSERT INTO` कमांड का उपयोग किसी टेबल में नया डेटा या रिकॉर्ड डालने के लिए किया जाता है। यह डेटाबेस में नई पंक्तियां जोड़ने के लिए महत्वपूर्ण है।
इसका सिंटैक्स निम्नलिखित है:INSERT INTO Table_Name (Column_Name1, Column_Name2, ..., Column_Namen) VALUES (Value1, Value2, ..., Valuen);
यहां `Table_Name` उस टेबल का नाम है जिसमें डेटा डालना है। `Column_Name1, ..., Column_Namen` वे कॉलम हैं जिनमें डेटा डाला जा रहा है, और `Value1, ..., Valuen` उन कॉलमों के लिए क्रमशः मान (values) हैं।
In simple words: `INSERT INTO` कमांड का उपयोग टेबल में नया डेटा जोड़ने के लिए होता है।
🎯 Exam Tip: सुनिश्चित करें कि `VALUES` में दिए गए मानों का क्रम `Column_Name` में दिए गए कॉलमों के क्रम से मेल खाता हो। String और Date मानों को हमेशा सिंगल कोट्स (') में रखें।
Question 14. SQL DELETE कमाण्ड क्या है?
Answer: `DELETE` कमांड का उपयोग किसी टेबल से पूरी पंक्ति (record या tuple) को हटाने के लिए किया जाता है। इस कमांड से हम किसी एट्रीब्यूट (कॉलम) की केवल एक वैल्यू को हटा नहीं सकते, बल्कि पूरी पंक्ति को हटाते हैं। यदि आप किसी खास शर्त के आधार पर पंक्तियाँ हटाना चाहते हैं, तो `WHERE` क्लॉज का उपयोग करें, अन्यथा यह टेबल की सभी पंक्तियों को हटा देगा।
In simple words: `DELETE` कमांड टेबल से पूरी रिकॉर्ड (लाइन) हटाने के लिए होता है।
🎯 Exam Tip: `DELETE` कमांड का उपयोग करते समय `WHERE` क्लॉज का ध्यान रखें, क्योंकि गलत `DELETE` कमांड से महत्वपूर्ण डेटा स्थायी रूप से हट सकता है।
Question 16. SELECT कमाण्ड के विषय में Syntax सहित बताइए।
Answer: `SELECT` कमांड SQL का सबसे महत्वपूर्ण कमांड है। इसका उपयोग डाटाबेस से डेटा प्राप्त करने के लिए किया जाता है। यह उन एट्रीब्यूट्स (कॉलम) की सूची को दर्शाता है जिन्हें हमें रिलेशन (टेबल) से निकालना है।
इसका सिंटैक्स निम्नलिखित है:SELECT field_names FROM relation_names;
यहां `field_names` उन कॉलमों के नाम हैं जिन्हें आप आउटपुट में देखना चाहते हैं (या सभी कॉलम के लिए `*`), और `relation_names` उस टेबल या उन टेबलों के नाम हैं जिनसे डेटा प्राप्त करना है।
In simple words: `SELECT` कमांड का उपयोग डेटाबेस से जानकारी निकालने के लिए होता है, हम चुनते हैं कि कौन से कॉलम देखने हैं और किस टेबल से।
🎯 Exam Tip: `SELECT *` का उपयोग करके सभी कॉलम का चयन करने से बचें, खासकर बड़े टेबल्स में, क्योंकि यह प्रदर्शन को प्रभावित कर सकता है। केवल आवश्यक कॉलम चुनें।
Question 17. WHERE clause किन लॉजिकल (Logical) connections का उपयोग करते हैं?
Answer: `WHERE` क्लॉज लॉजिकल ऑपरेटर्स का उपयोग करके कई शर्तों को जोड़ सकता है। ये लॉजिकल ऑपरेटर्स डेटा को फिल्टर करने के लिए अलग-अलग शर्तों को जोड़ते या बदलते हैं। `WHERE` क्लॉज मुख्य रूप से निम्नलिखित लॉजिकल ऑपरेटर्स का उपयोग करता है:
- AND: यह दो या दो से अधिक शर्तों को जोड़ता है। यदि सभी शर्तें सही हों, तो परिणाम सही होता है।
- OR: यह दो या दो से अधिक शर्तों को जोड़ता है। यदि उनमें से कोई भी शर्त सही हो, तो परिणाम सही होता है।
- NOT: यह किसी शर्त को उल्टा करता है (negate)। यदि शर्त सही है, तो NOT उसे गलत बना देता है, और यदि गलत है, तो सही।
In simple words: `WHERE` क्लॉज शर्तों को जोड़ने के लिए `AND`, `OR` और `NOT` जैसे लॉजिकल ऑपरेटर्स का उपयोग करता है।
🎯 Exam Tip: लॉजिकल ऑपरेटर्स का सही उपयोग करके आप बहुत विशिष्ट और सटीक डेटा फ़िल्टर कर सकते हैं। parentheses का उपयोग करके शर्तों के ग्रुपिंग पर ध्यान दें।
Question 18. SQL के SET ऑपरेटर कौन-कौन से हैं?
Answer: SQL के SET ऑपरेटर्स का उपयोग दो या दो से अधिक `SELECT` स्टेटमेंट्स के रिजल्ट सेट को जोड़ने या तुलना करने के लिए किया जाता है। ये ऑपरेटर्स आमतौर पर एक ही प्रकार के डेटा वाले कॉलम पर काम करते हैं। SQL के मुख्य SET ऑपरेटर्स निम्नलिखित हैं:
- UNION: यह दो `SELECT` स्टेटमेंट्स के सभी डिस्टिंक्ट (distinct) रिकॉर्ड्स को जोड़ता है। डुप्लिकेट पंक्तियों को हटा दिया जाता है।
- UNION ALL: यह दो `SELECT` स्टेटमेंट्स के सभी रिकॉर्ड्स को जोड़ता है, जिसमें डुप्लिकेट पंक्तियां भी शामिल होती हैं।
- INTERSECT: यह दो `SELECT` स्टेटमेंट्स के उन रिकॉर्ड्स को लौटाता है जो दोनों में मौजूद हैं (कॉमन रिकॉर्ड्स)।
- EXCEPT (या MINUS): यह पहले `SELECT` स्टेटमेंट के उन रिकॉर्ड्स को लौटाता है जो दूसरे `SELECT` स्टेटमेंट में मौजूद नहीं हैं।
In simple words: SQL SET ऑपरेटर्स अलग-अलग `SELECT` परिणामों को एक साथ जोड़ने या तुलना करने के लिए होते हैं।
🎯 Exam Tip: SET ऑपरेटर्स का उपयोग करते समय, यह सुनिश्चित करें कि `SELECT` लिस्ट में कॉलमों की संख्या और डेटा प्रकार दोनों `SELECT` स्टेटमेंट्स में समान हों।
Question 19. UNION SET ऑपरेटर का उपयोग बताइए।
Answer: `UNION` SET ऑपरेटर का उपयोग दो या दो से अधिक `SELECT` स्टेटमेंट्स के रिजल्ट सेट को एक साथ जोड़ने के लिए किया जाता है। यह सभी डिस्टिंक्ट (distinct) पंक्तियों को लौटाता है, जिसका अर्थ है कि यदि दोनों `SELECT` स्टेटमेंट्स में कोई डुप्लिकेट पंक्तियाँ हैं, तो `UNION` उन्हें हटा देता है और केवल एक बार दिखाता है। यह तब उपयोगी होता है जब आपको एक ही प्रकार की जानकारी कई अलग-अलग टेबलों या शर्तों से एक साथ चाहिए होती है।
In simple words: `UNION` दो अलग-अलग खोज परिणामों को एक साथ जोड़ता है और किसी भी डुप्लिकेट लाइन को हटा देता है।
🎯 Exam Tip: `UNION` डिस्टिंक्ट पंक्तियों को लौटाता है। यदि आप डुप्लिकेट पंक्तियों को भी शामिल करना चाहते हैं, तो `UNION ALL` का उपयोग करें।
Question 20. INTERSECT SET ऑपरेटर का उपयोग बताइए।
Answer: `INTERSECT` ऑपरेटर का उपयोग दो या दो से अधिक डेटा सेट के कॉमन (intersection) रिकॉर्ड्स को खोजने के लिए किया जाता है। इसका मतलब है कि यह केवल उन रिकॉर्ड्स को लौटाता है जो सभी `SELECT` स्टेटमेंट्स में मौजूद होते हैं। यदि कोई रिकॉर्ड केवल एक डेटा सेट में है, तो वह परिणाम में नहीं आएगा। यह तब उपयोगी होता है जब आपको उन एंटिटीज़ को ढूंढना हो जो कई विभिन्न मापदंडों को पूरा करती हों।
In simple words: `INTERSECT` दो खोज परिणामों के बीच जो कॉमन लाइनें हैं, उन्हें दिखाता है।
🎯 Exam Tip: `INTERSECT` ऑपरेटर केवल वे पंक्तियां लौटाता है जो सभी क्वेरीज़ में मौजूद हों।
Question 21. EXCEPT ऑपरेटर का उपयोग बताइए।
Answer: `EXCEPT` ऑपरेटर (कुछ डाटाबेस में `MINUS` के रूप में जाना जाता है) दो `SELECT` स्टेटमेंट्स को जोड़ने के लिए उपयोग किया जाता है। यह पहले `SELECT` स्टेटमेंट की उन पंक्तियों को लौटाता है जो दूसरे `SELECT` स्टेटमेंट में मौजूद नहीं हैं। यह तब उपयोगी होता है जब आपको पहले सेट से उन रिकॉर्ड्स को फिल्टर करना हो जो दूसरे सेट में नहीं हैं।
In simple words: `EXCEPT` पहली खोज के उन नतीजों को दिखाता है जो दूसरी खोज में नहीं हैं।
🎯 Exam Tip: `EXCEPT` ऑपरेटर `UNION` और `INTERSECT` के विपरीत काम करता है, यह अंतर को हाइलाइट करता है।
Question 22. RAND फंक्शन उदाहरण सहित बताइए।
Answer: `RAND()` फंक्शन MySQL में 0 (शून्य) और 1 (एक) के बीच एक रैंडम (random) दशमलव संख्या उत्पन्न करने के लिए उपयोग किया जाता है। हर बार जब आप इसे चलाते हैं, तो यह एक अलग नंबर देता है।
उदाहरण:MySQL> SELECT RAND(), RAND();
यह कमांड दो रैंडम नंबर उत्पन्न करेगा, जैसे:
`0.12345678901234567`, `0.98765432109876543`
In simple words: `RAND()` एक कमांड है जो 0 से 1 के बीच कोई भी अचानक, बेतरतीब नंबर देता है।
🎯 Exam Tip: `RAND()` का उपयोग अक्सर टेस्टिंग, डेटा सैंपलिंग या रैंडम वैल्यू जनरेशन के लिए किया जाता है। यदि आप एक ही सत्र में एक ही रैंडम सीक्वेंस चाहते हैं, तो आप `RAND()` को एक बीज (seed) वैल्यू के साथ उपयोग कर सकते हैं।
Question 23. SQRT फंक्शन उदाहरण सहित बताइए।
Answer: `SQRT()` फंक्शन किसी दिए गए नंबर का वर्गमूल (square root) निकालने के लिए उपयोग किया जाता है। यह एक गणितीय फंक्शन है।
उदाहरण:MySQL> SELECT SQRT(64);
इस कमांड का आउटपुट होगा:
| SQRT(64) |
|---|
| 8 |
In simple words: `SQRT()` फंक्शन किसी भी संख्या का वर्गमूल (रूट) निकालने के लिए है, जैसे 64 का वर्गमूल 8 होता है।
🎯 Exam Tip: `SQRT()` केवल नॉन-नेगेटिव नंबरों के लिए काम करता है। नेगेटिव नंबर के लिए यह `NULL` लौटाएगा या त्रुटि देगा।
Question 24. MySQL में default यूजर कौन होता है? MySQL में नया यूजर बनाने का Syntax बताइए।
Answer: MySQL में डिफ़ॉल्ट यूजर `Root` होता है। `Root` यूजर के पास सभी डाटाबेस पर पूरा एक्सेस (full access) होता है, जिसका अर्थ है कि वह सभी प्रकार के ऑपरेशन कर सकता है।
MySQL में नया यूजर बनाने का सिंटैक्स निम्नलिखित है:CREATE USER 'new_user'@'localhost' IDENTIFIED BY 'Password';
इस सिंटैक्स में, `'new_user'` उस नए यूजर का नाम है जिसे आप बनाना चाहते हैं, `'localhost'` बताता है कि यूजर किस होस्ट से कनेक्ट हो सकता है (आप इसे किसी IP एड्रेस से भी बदल सकते हैं), और `'Password'` वह पासवर्ड है जो इस नए यूजर के लिए सेट किया जाएगा।
In simple words: MySQL में `Root` सबसे ताकतवर यूजर होता है। नए यूजर बनाने के लिए `CREATE USER` कमांड का उपयोग करते हैं, साथ में यूजर का नाम, वह कहाँ से कनेक्ट होगा, और उसका पासवर्ड बताते हैं।
🎯 Exam Tip: सुरक्षा कारणों से, `Root` यूजर का उपयोग केवल ज़रूरी प्रशासनिक कार्यों के लिए करें और अन्य कार्यों के लिए कम प्रिविलेज वाले यूजर्स बनाएं।
Question 2. एंटिटी इन्टीग्रीटी कन्सट्रेन्टस के विषय में बताइए।
Answer: एंटिटी इंटीग्रिटी कंस्ट्रेंट्स यह सुनिश्चित करते हैं कि किसी भी टेबल में कोई भी दो रिकॉर्ड या पंक्तियाँ डुप्लिकेट न हों। इसके अलावा, जो फील्ड प्रत्येक रिकॉर्ड की उस टेबल में पहचान कर रहा है (यानी प्राइमरी की) वह एक यूनिक फील्ड होना चाहिए और उसकी वैल्यू कभी भी `Null` नहीं होनी चाहिए। इसका मतलब है कि प्रत्येक रिकॉर्ड की एक अद्वितीय पहचान होनी चाहिए।
एंटिटी इंटीग्रिटी कंस्ट्रेंट्स प्राइमरी की के माध्यम से लागू किए जा सकते हैं। यदि हम किसी एंटिटी के लिए प्राइमरी की को परिभाषित करते हैं, तो वह अपने आप एंटिटी इंटीग्रिटी को पूरा करता है।
उदाहरण के लिए, एक Student टेबल:
| Roll_No | Name | Address | Age | Class |
|---|---|---|---|---|
| 110 | Komal | Jaipur | 17 | 12th |
| 120 | Kailash | Udaipur | 14 | 8th |
| 105 | Manish | Kota | 20 | 10th |
| 107 | Ronak | Chittorarh | 10 | 5th |
उपरोक्त Student टेबल में यदि `Roll_no` फील्ड प्राइमरी की है, तो इस फील्ड में प्रत्येक छात्र का `Roll_no` अलग-अलग होगा। साथ ही किसी छात्र के लिए उसकी वैल्यू `Null` नहीं होगी। `Roll_no` के अलग-अलग होने के कारण इस टेबल में कोई भी दो पंक्तियाँ एक समान नहीं होंगी।
In simple words: एंटिटी इंटीग्रिटी यह सुनिश्चित करती है कि हर रिकॉर्ड की एक अनोखी पहचान हो और उसकी प्राइमरी की कभी खाली न हो।
🎯 Exam Tip: प्राइमरी की एंटिटी इंटीग्रिटी कंस्ट्रेंट्स को लागू करने का सबसे प्रभावी तरीका है।
Question 4. SQL के प्रमुख लाभ बताइए।
Answer: SQL सभी डाटाबेस सिस्टम के लिए फायदेमंद है, चाहे वे Oracle, IBM, DB2, Sybase जैसे कमर्शियल हों या MySQL, Postgres जैसे ओपन-सोर्स हों। इसके मुख्य लाभ निम्नलिखित हैं:
- उच्च गति (High Speed): SQL एक ऐसी भाषा है जो बड़े से बड़े संगठनों के डाटाबेस से डेटा को बहुत कुशलता और तेजी से निकालने में मदद करती है। इसलिए, SQL एक उच्च गति वाली भाषा है।
- सीखने की सुविधा (Easy to Learn): SQL को सीखना बहुत आसान है क्योंकि इसमें लंबे प्रोग्राम कोड लिखने की ज़रूरत नहीं होती। इसमें ज़्यादा कोडिंग की आवश्यकता नहीं होती है।
- अच्छी तरह से परिभाषित मानक भाषा (Well Defined Standard): SQL एक मानक भाषा है जिसे ANSI और ISO ने परिभाषित किया है। इसका मतलब है कि SQL कमांड्स अलग-अलग डाटाबेस सिस्टम में लगभग समान तरीके से काम करते हैं।
In simple words: SQL तेज़ है, सीखने में आसान है, और यह एक मानक भाषा है जो सभी प्रमुख डाटाबेस में काम करती है।
🎯 Exam Tip: इन लाभों पर ध्यान दें क्योंकि वे SQL को डेटाबेस मैनेजमेंट के लिए एक शक्तिशाली और व्यापक रूप से उपयोग की जाने वाली भाषा बनाते हैं।
Question 5. डेटा डेफिनेशन लैंग्वेज (DDL) का उपयोग बताइए।
Answer: डेटा डेफिनेशन लैंग्वेज (DDL) SQL का एक हिस्सा है जिसका उपयोग डाटाबेस की संरचना (स्कीमा) को परिभाषित करने के लिए किया जाता है। DDL केवल डाटाबेस स्कीमा को ही नहीं, बल्कि हर रिलेशन (टेबल) के बारे में भी विशिष्ट जानकारी रखता है। इसके मुख्य उपयोग निम्नलिखित हैं:
- हर रिलेशन के स्कीमा को बनाना और बदलना।
- हर एट्रीब्यूट (कॉलम) के मानों के डोमेन (मानों की श्रेणी) को परिभाषित करना।
- कन्सट्रेन्टस (नियम), जैसे प्राइमरी की, फॉरेन की, नॉट नल, यूनिक, आदि को लागू करना।
- इंडेक्स बनाना ताकि डेटाबेस में डेटा की खोज तेज़ हो सके।
- किसी स्कीमा के लिए प्राधिकरण (authorization) और सुरक्षा सेटिंग्स को मैनेज करना।
- हर रिलेशन के भौतिक स्टोरेज (physical storage) के तरीके को परिभाषित करना।
In simple words: DDL का उपयोग डेटाबेस की संरचना को बनाने, बदलने और मैनेज करने के लिए होता है, जैसे टेबल बनाना, कॉलम के प्रकार तय करना और नियम लगाना।
🎯 Exam Tip: DDL कमांड्स `CREATE`, `ALTER`, `DROP` हैं, जो डाटाबेस की संरचना को स्थायी रूप से बदलते हैं।
Question 6. ALTER table कमाण्ड के विषय में बताइये।
Answer: `ALTER TABLE` कमांड का उपयोग किसी मौजूदा टेबल की संरचना (स्कीमा) को बदलने के लिए किया जाता है। इसका मतलब है कि आप इस कमांड का उपयोग करके टेबल में नए कॉलम जोड़ सकते हैं, मौजूदा कॉलम हटा सकते हैं, या कॉलम के डेटा टाइप को बदल सकते हैं। यह DDL (डेटा डेफिनेशन लैंग्वेज) का एक महत्वपूर्ण हिस्सा है।
`ALTER TABLE` कमांड के कुछ उदाहरण इस प्रकार हैं:
(1) टेबल में एक नया कॉलम जोड़ने के लिए:
उदाहरण – Classes टेबल में एक नया कॉलम `class_strength` (इंटीजर डेटा टाइप) जोड़ सकते हैं।ALTER TABLE Classes ADD class_strength INT;
(2) किसी स्तंभ (कॉलम) को टेबल से हटाने के लिए:
उदाहरण – `column_name` नामक कॉलम को टेबल से हटाने के लिए:ALTER TABLE table_name DROP COLUMN column_name;
(3) किसी स्तंभ का डेटा टाइप बदलने के लिए:
उदाहरण – Student टेबल में `Age` कॉलम का डेटा टाइप `Date` में बदलने के लिए:ALTER TABLE Student MODIFY Age Date;
In simple words: `ALTER TABLE` कमांड से आप पहले से बनी हुई टेबल में बदलाव कर सकते हैं, जैसे नया कॉलम जोड़ना या पुराने को बदलना, या उनके प्रकार बदलना।
🎯 Exam Tip: कॉलम जोड़ते या हटाते समय, हमेशा सुनिश्चित करें कि आप सही टेबल और कॉलम नाम का उपयोग कर रहे हैं। डेटा टाइप बदलते समय, डेटा लॉस से बचने के लिए संगतता सुनिश्चित करें।
Question 7. किसी SQL query की बुनियादी संरचना के कितने क्लॉजेस (clauses) होते हैं?
Answer: किसी SQL क्वेरी एक्सप्रेशन की बुनियादी संरचना में मुख्य रूप से तीन क्लॉज (clauses) होते हैं। कोई भी SQL क्वेरी जिसे हम रिलेशनल डेटाबेस के लिए लिखते हैं, उसकी बुनियादी संरचना में ये तीन क्लॉज शामिल होंगे:
- SELECT क्लॉज: इसमें हम उन एट्रीब्यूट्स (कॉलम) को लिखते हैं जो हमें हमारे आउटपुट रिलेशन (रिजल्ट) में चाहिए।
- FROM क्लॉज: इसमें हम उन रिलेशन (टेबल्स) को लिखते हैं जिनका हमें क्वेरी एक्सप्रेशन में उपयोग करना है। `FROM` क्लॉज में लिखे रिलेशंस का कार्टेशियन प्रोडक्ट (Cartesian product) होता है।
- WHERE क्लॉज: इसमें हम एक प्रेडिकेट (शर्त) लिखते हैं जो `FROM` क्लॉज के रिलेशंस के एट्रीब्यूट्स को फिल्टर करता है। इसका मतलब है कि इसकी बुलियन वैल्यू (true or false) होती है, और यह केवल उन पंक्तियों को चुनता है जो शर्त को पूरा करती हैं।
SQL क्वेरी का सामान्य रूप (form) इस प्रकार है:
`SELECT AT1, AT2, AT3, ..., ATn,`
`FROM r1, r2, r3, rn,`
`WHERE P;`
यहां `ATi` एक एट्रीब्यूट को दिखाता है और `ri` एक रिलेशन को, जबकि `P` एक प्रेडिकेट (शर्त) है।
In simple words: एक SQL क्वेरी के तीन मुख्य हिस्से होते हैं: `SELECT` (क्या देखना है), `FROM` (कहाँ से देखना है), और `WHERE` (किस शर्त पर देखना है)।
🎯 Exam Tip: इन तीन क्लॉजेस की भूमिका और क्रम को समझना कुशल SQL क्वेरीज़ लिखने के लिए महत्वपूर्ण है।
Question 8. REVOKE कमाण्ड पर संक्षिप्त टिप्पणी लिखिए।
Answer: `REVOKE` कमांड `DCL` (डेटा कंट्रोल लैंग्वेज) का एक हिस्सा है। इसका उपयोग किसी डाटाबेस ऑब्जेक्ट (जैसे टेबल या व्यू) से पहले से दी गई अनुमतियों (permissions) को वापस लेने के लिए किया जाता है। इसका सिंटैक्स `GRANT` कमांड के समान होता है, लेकिन यह उसका उल्टा काम करता है। `REVOKE` के द्वारा, जो अधिकार पहले `GRANT` कमांड से दिए गए थे, उन्हें हटाया जा सकता है, जिससे डेटाबेस की सुरक्षा और नियंत्रण बना रहता है।
In simple words: `REVOKE` कमांड का उपयोग किसी यूजर से पहले दी गई डाटाबेस की अनुमतियों को वापस लेने के लिए होता है।
🎯 Exam Tip: `REVOKE` सुरक्षा बनाए रखने के लिए महत्वपूर्ण है, खासकर जब किसी यूजर के अधिकार बदलने या हटाने की आवश्यकता हो।
Question 1. Numeric फंक्शन के क्या उपयोग हैं? प्रमुख Numeric फंक्शन के नाम बताइए तथा उदाहरण भी दीजिए।
Answer: न्यूमेरिक फंक्शन्स का उपयोग गणितीय ऑपरेशन करने के लिए किया जाता है। ये फंक्शन संख्याओं पर विभिन्न गणनाएँ करने में मदद करते हैं। कुछ उपयोगी न्यूमेरिक फंक्शन्स निम्नलिखित हैं:
| फंक्शन | विवरण |
|---|---|
| (i) \( \text{ABS}(V) \) | यह फंक्शन \( V \) की पूर्ण (absolute) वेल्यू देता है। |
| (ii) \( \text{GREATEST}(n1, n2,...) \) | यह फंक्शन दी हुई पैरामीटर लिस्ट में से अधिकतम (greatest) वेल्यू देता है। |
| (iii) \( \text{INTERVAL}(N, n1,n2, n3,---) \) | यह फंक्शन \( N \) की वेल्यू को \( n1, n2, n3 \)--- से कम्पेयर करता है। अगर \( N < n1 \) है तो 0, \( N < n2 \) है तो 1, \( N < n3 \) है तो 2 और इसी प्रकार आगे नंबर रिटर्न करता है। |
| (iv) \( \text{LEAST}(N1,N2...) \) | यह \( \text{GREATEST} \) का विपरीत है (सबसे छोटी वेल्यू देता है)। |
उदाहरण:
(1) `ABS()` फंक्शन के लिए:MySQL> SELECT ABS(-6);
आउटपुट:
| ABS(-6) |
|---|
| 6 |
(2) `GREATEST()` फंक्शन के लिए:MySQL> SELECT GREATEST(4, 3, 7, 9, 8, 0, 10, 50, 70, 11);
आउटपुट:
| GREATEST(4, 3, 7, 9, 8, 0, 10, 50, 70, 11) |
|---|
| 70 |
In simple words: न्यूमेरिक फंक्शन संख्याओं पर गणित करने के काम आते हैं, जैसे किसी संख्या का प्लस मान निकालना या कई संख्याओं में से सबसे बड़ी संख्या खोजना।
🎯 Exam Tip: `ABS`, `GREATEST`, `LEAST` जैसे फंक्शन्स का उपयोग डेटा को साफ करने, तुलना करने और विशेष गणना करने के लिए बहुत उपयोगी है।
RBSE Class 12 Computer Science Chapter 14 निबंधात्मक प्रश्न
Question 1. डाटा कन्सट्रेन्टस (Data Constraints) से आप क्या समझते हैं? एक रिलेशन वाले कन्सट्रेन्टस के विषय में बताइए।
Answer:
डाटा कन्सट्रेन्टस (Data Constraints):
डेटा कंस्ट्रेंट्स डेटाबेस में डेटा की सटीकता, विश्वसनीयता और स्थिरता सुनिश्चित करने के लिए टेबल के कॉलमों पर लागू किए गए नियम होते हैं। ये नियम यह तय करते हैं कि टेबल में किस प्रकार का डेटा डाला जा सकता है, ताकि डेटाबेस में कोई भी बदलाव होने पर डेटा की अखंडता बनी रहे। कंस्ट्रेंट्स यह भी सुनिश्चित करते हैं कि अधिकृत यूजर द्वारा डेटा में बदलाव करने पर भी डेटा की consistency बनी रहे।
डेटा कंस्ट्रेंट्स कॉलम लेवल पर (एक खास कॉलम पर) या टेबल लेवल पर (पूरी टेबल पर) हो सकते हैं। कॉलम लेवल कंस्ट्रेंट्स एक ही कॉलम पर लागू होते हैं, जबकि टेबल लेवल कंस्ट्रेंट्स एक से अधिक कॉलम या पूरी टेबल पर लागू होते हैं।
डेटा कंस्ट्रेंट्स के कुछ उदाहरण इस प्रकार हैं:
- Student की `Class` कॉलम `null` नहीं हो सकती है (यानी, खाली नहीं छोड़ी जा सकती)।
- किन्ही दो छात्रों के `Roll-no` एक समान नहीं होंगे (हर `Roll-no` अद्वितीय होना चाहिए)।
- Student रिलेशन की हर `Class` रिलेशन में एक मैचिंग क्लास ज़रूर रहेगी (यानी, एक क्लास दूसरी क्लास से संबंधित होनी चाहिए)।
एक रिलेशन वाले कंस्ट्रेंट्स:
एक रिलेशन (टेबल) में निम्नलिखित कंस्ट्रेंट्स होते हैं:
1. Not Null
2. Unique
3. Check (<predicate>)
(1) Not Null कंस्ट्रेंट्स: यह कंस्ट्रेंट्स किसी भी टेबल में किसी फील्ड या एट्रीब्यूट की वैल्यू को खाली (`null`) होने से रोकता है। यदि किसी फील्ड पर यह कंस्ट्रेंट लागू है और यूजर उस फील्ड में `null` वैल्यू डालने की कोशिश करता है, तो एक त्रुटि (error) उत्पन्न होती है।
उदाहरण के लिए, `Student` टेबल में `class` या `Roll-no` एट्रीब्यूट की वैल्यू `null` नहीं होनी चाहिए क्योंकि `Roll-no` एक प्राइमरी की है।
(2) Unique कंस्ट्रेंट्स: यह सुनिश्चित करता है कि किसी रिलेशन में कोई भी दो पंक्तियाँ या टपल्स किसी भी प्राइमरी की एट्रीब्यूट पर बराबर नहीं हो सकते। इसका मतलब है कि दो टपल्स के लिए हर एट्रीब्यूट की वैल्यू एक समान नहीं होगी। `Unique` कंस्ट्रेंट्स `Candidate Key` का हिस्सा होते हैं।
In simple words: डेटा कंस्ट्रेंट्स डेटाबेस में डेटा की शुद्धता और स्थिरता बनाए रखने के लिए नियम हैं, जैसे कि कोई भी जानकारी खाली नहीं होनी चाहिए या डुप्लिकेट नहीं होनी चाहिए।
🎯 Exam Tip: `Not Null` और `Unique` कंस्ट्रेंट्स को समझने से डेटा इंटीग्रिटी को बनाए रखने में मदद मिलती है। `Primary Key` अपने आप `Not Null` और `Unique` दोनों होता है।
Question 2. SQL के बेसिक डोमेन टाइप्स का वर्णन कीजिए।
अथवा
SQL के प्रमुख बिल्ट इन डोमेन टाइप्स के विषय में विस्तारपूर्वक बताइए।
Answer: SQL के बेसिक डोमेन टाइप्स (या डेटा टाइप्स) बताते हैं कि किसी कॉलम में किस प्रकार का डेटा स्टोर किया जा सकता है। ये डाटाबेस में डेटा को सही तरीके से मैनेज करने के लिए बहुत ज़रूरी हैं। SQL में मुख्य रूप से उपयोग होने वाले बिल्ट-इन डोमेन टाइप्स निम्नलिखित हैं:
(1) न्यूमेरिक डेटा टाइप्स (Numeric Data Types):
इनमें संख्याओं को स्टोर करने के लिए विभिन्न प्रकार शामिल हैं:
- Int या Integer: बड़े साइज के पूर्णांकों (integers) के लिए उपयोग होता है। इसके लिए 4 बाइट्स स्टोरेज की आवश्यकता होती है।
- Small Int: छोटे साइज के पूर्णांकों के लिए उपयोग होता है। इसके लिए 2 बाइट्स स्टोरेज की आवश्यकता होती है।
- Tiny Int: बहुत छोटे साइज के या बिना साइन वाले पूर्णांकों के लिए उपयोग होता है।
- Float (M,D): फ्लोटिंग पॉइंट (दशमलव) संख्याओं के लिए उपयोग होता है। यहाँ `M` संख्या में कुल डिजिट्स और `D` दशमलव के बाद के डिजिट्स की संख्या है।
- Double (M,D): यह `Float` से अधिक सटीक (precision) फ्लोटिंग पॉइंट संख्याओं के लिए उपयोग होता है और यह `REAL` के समान है।
(2) स्ट्रींग टाइप्स (String Types):
इनमें टेक्स्ट या कैरेक्टर डेटा को स्टोर करने के लिए विभिन्न प्रकार शामिल हैं:
- CHAR (C): यह एक फिक्स्ड लंबाई वाली स्ट्रिंग के लिए उपयोग होता है। यहाँ `C` स्ट्रिंग की लंबाई है जो यूजर देता है। यदि स्टोर की गई स्ट्रिंग की लंबाई `C` से कम है, तो बची हुई जगह खाली (space) से भर दी जाती है।
- VARCHAR (C): यह वेरिएबल लंबाई वाली स्ट्रिंग के लिए उपयोग होता है। यहाँ `C` स्ट्रिंग की अधिकतम लंबाई है। यह केवल उतनी जगह लेता है जितनी स्ट्रिंग की वास्तविक लंबाई होती है।
(3) Date और Time डेटा टाइप्स (Date and Time Data Types):
इनमें तारीख और समय से संबंधित डेटा को स्टोर करने के लिए विभिन्न प्रकार शामिल हैं:
- Date: इस डेटा टाइप में तारीख `YYYY-MM-DD` प्रारूप में स्टोर होती है। यह 1000-01-01 से 9999-12-31 के बीच की तारीखों को स्टोर कर सकती है।
उदाहरण के लिए, यदि एक छात्र की जन्म तिथि 1 जुलाई, 1980 है, तो यह `1980-07-01` के प्रारूप में स्टोर होगी। - DATETIME: यह डेटा टाइप तारीख और समय दोनों को एक साथ `YYYY-MM-DD HH:MM:SS` प्रारूप में स्टोर करता है। यह 1000-01-01 00:00:00 से 9999-12-31 23:59:59 के बीच के मानों को स्टोर कर सकता है।
उदाहरण के लिए, 1 जुलाई, 1980 को दोपहर 2:35 बजे को `1980-07-01 14:35:00` के रूप में स्टोर किया जा सकता है। - Time: यह समय को `HH:MM:SS` प्रारूप में स्टोर करता है।
In simple words: SQL में संख्याओं, टेक्स्ट और तारीख/समय को स्टोर करने के लिए अलग-अलग डेटा टाइप होते हैं, जैसे पूर्णांक के लिए `INT`, टेक्स्ट के लिए `VARCHAR`, और तारीख के लिए `DATE`।
🎯 Exam Tip: डेटा टाइप्स को सही ढंग से चुनना डेटाबेस के प्रदर्शन, स्टोरेज दक्षता और डेटा इंटीग्रिटी के लिए बहुत महत्वपूर्ण है।
Question 3. SQL ऑपरेटर्स के प्रमुख कार्य बताए।
Answer: SQL ऑपरेटर्स विशेष शब्द होते हैं जिनका उपयोग SQL क्वेरी के WHERE क्लॉज में किया जाता है। इनके मुख्य कार्य निम्न हैं:
- (i) तुलना (Comparison)
- (ii) अंकगणित (Arithmetic)
- (iii) तार्किक (Logical)
- (iv) शर्त को निगेट करने (Negating condition)
(i) कम्पेरिजन ऑपरेटर्स - ऑपरेटर्स का विवरण निम्नलिखित है:
| ऑपरेटर्स | विवरण |
|---|---|
| \( = \) | यह ऑपरेटर्स दो ऑपरेटर्स की वैल्यू की समानता या असमानता को चेक करता है। समान होने पर शर्त true होगी। |
| \( <> \) or \( != \) | यह ऑपरेटर्स दो ऑपरेटर्स की वैल्यू की समानता या असमानता को चेक करता है अगर वैल्यू समान नहीं है तो शर्त true होगी। |
| \( > \) | अगर बाँये तरफ के ऑपेरन्ड की वैल्यू दाँये तरफ के ऑपरेन्ड से ज्यादा हो तो शर्त true होगी। |
| \( < \) | अगर बाँये तरफ के ऑपेरन्ड की वैल्यू दाँये तरफ के ऑपरेन्ड से कम हो तो शर्त true होगी। |
| \( >= \) | अगर बाँये तरफ के ऑपेरन्ड की वैल्यू दाँये तरफ के ऑपरेन्ड से ज्यादा या समान हो तो शर्त true होगी। |
| \( <= \) | अगर बाँये तरफ के ऑपेरन्ड की वैल्यू दाँये तरफ के ऑपरेन्ड से कम या समान हो तो शर्त true होगी। |
(ii) अंकगणितीय ऑपरेटर्स - ऑपरेटर्स का विवरण निम्नलिखित है:
| ऑपरेटर्स | विवरण |
|---|---|
| \( - \) | बाँयी तरफ के ऑपरेन्ड की वैल्यू में से दाँयी तरफ की ऑपरेन्ड की वैल्यू का घटाव (subtract) करता है। |
| \( * \) | दोनों तरफ की ऑपरेन्ड की वैल्यू को गुणा करना। |
| \( % \) or मॉडूलस | बाँयी तरफ के ऑपरेन्ड की वैल्यू को दाँयी तरफ के ऑपरेन्ड की वैल्यू से भाग (divide) देता है। तथा उनका शेष रिटर्न करता है। |
(iii) SQL लॉजिकल ऑपरेटर्स - ऑपरेटर्स का विवरण निम्नलिखित है:
| ऑपरेटर्स | विवरण |
|---|---|
| AND | WHERE क्लॉज में विभिन्न शर्तो को allow करता है। अर्थात a AND b दोनों शर्तों a एवं b true होने पर इसका परिणाम true होगा। |
| OR | यह WHERE क्लॉज में विभिन्न शर्तों को संयुक्त करता है। अर्थात् a OR b में कोई भी शर्त a या b के true होने पर इसका परिणाम true होगा। |
| Not ( \( ! \) ) | यह ऑपरेटर ऑपरेन्ड की वैल्यू को इन्वर्स करता है। |
(iv) शर्त को निगेट करने वाले ऑपरेटर्स - ऑपरेटर्स का विवरण निम्नलिखित है:
| ऑपरेटर्स | विवरण |
|---|---|
| BETWEEN | यह ऑपरेटर्स वैल्यूस के मध्य वैल्यूस को सर्च करता है। |
| ALL | सभी वैल्यूस से compare करने के काम लेते हैं। अर्थात् ALL ऑपरेटर लिस्ट की सभी वैल्यूस के लिए शर्त सही होने पर ही true return करता है। |
| LIKE | इस ऑपरेटर का उपयोग किसी string में pattern matching के लिए करते हैं। |
SQL ऑपरेटर्स डाटा को फ़िल्टर करने और विश्लेषण करने के लिए महत्वपूर्ण हैं, जो अलग-अलग कार्यों के लिए उपयोग किए जाते हैं, जैसे कि मूल्यों की तुलना करना, गणितीय गणना करना, और तार्किक स्थितियां निर्धारित करना।
In simple words: SQL ऑपरेटर्स खास कमांड होते हैं जो हमें डाटा को छाँटने और उसकी तुलना करने में मदद करते हैं, जैसे बराबर है, छोटा है, या बड़ा है। ये लॉजिकल और मैथ के काम भी करते हैं।
🎯 Exam Tip: ऑपरेटर्स के प्रकार और उनके सिंटैक्स को अच्छी तरह से याद करें, क्योंकि वे SQL क्वेरीज का आधार होते हैं और क्वेरी लिखने में मदद करते हैं।
Question 4. SQL के विभिन्न फंक्शन का विवरण दें। अथवा SQL के built in फंक्शन के विषय में विस्तारपूर्वक बताइए।
Answer: SQL में कई प्रकार के built-in फंक्शन उपलब्ध हैं, जिनका उपयोग डाटा पर विभिन्न ऑपरेशन करने के लिए किया जाता है। इनके विवरण निम्न प्रकार से हैं:
(1) Date और Time फंक्शन - ये फंक्शन दिनांक और समय से संबंधित गणनाओं के लिए उपयोग किए जाते हैं।
| फंक्शन | विवरण |
|---|---|
| ADDDATE () | Date को जोड़ता है। |
| ADDTIME () | Time को जोड़ता है। |
| CURDATE () | यह वर्तमान Date return करता है। |
| CURTIME () | यह वर्तमान Time return करता है। |
| DATE_SUB () | यह दो Dates को घटाता है। |
| NOW () | यह वर्तमान Date व Time देता है। |
| STR_TO_DATE () | यह स्ट्रिंग को Date में परिवर्तित करता है। |
(2) स्ट्रींग (String) फंक्शन - ये फंक्शन स्ट्रिंग वैल्यूज पर विभिन्न ऑपरेशन करने के लिए उपयोग किए जाते हैं।
| फंक्शन | विवरण |
|---|---|
| BIN (N) | यह N की बाइनरी वैल्यू का स्ट्रिंग रिप्रजेन्टेशन (representation) देता है। |
| BIT_LENGTH(str) | यह str स्ट्रिंग की लम्बाई (length) बीटस में देगा। |
| CHAR(N) | यह हर आर्ग्यूमेन्ट N को इंटीजर मानकर उसका स्ट्रिंग रिप्रजेन्टेशन देगा। यह स्ट्रिंग उन करेक्टर्स से मिलकर बनेगी जो इंटीजर CHAR (N) में आर्ग्येमेन्ट के तौर पर है। |
| CHAR LENGTH(Sr) | यह Str स्ट्रिंग की लम्बाई करेक्टरस में नापता है। |
| CONCAT (Str1, Str2, ...) | यह आर्ग्यूमेन्ट स्ट्रिंग को concatenate करके प्राप्त स्ट्रिंग को return के तौर पर देता है। |
| FIELD (Str, Str1, Str2,...) | यह Str का इन्डेक्स दी हुई लिस्ट (Str1, Str2, . . .) में से रिटर्न करता है। अगर Str नहीं मिलती तो 0 रिटर्न करता है। |
| LOAD FILE (file name) | यह फंक्शन फाइल को read करे उसके कन्टेन्टस को स्ट्रिंग रूप में देता है। इसके उपयोग के लिए server पर उपस्थित फाइल का पूर्ण path name उल्लेखित करना होता है। |
| REPLACE (Str, from_Str, to Str) | यह Str स्ट्रिंग को उसमें से from_Str की सारी occurrences को to_Str से replace करके रिटर्न करता है। |
SQL फंक्शन्स डाटा को प्रभावी ढंग से प्रबंधित और विश्लेषण करने में महत्वपूर्ण भूमिका निभाते हैं, जिससे विभिन्न प्रकार के ऑपरेशन्स आसान हो जाते हैं।
In simple words: SQL फंक्शन्स विशेष कमांड होते हैं जो हमें तारीख, समय, और टेक्स्ट जैसी चीजों को बदलने या इस्तेमाल करने में मदद करते हैं।
🎯 Exam Tip: विभिन्न प्रकार के फंक्शन्स (जैसे Date/Time, String, Numeric) और उनके विशिष्ट उपयोगों को याद रखना महत्वपूर्ण है, क्योंकि ये डाटा हेरफेर के लिए आवश्यक हैं।
Free study material for Computer Science
RBSE Solutions Class 12 Computer Science Chapter 14 रिलेशनल डाटाबेस की अवधारणायें
Students can now access the RBSE Solutions for Chapter 14 रिलेशनल डाटाबेस की अवधारणायें prepared by teachers on our website. These solutions cover all questions in exercise in your Class 12 Computer Science textbook. Each answer is updated based on the current academic session as per the latest RBSE syllabus.
Detailed Explanations for Chapter 14 रिलेशनल डाटाबेस की अवधारणायें
Our expert teachers have provided step-by-step explanations for all the difficult questions in the Class 12 Computer Science chapter. Along with the final answers, we have also explained the concept behind it to help you build stronger understanding of each topic. This will be really helpful for Class 12 students who want to understand both theoretical and practical questions. By studying these RBSE Questions and Answers your basic concepts will improve a lot.
Benefits of using Computer Science Class 12 Solved Papers
Using our Computer Science solutions regularly students will be able to improve their logical thinking and problem-solving speed. These Class 12 solutions are a guide for self-study and homework assistance. Along with the chapter-wise solutions, you should also refer to our Revision Notes and Sample Papers for Chapter 14 रिलेशनल डाटाबेस की अवधारणायें to get a complete preparation experience.
FAQs
The complete and updated RBSE Solutions Class 12 Computer Science Chapter 14 रिलेशनल डाटाबेस की अवधारणायें is available for free on StudiesToday.com. These solutions for Class 12 Computer Science are as per latest RBSE curriculum.
Yes, our experts have revised the RBSE Solutions Class 12 Computer Science Chapter 14 रिलेशनल डाटाबेस की अवधारणायें as per 2026 exam pattern. All textbook exercises have been solved and have added explanation about how the Computer Science concepts are applied in case-study and assertion-reasoning questions.
Toppers recommend using RBSE language because RBSE marking schemes are strictly based on textbook definitions. Our RBSE Solutions Class 12 Computer Science Chapter 14 रिलेशनल डाटाबेस की अवधारणायें will help students to get full marks in the theory paper.
Yes, we provide bilingual support for Class 12 Computer Science. You can access RBSE Solutions Class 12 Computer Science Chapter 14 रिलेशनल डाटाबेस की अवधारणायें in both English and Hindi medium.
Yes, you can download the entire RBSE Solutions Class 12 Computer Science Chapter 14 रिलेशनल डाटाबेस की अवधारणायें in printable PDF format for offline study on any device.