Lösung für das MySQL IFNULL-Beurteilungsproblem

Lösung für das MySQL IFNULL-Beurteilungsproblem

Problem: Die von mybatis zurückgegebenen Daten vom Typ Null verschwinden und verursachen Fehler in der Frontend-Anzeige

Idee: Wenn das Abfrageergebnis ein Nullwert ist, sollte es in einen leeren String umgewandelt werden. Natürlich kann die Beurteilung auch am Frontend erfolgen, aber diese Funktion muss im Hintergrund implementiert werden.

Lösung:

Verwenden Sie zum Abfragen die folgende Methode:

SELECT IFNULL(sex,'') AS sex FROM user – Wenn der Geschlechtswert null ist, wird ihm eine leere Zeichenfolge zugewiesen.

Wenn die Abfrageanweisung selbst jedoch null ist, ist die an das Front-End zurückgegebene Information immer noch null. Dies muss im Code ermittelt werden.
Zum Beispiel:

SELECT IFNULL(Geschlecht,'') AS Geschlecht FROM Benutzer WHERE id=100

Das Rückgabeergebnis dieser Anweisung selbst ist null, daher wird die IFNULL-Funktion nicht ausgeführt und das endgültige Rückgabeergebnis ist natürlich null.

Mein Ansatz besteht also darin, Urteile in den Code einzufügen:

wenn(ansList == null || ansList.size() == 0){...}

MYSQL IFNULL(expr1,expr2)-Funktion

Wenn expr1 nicht NULL ist, gibt IFNULL() expr1 zurück, andernfalls gibt es expr2 zurück. IFNULL() gibt je nach Kontext, in dem es verwendet wird, einen numerischen oder Zeichenfolgewert zurück.

mysql> wähle IFNULL(1,0);  
           -> 1  
mysql> wähle IFNULL(0,10);  
           -> 0  
mysql> wähle IFNULL(1/0,10);  
           -> 10  
mysql> wähle IFNULL(1/0,ja);  
           -> ja

WENN(Ausdruck1,Ausdruck2,Ausdruck3) Funktion

Wenn expr1 WAHR ist (expr1<>0 und expr1<>NULL), dann gibt IF() expr2 zurück, andernfalls expr3. IF() gibt je nach Kontext, in dem es verwendet wird, einen Zahlen- oder Zeichenfolgewert zurück.

mysql> auswählen WENN(1>2,2,3);  
           -> 3  
mysql> auswählen WENN(1<2,ja,nein);  
           -> ja  
mysql> auswählen, WENN (strcmp (Test, Test1), ja, nein);  
           -> nein  
  
expr1 wird als ganzzahliger Wert ausgewertet. Dies bedeutet, dass Sie beim Testen eines Gleitkomma- oder Zeichenfolgenwerts einen Vergleichsoperator verwenden sollten.    
  
mysql> auswählen WENN(0,1,1,0);  
           -> 0  
mysql> auswählen WENN(0,1<>0,1,0);  
           -> 1

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Lösungen für ungültige Nullsegmentbeurteilungen und IFNULL()-Fehler in MySql
  • Zusammenfassung der Wissenspunkte im Zusammenhang mit Null (IFNULL, COALESCE und NULLIF) in MySQL
  • Detaillierte Erklärung der Funktionen IFNULL() und COALESCE() zum Ersetzen von Null in MySQL
  • Eine kurze Erläuterung der ifnull()-Funktion ähnlich der nvl()-Funktion in MySQL
  • Detaillierte Erklärung der Verwendung von IFNULL, NULLIF und ISNULL in MySql
  • Eine kurze Erläuterung der Verwendung der ISNULL-Funktion von SQL Server und der IFNULL-Funktion von MySQL
  • Einführung in den Unterschied zwischen IFNULL, IF und CASE in MySQL
  • Anweisungen zur verschachtelten Verwendung von MySQL ifnull

<<:  So kommunizieren Sie mit anderen Benutzern über die Linux-Befehlszeile

>>:  Detaillierte Erklärung zum Anpassen des Linux-Befehlsverlaufs

Artikel empfehlen

Beispielanalyse zum Beheben von Problemen in historischen Linux-Images

Fix für Probleme mit historischen Linux-Images De...

So erstellen Sie schnell eine statische Website in der Alibaba Cloud

Vorwort: Als Junior-Programmierer träume ich davo...

MySQL 8.0.12 Einfaches Installations-Tutorial

In diesem Artikel finden Sie das Installations-Tu...

Detaillierte Erläuterung des Nginx-Forward-Proxys und des Reverse-Proxys

Inhaltsverzeichnis Weiterleitungsproxy Nginx-Reve...

Bild-Tag für HTML-Webseite

Bild-Tag <IMG> einfügen Die farbenfrohen Web...

Detaillierte Erläuterung des Linux-Textverarbeitungsbefehls sort

sort Den Inhalt einer Textdatei sortieren Verwend...

Das WeChat-Applet ermöglicht horizontales und vertikales Scrollen

In diesem Artikelbeispiel wird der spezifische Co...

So überprüfen Sie, wo die Metadatensperre in MySQL blockiert ist

So überprüfen Sie, wo die Metadatensperre in MySQ...