Einen Wert zurückgeben, auch wenn keine Zeile gefunden wird
In MySQL kann das Abrufen eines Werts für eine bestimmte ID eine leere Ergebnismenge zurückgeben, wenn die ID existiert nicht. Um immer einen Wert abzurufen, können Sie die Funktion IFNULL() nutzen.
Die Funktion IFNULL() benötigt zwei Argumente: den auszuwertenden Ausdruck und den zurückzugebenden Wert, wenn der Ausdruck null ist. Im bereitgestellten Beispiel möchten Sie das Feld1 zurückgeben, wenn es vorhanden ist, oder „nicht gefunden“, wenn es nicht vorhanden ist.
Sie können diese Funktion mit der folgenden Syntax auf die gesamte Abfrage anwenden:
SELECT IFNULL( (SELECT field1 FROM table WHERE id = 123 LIMIT 1) ,'not found');
Diese einzelne Abfrageanweisung vermeidet die doppelte Ausführung derselben Unterabfrage wie in der ursprünglichen Lösung. Es gibt den gewünschten Wert effizient zurück und stellt sicher, dass Ihr Code immer eine Antwort hat.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3