Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में AND और && ऑपरेटर में अंतर क्या है?

MySQL में AND और && दोनों **लॉजिकल AND** ऑपरेटर हैं और **कार्यात्मक रूप से समान** हैं। एकमात्र अंतर: AND **मानक SQL** है, && **MySQL-विशिष्ट** (स्वामित्व) सिंटैक्स है।

समानता प्रदर्शन

केस 1: दोनों ऑपरेंड 1 (TRUE)

mysql> SELECT 1 AND 1 AS Result;
+--------+
| Result |
+--------+
| 1      |
+--------+

mysql> SELECT 1 && 1 AS Result;
+--------+
| Result |
+--------+
| 1      |
+--------+

केस 2: एक ऑपरेंड 0 (FALSE)

mysql> SELECT 1 AND 0 AS Result;
+--------+
| Result |
+--------+
| 0      |
+--------+

mysql> SELECT 1 && 0 AS Result;
+--------+
| Result |
+--------+
| 0      |
+--------+

केस 3: एक ऑपरेंड NULL

mysql> SELECT NULL AND 1 AS Result;
+--------+
| Result |
+--------+
| NULL   |
+--------+

mysql> SELECT NULL && 1 AS Result;
+--------+
| Result |
+--------+
| NULL   |
+--------+

केस 4: ऋणात्मक संख्याएं (नॉन-जीरो = TRUE)

mysql> SELECT -10 AND -30 AS Result;
+--------+
| Result |
+--------+
| 1      |
+--------+

mysql> SELECT -10 && -30 AS Result;
+--------+
| Result |
+--------+
| 1      |
+--------+

केस 5: ऋणात्मक और 0

mysql> SELECT -10 AND 0 AS Result;
+--------+
| Result |
+--------+
| 0      |
+--------+

mysql> SELECT -10 && 0 AS Result;
+--------+
| Result |
+--------+
| 0      |
+--------+

केस 6: धनात्मक संख्याएं

mysql> SELECT 10 AND 30 AS Result;
+--------+
| Result |
+--------+
| 1      |
+--------+

mysql> SELECT 10 && 30 AS Result;
+--------+
| Result |
+--------+
| 1      |
+--------+

सत्यता तालिका (दोनों के लिए समान)

MySQL में TRUE/FALSE नियम

  • 0 = FALSE
  • NULL = UNKNOWN (FALSE जैसा व्यवहार WHERE में)
  • कोई भी नॉन-जीरो संख्या = TRUE (ऋणात्मक भी)
  • खाली स्ट्रिंग '' = 0 = FALSE
  • नॉन-खाली स्ट्रिंग = TRUE (संदर्भ-निर्भर)

कौन सा उपयोग करें?

ABA AND B / A && B
TRUE (1)TRUE (1)TRUE (1)
TRUE (1)FALSE (0)FALSE (0)
TRUE (1)NULLNULL
FALSE (0)FALSE (0)FALSE (0)
FALSE (0)NULLFALSE (0)
NULLNULLNULL
स्थितिसिफारिश
पोर्टेबल SQL (अन्य DB भी)AND
केवल MySQL एप्लिकेशनदोनों ठीक, AND प्राथमिकता
कोड जनरेशन/ORMAND (मानक)
पुराने MySQL कोडबेस&& मिल सकता है

नोट

  • || और OR का भी यही संबंध है
  • ! और NOT का भी यही संबंध है
  • स्टोर्ड प्रोसीजर में फ्लो कंट्रोल के लिए IF ... THEN ... END IF अलग है
  • बिटवाइज़ AND के लिए & उपयोग करें (लॉजिकल नहीं)
  1. - MySQL और SQL Server के बीच अंतर

    MySQL बनाम SQL Server: विस्तृत तुलना दोनों MySQL और SQL Server लोकप्रिय RDBMS (रिलेशनल डेटाबेस मैनेजमेंट सिस्टम) हैं, लेकिन उनके स्वामित्व, लाइसेंसिंग, वास्तुकला और सुविधाओं में महत्वपूर्ण अंतर हैं। तुलना तालिका क्र.सं. पहलू MySQL SQL Server 1 स्वामित्व/विकास Oracle के स्वामित्व में (मूलतः M

  1. - MySQL में intvalue='1' और intvalue=1 में अंतर

    उत्तर intvalue = 1 उपयोग करें। स्टेटमेंट intvalue = 1 आंतरिक रूप से MySQL द्वारा CAST(1 AS INT) में कन्वर्ट हो जाता है। उदाहरण: टेबल बनाना और डेटा डालना ); Query OK, 0 rows affected (0.64 sec) INSERT INTO DemoTable1566 VALUES(90); Query OK, 1 row affected (0.19 sec) सभी रिकॉर्ड देखना SELECT *

  1. - MySQL में != NULL और IS NOT NULL का अंतर

    NULL तुलना: != NULL बनाम IS NOT NULL MySQL में किसी मान की तुलना !=NULL से करने पर परिणाम NULL होता है, इसलिए !=NULL अर्थहीन है। सही तरीका IS NOT NULL है। टेबल बनाएं और डेटा डालें: mysql> create table DemoTable1970 ( Value int ); Query OK, 0 rows affected (0.00 sec) mysql> insert into DemoTabl