Vorwort Wir wissen bereits, dass MySQL den SQL-Befehl „SELECT“ und die WHERE-Klausel verwendet, um Daten aus einer Tabelle zu lesen. Wenn das angegebene Abfragebedingungsfeld jedoch NULL ist, funktioniert der Befehl möglicherweise nicht ordnungsgemäß. Um mit dieser Situation umzugehen, bietet MySQL drei Hauptoperatoren:
Bedingte Vergleichsoperationen auf NULL sind etwas Besonderes. Sie können = NULL oder != NULL nicht verwenden, um nach NULL-Werten in einer Spalte zu suchen. In MySQL gibt ein Vergleich eines NULL-Werts mit einem beliebigen anderen Wert (auch NULL) immer „false“ zurück, d. h., NULL = NULL gibt „false“ zurück. MySQL verarbeitet NULL mit den Operatoren IS NULL und IS NOT NULL. Ich migriere derzeit ein Projekt von Oracle nach MySQL. Dabei stieß ich auf einige Oracle-Funktionen, die MySQL nicht bietet. Daher musste ich die Funktionen anpassen oder einen Weg finden, die Funktionen für die Transformation zu ersetzen. Wenn Oracle Daten sortiert, kann es manchmal „Nullen zuerst“ oder „Nullen zuletzt“ verwenden, um Nullwerte an den ersten oder letzten Platz zu setzen. Oracle-Methode: Nullwerte werden zuerst sortiert select * from A order by a desc null first Nullwerte werden zuletzt sortiert select * from A order by a desc null last Wenn Sie jedoch zu MySQL migrieren, bietet MySQL keine ähnliche Funktion. Wie können Sie sie also implementieren? Hier ist die Lösung: Nullwerte werden zuletzt sortiert, wobei die IF- und ISNULL-Funktionen von MySQL verwendet werden. Wenn es leer ist, gibt es 1 zurück, andernfalls 0 wähle * aus A, sortiert nach WENN(ISNULL(a),1,0),a desc Nullwerte werden zuerst sortiert, wobei die IF- und ISNULL-Funktionen von MySQL verwendet werden. Wenn es leer ist, gibt es 1 zurück, andernfalls 0 wähle * aus A, sortiert nach WENN(ISNULL(a),0,1),a desc Wenn in mybatis Oracle- und MySQL-Versionen benötigt werden, können Sie entweder einen Datentabellenversionsbezeichner dbType aus dem Hintergrund übergeben oder direkt die _databaseId-Methode von mybatis verwenden. <wenn test="dbType=='oracle'"> Sortieren nach c.create_date desc nulls letzte </if> <if test="dbType=='mysql'"> Sortieren nach IF(ISNULL(c.create_date),1,0), c.create_date desc </if> Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Das könnte Sie auch interessieren:
|
<<: Diagramm des Tutorials zur Installation der Version VMware 15.5 unter Windows_Server_2008_R2
>>: Detaillierte Erklärung der Verwendung von SetUp- und Reactive-Funktionen in Vue3
Zuvor wurde unter https://www.jb51.net/article/20...
Inhaltsverzeichnis Vorwort Lösung: Schritt 1 Schr...
Inhaltsverzeichnis Vorwort Was ist VueUse Einfach...
Einfaches Beispiel für die Leistungsoptimierung v...
Früher wurden manche Alarme aus verschiedenen Grü...
Was ist eine Transaktion? Eine Transaktion ist ei...
1. Datenbanken und Datenbankinstanzen Beim Studiu...
Dieser Artikel stellt vor, wie Sie durch Instanzi...
Erste Methode Alibaba Cloud- und Baidu Cloud-Serv...
Ich erinnere mich, dass mir bei meinem Vorstellun...
Fragen zu Select-Elementen in HTML wurden an viel...
1. Zweck: Machen Sie den Code leichter wartbar un...
In diesem Artikel finden Sie den spezifischen Cod...
Inhaltsverzeichnis MySQL initialisieren MySQL-Die...
CenOS6.7 installiert MySQL8.0.22 (empfohlene Samm...