MySQL में "नॉट इक्वल" के लिए <> ऑपरेटर का उपयोग किया जाता है। यह मानक SQL ऑपरेटर है। != भी काम करता है लेकिन <> ANSI SQL मानक है।
सिंटैक्स
SELECT * FROM yourTableName WHERE yourColumnName <> yourValue;
उदाहरण के साथ समझें
टेबल बनाएं:
CREATE TABLE DoesNotEqualDemo (
Id INT NOT NULL AUTO_INCREMENT,
Name VARCHAR(20),
PRIMARY KEY(Id)
);
विभिन्न मानों के साथ रिकॉर्ड डालें (NULL, खाली स्ट्रिंग, सामान्य नाम):
INSERT INTO DoesNotEqualDemo(Name) VALUES(NULL);
INSERT INTO DoesNotEqualDemo(Name) VALUES('John');
INSERT INTO DoesNotEqualDemo(Name) VALUES('Carol');
INSERT INTO DoesNotEqualDemo(Name) VALUES('Bob');
INSERT INTO DoesNotEqualDemo(Name) VALUES(''); -- खाली स्ट्रिंग
INSERT INTO DoesNotEqualDemo(Name) VALUES('Larry');
INSERT INTO DoesNotEqualDemo(Name) VALUES(NULL);
सभी रिकॉर्ड देखें:
SELECT * FROM DoesNotEqualDemo;
आउटपुट:
+----+-------+
| Id | Name |
+----+-------+
| 1 | NULL |
| 2 | John |
| 3 | Carol |
| 4 | Bob |
| 5 | | -- खाली स्ट्रिंग
| 6 | Larry |
| 7 | NULL |
+----+-------+
NULL और खाली स्ट्रिंग दोनों को बाहर करने का क्वेरी
SELECT * FROM DoesNotEqualDemo WHERE Name <> 'NULL' AND Name <> '';
परिणाम:
+----+-------+
| Id | Name |
+----+-------+
| 2 | John |
| 3 | Carol |
| 4 | Bob |
| 6 | Larry |
+----+-------+
महत्वपूर्ण नोट्स
- NULL तुलना:
Name <> NULLकभी TRUE नहीं लौटाता। NULL जांच के लिएIS NULLयाIS NOT NULLउपयोग करें <>और!=दोनों समान काम करते हैं- खाली स्ट्रिंग
''और NULL अलग-अलग हैं - सही तरीका:
WHERE Name IS NOT NULL AND Name <> ''
सही क्वेरी पैटर्न
-- NULL और खाली स्ट्रिंग दोनों को बाहर करने के लिए
SELECT * FROM yourTable
WHERE yourColumn IS NOT NULL
AND yourColumn <> '';