MySQL - true / false-Abfrage, die auf zwei Servern anders lautet

8

Verwirrt mit diesem.

Gleiche Version von MySQL, die auf beiden Servern läuft. (gebaut von genau derselben rpm) - Irgendwo entlang der Linie änderte irgendein Entwickler etwas ...

Server 1:

%Vor%

Server 2:

%Vor%

Beide Server:

%Vor%     
user3068015 04.12.2013, 23:31
quelle

1 Antwort

2

Sie sollten den HIGH_NOT_PRECEDENCE -Operator überprüfen.

In der offiziellen Dokumentation heißt es:

  

Der Vorrang des NOT-Operators ist so, dass Ausdrücke wie NOT a BETWEEN b UND c als NICHT geparst werden (a BETWEEN b AND c). In einigen älteren Versionen von MySQL wurde der Ausdruck als (NICHT a) BETWEEN b UND c geparst. Das alte Verhalten mit höherer Priorität kann durch Aktivieren des SQL-Modus HIGH_NOT_PRECEDENCE erhalten werden.

Fiedel, um dieses Verhalten hier zu testen.

Ich würde übrigens empfehlen, x != y zu vergleichen und nicht not (x = y) .

    
Mosty Mostacho 04.12.2013, 23:39
quelle

Tags und Links