Heim  >  Artikel  >  Datenbank  >  Vertiefendes Verständnis des erweiterten MySQL-Driftings (2)

Vertiefendes Verständnis des erweiterten MySQL-Driftings (2)

黄舟
黄舟Original
2017-03-08 13:52:121431Durchsuche

MySQL unterstützt die gängigsten arithmetischen Operatoren, mit denen wir Berechnungen durchführen können.

"+(Addition), -(Subtraktion), *(Multiplikation), /(Division, Rückgabequotient), %(Division, Rückgaberest)", wie im folgenden Beispiel:

Beachten Sie, dass alle mathematischen Operationen mit ganzen Zahlen mit 64-Bit-Präzision berechnet werden.

Als Zeichenfolgen dargestellte Zahlen werden zur Berechnung nach Möglichkeit automatisch in Zeichenfolgen umgewandelt. Befolgen Sie zwei Konvertierungsprinzipien:

1: Wenn eine Zeichenfolge, deren erste Ziffer eine Zahl ist, in einer arithmetischen Operation verwendet wird, wird sie in den Wert dieser Zahl umgewandelt.
2: Wenn eine Zeichenfolge eine Mischung aus Zeichen und enthält Zahlen Die Zeichenfolge kann nicht korrekt in eine Zahl umgewandelt werden und wird in 0 umgewandelt.

select 1+2;//加法运算,结果为3 
select 2-1;//减法运算,结果为1 
select 3*2;//乘法运算,结果为6 
select 6/2;//除法运算,结果为3 
select 25%7;//除法运算,结果为4 
select 5/0;//除法运算,结果为null,MySQL除法的除数为0是不允许的

Vergleichsoperatoren

Vergleichsoperatoren ermöglichen es uns, die linke und rechte Seite eines Ausdrucks zu vergleichen , das Ergebnis einer Vergleichsoperation ist immer 1 (wahr), 0 (falsch) oder null (undefiniert).



Standardmäßig wird bei Vergleichen die Groß-/Kleinschreibung nicht beachtet. Wir können das Schlüsselwort „binary“ verwenden, um Operationen durchzuführen, bei denen die Groß-/Kleinschreibung beachtet wird Logische Operatoren

Logische Operatoren können die logische Gültigkeit eines oder mehrerer Ausdrücke (oder Ausdruckssätze) testen. Das Ergebnis einer Operation, die diese Operatoren enthält, ist immer 1 (wahr), 0 (falsch) oder null (nicht bestimmbar)
select ‘100’+’004’;//结果为104 
select ‘90AA’+’0’;//结果为90 
select ‘10x’*’qwe’;//结果0
Der einfachste Operator unter den logischen Operatoren ist der Nicht-Operator, also der darauf folgende Operator Das logische Testurteil wird umgekehrt und verwandelt wahr in falsch und falsch in wahr
Wählen Sie nicht 1, nicht 0, nicht (2=2), nicht (100>20);//Das Ergebnis ist 0,1, 0, 1

select 6=6,3.4=4.5,’a’=’b’;//判断两边是否相等 
select 7<>7,7<>8,’a’<>’b’;//判断两边是否不相等 
select 100>100,10<100;//判断左边是否大于右边,左边是否小于右边 
select 10>=100,10<=1;//判断左边是否大于等于右边,左边是否小于等于右边 
select 10 between 0 and 100;//检验一个值是否存在于一个指定的范围内 
select 10 not between 11 and 100;//检验一个值是否不存在于一个指定的范围内 
select 7 in (1,2,3,4,5,6,7,8,9);//检验一个值是否包含在一个指定的值集合中 
select 7 not in (1,2,3,4,5,6,7,8,9);//检验一个值是否不包含在一个指定的值集合中
und der Operator kann die Gültigkeit von zwei oder mehr Werten testen (oder die Ausdrucksauswertung), er gibt true zurück, wenn alle seine Komponenten wahr und nicht null sind, andernfalls gibt er einen falschen Wert zurück

wählen (2=2) und (900
Vertiefendes Verständnis des erweiterten MySQL-Driftings (2) Oder-Operator: Wenn der enthaltene Wert oder Ausdruckswert wahr und nicht null ist, wird ein wahrer Wert zurückgegeben, andernfalls wird ein falscher Wert zurückgegeben.
select (2=2) or (900

MySQL 4.x und höher enthält außerdem einen zusätzlichen xor-Operator, der „true“ zurückgibt, wenn eines (nicht beide) seiner Argumente wahr ist.

select (1=1) xor (2=4),(1



Bitweise OperationsoperatorenVertiefendes Verständnis des erweiterten MySQL-Driftings (2)
Bitweise Operatoren
MySQL enthält 6 Operatoren speziell für Bitoperationen
Der „|“-Operator wird verwendet, um eine bitweise Operation auszuführen, während & verwendet wird, um eine bitweise Operation auszuführen. Vertiefendes Verständnis des erweiterten MySQL-Driftings (2)Fall:
wählen Sie 16|32,9|4;//Das Ergebnis ist 48,13
wählen Sie 30 & 10,8 & 16;//Das Ergebnis ist 10,0
Vertiefendes Verständnis des erweiterten MySQL-Driftings (2)
Sie können Bits auch mit den Operatoren select 1>1;//Das Ergebnis ist 128,32
Vertiefendes Verständnis des erweiterten MySQL-Driftings (2)

^-Operator führt Bit-XOR-Operation aus
select 1^0,0^1 ,17^9,143^66;//Das Ergebnis ist 1,1,24,205


~Der Operator führt eine Bitinversionsoperation durch und gibt ein 64-Bit-Ganzzahlergebnis zurück
select ~18446744073709551614,~ 1 ;
//Das Ergebnis ist 1,18446744073709551614


Vertiefendes Verständnis des erweiterten MySQL-Driftings (2)


Vertiefendes Verständnis des erweiterten MySQL-Driftings (2)

Das obige ist der detaillierte Inhalt vonVertiefendes Verständnis des erweiterten MySQL-Driftings (2). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn