Es gibt viele Operatoren in MYSQL. In diesem Abschnitt geht es hauptsächlich um die Operatoren, die in MYSQL, aber nicht in SQLSERVER vorhanden sind.
Sicherer Gleichheitsoperator ()
Dieser Operator führt den gleichen Vergleich durch wie der =-Operator, aber kann verwendet werden, um NULL-Werte zu ermitteln.
Wenn beide Operanden NULL sind, ist der Rückgabewert 1 statt NULL.
Wenn ein Operand NULL ist, ist der Rückgabewert 0 statt NULL.
Das Folgende sind die Ausführungsergebnisse von SELECT NULL 1 SELECT 10 SELECT NULL NULL
Wenn beide Operanden NULL sind, erfolgt die Rückgabe Wert ist 1 und nicht NULL;
LEAST-Operator
Die Syntax Das Format lautet: LEAST (Wert 1, Wert 2, ... Wert n), wobei der Wert n angibt, dass die Parameterliste n Werte enthält. Bei zwei oder mehr Argumenten wird der Mindestwert zurückgegeben.
Wenn eine unabhängige Variable NULL ist, ist der Rückgabewert von LEAST() NULL
Verwenden Sie den LEAST-Operator, um die Größe zu bestimmen. Die SQL-Anweisung lautet wie folgt:
Wie Sie den Ergebnissen entnehmen können, gibt LEAST den kleinsten Wert zurück, wenn der Parameter eine Ganzzahl oder eine Gleitkommazahl ist.
Wenn der Parameter eine Zeichenfolge ist, den alphabetischen Die Reihenfolge wird in den Zeichen der höchsten Reihenfolge zurückgegeben.
Wenn die Vergleichswertliste NULL enthält, kann die Größe nicht bestimmt werden und der Rückgabewert ist NULL
GREATEST-Operator
Das Syntaxformat ist: GREATEST(Wert 1, Wert2,...Wert), wobei n bedeutet, dass die Parameterliste n Werte enthält.
Gibt bei zwei oder mehr Argumenten den Maximalwert zurück.
Wenn eine unabhängige Variable NULL ist, ist der Rückgabewert von GREATEST() NULL
Verwenden Sie den GREATEST-Operator, um die Größe zu bestimmen. Die SQL-Anweisung lautet wie folgt:
Wie Sie den Ergebnissen entnehmen können, gibt GREATEST den größten Wert zurück, wenn der Parameter eine Ganzzahl oder eine Gleitkommazahl ist.
Wenn der Parameter eine Zeichenfolge ist, den niedrigsten Die Reihenfolge der Zeichen wird zurückgegeben.
Wenn in der Vergleichswertliste NULL steht, kann die Größe nicht bestimmt werden und der Rückgabewert ist NULL
REGEXP-Operator
verfügt über keine regulären Funktionen oder Operationen in SQLSERVER. Ja, MYSQL ist in dieser Hinsicht tatsächlich relativ vollständig. Das Syntaxformat lautet: expr REGEXP-Übereinstimmungsbedingungen. 1 wird zurückgegeben;
Wenn dies nicht der Fall ist, wird 0 zurückgegeben.
Wenn entweder Ausdruck oder Übereinstimmungsbedingung NULL ist, ist das Ergebnis NULL
Mehrere häufig verwendete Platzhalter:
(1) '^' entspricht einer Zeichenfolge, die mit dem Zeichen beginnt, das diesem Zeichen folgt
(2) '$' entspricht einer Zeichenfolge, die mit einem Zeichen endet, das diesem Zeichen folgt
( 3) '.' entspricht jedem einzelnen Zeichen
(4) '[...]' entspricht jedem Zeichen in eckigen Klammern. „[abc]“ entspricht beispielsweise a, b oder c. Der Zeichenbereich
kann ein „-“ enthalten, „[a-z]“ entspricht jedem Buchstaben und „[0-9]“ entspricht jeder Zahl.
(5) „*“ entspricht Null ein oder mehrere Zeichen davor. Beispielsweise entspricht „x*“ einer beliebigen Anzahl von „*“-Zeichen, „[0-9]*“ einer beliebigen Anzahl von Ziffern,
und „.*“ einer beliebigen Anzahl beliebiger Zeichen.
Verwenden Sie den REGEXP-Operator, um String-Matching-Operationen durchzuführen. Die SQL-Anweisung lautet wie folgt:
'^s' bedeutet die Übereinstimmung mit jeder Zeichenfolge, die mit dem Buchstaben s beginnt, sodass die Übereinstimmungsbedingung erfüllt ist und 1 zurückgegeben wird.
'y$' bedeutet die Übereinstimmung mit jeder Zeichenfolge, die mit dem Buchstaben y endet Daher ist die Übereinstimmungsbedingung erfüllt und es wird 1 zurückgegeben.
'^s ' bedeutet Übereinstimmung mit jeder Zeichenfolge, die mit dem Buchstaben s beginnt, sodass die Übereinstimmungsbedingung erfüllt ist und 1 zurückgegeben wird.
'[ab]' bedeutet Übereinstimmung mit jeder Zeichenfolge, die den Buchstaben a enthält oder b, und es gibt keinen Buchstaben a in der angegebenen Zeichenfolge. Es gibt keinen Buchstaben b, daher ist die Übereinstimmungsbedingung nicht erfüllt und 0 wird zurückgegeben.
TIPPS: Reguläre Ausdrücke sind ein leistungsstarkes Werkzeug für komplexe Abfragen Mit dem LIKE-String-Matching können sie mehr Platzhaltertypen verwenden.
Abfrageergebnisse sind flexibler.
Logischer Operator
Logischer UND-Operator: UND oder &&
Logischer ODER-Operator: ODER oder ||
Die beiden oben genannten Operatoren sind nicht zu erwähnen
In SQLSERVER ist der AND-Operator AND oder &; der OR-Operator ist OR oder |
http://sqlfool.com/2009/02/bitwise-operations/
Exklusiver ODER-Operator: , das Rückgabeergebnis ist 0;
Wenn einer 0 und der andere nicht 0 ist, ist das Rückgabeergebnis 1
Verwenden Sie den Exklusiv-ODER-Operator XOR Treffen Sie logische Urteile. Die SQL-Anweisung lautet wie folgt:
Sie können aus den Ergebnissen ersehen, dass die Operanden auf beiden Seiten der Operatoren „1 XOR 1“ und „0 XOR“ sind 0' sind beide Werte ungleich Null, oder beide sind Nullwerte, also Gibt 0 zurück;
'1 Ein Operand ist NULL und das Rückgabeergebnis ist NULL; 1‘ hat mehrere Operanden und die Operatoren sind gleich, daher werden die Operatoren von links nach rechts berechnet, ‚1 XOR 1‘ Das Ergebnis ist 0, und dann wird die XOR-Operation mit 1 durchgeführt, also ist das Ergebnis 1.
TIPPS: Die Berechnung eines Verwendeten, hier nur eine kurze Einführung
Bitoperatoren werden verwendet, um Bits in Binärbytes zu testen, zu verschieben oder zu testen
Die bereitgestellten Bitoperationen in MYSQL sind
Bitweises ODER (|)
Bitweises UND (&)
Bitweises XOR (^)
Bitweise Linksverschiebung (
Bitweise Rechtsverschiebung (>>)
Bitweise Inversion (~): Alle Bits invertieren
TIPPS: Sie können BIN()=binary verwenden. Die Funktion prüft die binäre Darstellung einer Dezimalzahl
Zum Beispiel die Zahl 20 SELECT BIN(20)
Die binäre Darstellung ist: 10100
In ähnlicher Weise verfügt auch SQLServer über bitweise Operatoren, jedoch nicht so viele wie MySQL, wie folgt
Besondere Tipps
Einige Sonderzeichen in MYSQL erfordern möglicherweise Escape-Zeichen in die Datenbank eingefügt werden, da sonst unerwartete Ergebnisse auftreten.
Den folgenden Sonderzeichen muss bei der Eingabe ein Backslash vorangestellt werdenDie Eingabe von einfachen Anführungszeichen erfordert: 'Die Eingabe von doppelten Anführungszeichen erfordert: "
Eingeben Backslash: \
Wagenrücklauf eingeben: r
Zeilenumbruch eingeben: n
Tabulatortaste eingeben: Tab
Rücktaste eingeben: b
Achten Sie darauf, diese Sonderzeichen zu maskieren, bevor Sie sie in die Datenbank einfügen
In SQLSERVER wird diesen Sonderzeichen kein Backslash, sondern einfache Anführungszeichen vorangestellt.
Fügen Sie beispielsweise ein ein einfaches Anführungszeichen und einen Backslash hinzufügen, und das Einfügen ist erfolgreich
Zusammenfassung
In diesem Abschnitt werden einige Operatoren und Sonderzeichen in MYSQL kurz vorgestellt und die Unterschiede verglichen SQLSERVER
Das Obige ist der Inhalt der MySQL-Lernserie 4: Operatoren. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)