SQL Operators
SQL (Structured Query Language) एक powerful language है जिसका उपयोग databases को manage करने के लिए किया जाता है। SQL में Operators का उपयोग conditions लगाने, values compare करने, calculations करने और logical operations करने के लिए किया जाता है।
इस ब्लॉग में हम सभी important SQL Operators को detail में समझेंगे:
1- SQL Arithmetic Operators
2- SQL Bitwise Operators
3- SQL Comparison Operators
4- SQL Compound Operators
5- SQL Logical Operators
6- Special Operators
1. 🧮 SQL Arithmetic Operators
ये operators arithmetic calculations के लिए use होते हैं जैसे जोड़, घटाव, गुणा, भाग आदि।
🧮 A. Addition (+) - जोड़
यह operator दो संख्याओं को आपस में जोड़ता है।
📌 Syntax: SELECT number1 + number2;
📘 Example: SELECT 10 + 5 AS Result;
🧾 Output: 15
👉 इसका उपयोग आप किसी table के दो column को जोड़ने के लिए भी कर सकते हैं:
SELECT price + tax AS TotalAmount FROM products;
➖ B. Subtraction (-) - घटाव
यह operator एक संख्या को दूसरी संख्या से घटाता है।
📌 Syntax: SELECT number1 - number2;
📘 Example:SELECT 10 - 5 AS Result;
🧾 Output: 5
👉 Table के दो values में से एक को घटाने के लिए:
SELECT selling_price - cost_price AS Profit FROM products;
✖️ C. Multiplication (*) - गुणा
यह operator दो संख्याओं को गुणा करता है।
📌 Syntax: SELECT number1 * number2;
📘 Example: SELECT 10 * 5 AS Result;
🧾 Output: 50
👉 यह उपयोगी होता है जब आपको किसी quantity और rate से total price निकालना हो:
SELECT quantity * price_per_unit AS TotalPrice FROM orders;
➗ D. Division (/) - भाग
यह operator पहली संख्या को दूसरी संख्या से divide करता है।
📌 Syntax: SELECT number1 / number2;
📘 Example: SELECT 10 / 5 AS Result;
🧾 Output: 2
👉 Database में average निकालने के लिए इसका उपयोग किया जा सकता है:
SELECT total_marks / subjects AS Average FROM student_results;
⚠️ Note: Division में यह ध्यान रखें कि zero से divide करने की कोशिश ना करें, वरना error आएगा।
🔢 E. Modulus (%) - शेषफल
यह operator पहली संख्या को दूसरी से divide करता है और जो remainder (शेष) बचता है, उसे return करता है।
📌 Syntax: SELECT number1 % number2;
📘 Example: SELECT 10 % 3 AS Result;
🧾 Output: 1
(क्योंकि 10 को 3 से divide करने पर 3*3 = 9 और remainder बचता है 1)
👉 इसका उपयोग odd-even check करने में किया जाता है:
SELECT number, CASE WHEN number % 2 = 0 THEN 'Even' ELSE 'Odd' END AS Type FROM numbers;
SQL Arithmetic Operators आपको database में गणितीय logic लागू करने की ताकत देते हैं। चाहे वो calculation हो, बिल बनाना हो, profit/loss निकालना हो या averages – ये सब इन operators की मदद से आसानी से किया जा सकता है।
2. 🧠 SQL Bitwise Operators
Bitwise operators binary level पर operations perform करते हैं।
Bitwise Operators का उपयोग तब किया जाता है जब हमें दो numbers के binary representation (बाइनरी रूप) पर काम करना होता है। ये operators हर bit पर individually काम करते हैं।
SQL में Bitwise Operators का support ज़्यादातर SQL Server और कुछ अन्य databases में होता है।
✅ Bitwise Operators की सूची और उनका विवरण:
A. & Bitwise AND
SELECT 5 & 3 AS Result;
Explanation:
5 = 0101
3 = 0011
AND = 0001 → 1
✅ Output: 1
B. | Bitwise OR
SELECT 5 | 3 AS Result;
Explanation:
5 = 0101
3 = 0011
OR = 0111 → 7
✅ Output: 7
C. ^ Bitwise XOR
SELECT 5 ^ 3 AS Result;
Explanation:
5 = 0101
3 = 0011
XOR = 0110 → 6
✅ Output: 6
D. ~ Bitwise NOT
SELECT ~5 AS Result;
Explanation:
यह हर bit को उल्टा कर देता है।
Binary (32-bit signed integer assumption):
5 = 00000000 00000000 00000000 00000101
~5 = 11111111 11111111 11111111 11111010 → -6 (Two's complement format)
✅ Output: -6
E. << Left Shift
SELECT 5 << 1 AS Result;
Explanation:
5 = 0101
After left shift by 1 = 1010 → 10
✅ Output: 10
(हर shift से मान *2 होता है)
F. >> Right Shift
SELECT 5 >> 1 AS Result;
Explanation:
5 = 0101
After right shift by 1 = 0010 → 2
✅ Output: 2
(हर shift से मान /2 होता है)
3. 🔍 SQL Comparison Operators
SQL में Comparison Operators का उपयोग दो मानों (values) को एक-दूसरे से तुलना (compare) करने के लिए किया जाता है। ये ऑपरेटर्स आमतौर पर WHERE clause में उपयोग होते हैं ताकि records को filter किया जा सके — जैसे कौन से students के marks 90 से ज़्यादा हैं, कौन से बराबर हैं, आदि।
A. = Equal To (बराबर)
यह operator check करता है कि कोई value किसी विशेष मान के बराबर है या नहीं।
📘 Example:
SELECT * FROM students WHERE marks = 90;
➡️ यह query उन students को लाएगी जिनके marks बिल्कुल 90 हैं।
B. != or <> Not Equal To (बराबर नहीं)
यह check करता है कि value किसी दिए गए मान से अलग है या नहीं।
📘 Example:
SELECT * FROM students WHERE marks != 90;
या
SELECT * FROM students WHERE marks <> 90;
➡️ यह query उन students को लाएगी जिनके marks 90 से अलग हैं।
✅ != और <> दोनों का मतलब एक ही होता है — दोनों "not equal to" दर्शाते हैं।
C. > Greater Than (से अधिक)
यह operator चेक करता है कि कोई value किसी विशेष मान से बड़ी है या नहीं।
📘 Example:
SELECT * FROM students WHERE marks > 90;
➡️ यह query उन students को लाएगी जिनके marks 90 से ज्यादा हैं।
D. < Less Than (से कम)
यह operator check करता है कि कोई value किसी विशेष मान से छोटी है या नहीं।
📘 Example:
SELECT * FROM students WHERE marks < 90;
➡️ यह query उन students को लाएगी जिनके marks 90 से कम हैं।
E. >= Greater Than or Equal To (से अधिक या बराबर)
यह operator check करता है कि कोई value किसी विशेष मान के बराबर या उससे बड़ी है या नहीं।
📘 Example:
SELECT * FROM students WHERE marks >= 90;
➡️ यह query उन students को लाएगी जिनके marks 90 या उससे अधिक हैं।
F. <= Less Than or Equal To (से कम या बराबर)
यह operator check करता है कि कोई value किसी विशेष मान के बराबर या उससे कम है या नहीं।
📘 Example:
SELECT * FROM students WHERE marks <= 90;
➡️ यह query उन students को लाएगी जिनके marks 90 या उससे कम हैं।
🧠 प्रैक्टिकल उपयोग (Practical Use)
SQL Comparison Operators का उपयोग बहुत common है जब हम किसी डेटाबेस से विशेष डेटा खोजना चाहते हैं, जैसे:
[i] पास हुए students (marks >= 40)
[ii] टॉपर्स (marks > 90)
[iii] Fail हुए students (marks < 33)
[iv] Specific grade वाले students (grade = 'A')
✅ नोट्स:
[i] सभी Comparison Operators केवल numeric ही नहीं बल्कि string, date, और अन्य data types के लिए भी काम करते हैं।
[ii] आप इन Operators को WHERE, HAVING, CASE statements आदि में इस्तेमाल कर सकते हैं।
4. 🔗 SQL Compound Operators
Compound operators assignment के साथ-साथ arithmetic operations perform करते हैं।
Compound Operators का उपयोग एक ही statement में Arithmetic Operation के साथ Assignment करने के लिए किया जाता है। इन ऑपरेटर्स की मदद से हम value को modify करने के लिए अलग से variable या column को update किए बिना एक ही command में जोड़, घटाव, गुणा, या भाग कर सकते हैं।
A. += Add and Assign (जोड़ और असाइन)
यह operator पहले दिए गए value में एक और value जोड़ता है और फिर परिणाम को वही value assign कर देता है।
📘 Example: SET salary += 500;
यह command salary में 500 जोड़कर उसे वही updated value assign कर देगी। यदि पहले salary 2000 थी, तो अब वह 2500 हो जाएगी।
🔄 Explanation: salary = salary + 500
इसे हम increment (बढ़ाना) कह सकते हैं।
B. -= Subtract and Assign (घटाव और असाइन)
यह operator किसी value से एक और value को घटाता है और फिर परिणाम को वही value assign कर देता है।
📘 Example: SET marks -= 10;
यह command marks में से 10 घटाकर उसे वही updated value assign कर देगी। यदि पहले marks 80 थे, तो अब वह 70 हो जाएंगे।
🔄 Explanation:
[i] marks = marks - 10
[ii] इसे हम decrement (घटाना) कह सकते हैं।
C. *= Multiply and Assign (गुणा और असाइन)
यह operator किसी value को एक और value से गुणा करता है और फिर परिणाम को वही value assign कर देता है।
📘 Example: SET bonus *= 2;
यह command bonus को 2 से गुणा करके उसे वही updated value assign कर देगी। यदि पहले bonus 100 था, तो अब वह 200 हो जाएगा।
🔄 Explanation:
[i] bonus = bonus * 2
[ii] इसका उपयोग तब किया जाता है जब हमें किसी value को multiply करके result assign करना हो।
D. /= Divide and Assign (भाग और असाइन)
यह operator किसी value को एक और value से divide करता है और फिर परिणाम को वही value assign कर देता है।
📘 Example: SET amount /= 2;
यह command amount को 2 से divide करके उसे वही updated value assign कर देगी। यदि पहले amount 1000 था, तो अब वह 500 हो जाएगा।
🔄 Explanation:
[i] amount = amount / 2
[ii] इसका उपयोग तब किया जाता है जब हमें किसी value को divide करके result assign करना हो।
💡 कंपाउंड ऑपरेटर्स का Practical Use
Compound Operators का उपयोग डेटाबेस में विशेष रूप से तब किया जाता है जब हम किसी column या variable को update करना चाहते हैं बिना इसे बार-बार reference किए। इनका प्रयोग तब होता है:
[i] Salary Update: जब किसी employee की salary में increment करना हो।
[ii] Grades Update: जब student के marks में कुछ points add या subtract करने हो।
[iii] Stock Prices: जब किसी product की price में adjustments करनी हों।
SQL में Compound Operators का उपयोग बहुत सुविधाजनक होता है, क्योंकि यह हमें values को update करने का तरीका आसान बनाता है। इससे हमारे queries कम लंबी होती हैं और पढ़ने में भी आसान रहती हैं।
5. 🤔 SQL Logical Operators
Logical operators multiple conditions को combine करने के लिए use होते हैं।
SQL में Logical Operators का उपयोग multiple conditions को एक साथ check करने के लिए किया जाता है। जब हमें किसी query में एक से ज़्यादा conditions को combine करना होता है — जैसे कि "marks भी ज़्यादा हो और grade भी अच्छा हो", तब हम इन logical operators का उपयोग करते हैं।
🔹 A. AND – और (दोनों शर्तें पूरी होनी चाहिए)
यह operator तब TRUE होता है जब दोनों conditions सही (true) हों।
यदि किसी एक भी condition का result false है, तो पूरा परिणाम false होगा।
📘 Example: SELECT * FROM students WHERE marks > 70 AND grade = 'A';
✅ मतलब:
[i]marks > 70 होना चाहिए
[ii]और grade = 'A' भी होना चाहिए तभी उस student की information result में आएगी।
🔹 B. OR – या (कम से कम एक शर्त सही होनी चाहिए)
यह operator तब TRUE होता है जब कम से कम कोई एक condition सही हो।
यदि दोनों false हैं तभी result false होगा।
📘 Example: SELECT * FROM students WHERE grade = 'A' OR grade = 'B';
✅ मतलब:
[i] अगर student का grade 'A' है, या
[ii] grade 'B' है तो वह student result में दिखाई देगा।
🔹 C. NOT – नहीं (शर्त को उल्टा कर देता है)
यह operator किसी condition का उल्टा (negate) करता है।
यदि कोई condition true है, तो NOT उसे false बना देता है और vice versa।
📘 Example: SELECT * FROM students WHERE NOT grade = 'F';
✅ मतलब:
वह students दिखेंगे जिनका grade 'F' नहीं है।
यह operator बहुत काम का है जब आपको कुछ exclude (बाहर निकालना) हो — जैसे fail हुए students, या किसी specific category को छोड़कर सभी को देखना हो।
✅ प्रैक्टिकल इस्तेमाल
Combine multiple filters:
SELECT * FROM employees WHERE age > 30 AND city = 'Delhi';
Search in multiple categories:
SELECT * FROM books WHERE genre = 'Fiction' OR genre = 'Science';
Exclude something:
SELECT * FROM orders WHERE NOT status = 'Cancelled';
Logical Operators आपके SQL queries को ज़्यादा power और flexibility देते हैं। इनसे आप complex filters बहुत ही सरल तरीक़े से बना सकते हैं।
6. ⭐ Special Operators
बिलकुल! अब आइए हम SQL के Special Operators को विस्तार से समझते हैं। ये operators विशेष परिस्थितियों (specific scenarios) में बहुत उपयोगी होते हैं — जैसे जब हमें एक से ज़्यादा मान चेक करने हों, कोई पैटर्न match करना हो, या NULL values के साथ काम करना हो।
🔹 A. IN Operator – एक से अधिक values को check करने के लिए
IN का उपयोग तब किया जाता है जब आपको check करना होता है कि कोई value एक दिए गए list में मौजूद है या नहीं।
📘 Example: SELECT * FROM students WHERE city IN ('Delhi', 'Mumbai');
✅ मतलब:
यह query उन students को दिखाएगी जिनका city ‘Delhi’ या ‘Mumbai’ है।
🔍 IN operator को कई OR conditions के बदले में use किया जाता है:
-- Without IN:
WHERE city = 'Delhi' OR city = 'Mumbai' OR city = 'Pune';
-- With IN:
WHERE city IN ('Delhi', 'Mumbai', 'Pune');
🔹 B. BETWEEN Operator – किसी range (सीमा) में value check करने के लिए
BETWEEN का उपयोग तब किया जाता है जब आप यह जांचना चाहते हैं कि कोई value दो सीमाओं के बीच है या नहीं। यह दोनों ends को include करता है।
📘 Example:
SELECT * FROM students WHERE marks BETWEEN 60 AND 80;
✅ मतलब:
यह query उन students को दिखाएगी जिनके marks 60 से 80 के बीच हैं, यानी 60 और 80 भी शामिल हैं।
🔍 यह ज्यादा readable होता है बनिस्बत:
WHERE marks >= 60 AND marks <= 80
🔹 C. LIKE Operator – Pattern matching (pattern से मिलान) के लिए
LIKE का उपयोग तब किया जाता है जब आपको partial match की ज़रूरत होती है — जैसे कोई नाम 'A' से शुरू होता है या किसी नाम में 'ram' शामिल है।
📘 Example:
SELECT * FROM students WHERE name LIKE 'A%';
✅ मतलब:
यह query उन students को दिखाएगी जिनका नाम ‘A’ से शुरू होता है, जैसे: Amit, Anjali, Arun आदि।
🔤 LIKE में Wildcards:
[i] % : कोई भी संख्या में characters (zero या ज्यादा)
[ii] _ : केवल एक character
📘 More Examples:
-- Name ends with 'n'
SELECT * FROM students WHERE name LIKE '%n';
-- Name has 'an' in it
SELECT * FROM students WHERE name LIKE '%an%';
-- Name has exactly 4 letters and starts with ‘R’
SELECT * FROM students WHERE name LIKE 'R___';
🔹 D. IS NULL Operator – NULL values को check करने के लिए
SQL में NULL का मतलब होता है: कोई मान मौजूद नहीं है (missing/blank value)
इसलिए हम NULL values को = से compare नहीं कर सकते।
📘 Example:
SELECT * FROM students WHERE age IS NULL;
✅ मतलब:
यह query उन students को दिखाएगी जिनकी age की जानकारी मौजूद नहीं है (यानि age column NULL है)।
🔁 अगर आप NULL नहीं वाले records निकालना चाहते हैं:
SELECT * FROM students WHERE age IS NOT NULL;
Special Operators SQL में searches को अधिक प्रभावशाली और readable बनाते हैं। ये operators real-world scenarios में बहुत बार काम आते हैं जैसे:
[i] Specific cities में रहने वाले students filter करना
[ii] Score range में students निकालना
[iii] नाम से search करना
[iv] Missing data (NULL) को check करना
SQL Operators आपके queries को ज़्यादा powerful और flexible बनाते हैं। चाहे आपको simple calculation करनी हो या complex condition check करनी हो, SQL operators हर situation में काम आते हैं।
👉 Tip for Students: Practice each type of operator with real SQL queries in a local database or platforms like MySQL, SQL Server, or SQLite Playground.
Comments
Post a Comment