Heim > Datenbank > MySQL-Tutorial > Hauptteil

Wie werden Standardwerte für leere Ergebnismengen in Datenbankabfragen zurückgegeben?

DDD
Freigeben: 2024-10-28 09:45:02
Original
410 Leute haben es durchsucht

How to Return Default Values for Empty Result Sets in Database Queries?

Standardwerte mit leeren Ergebnissätzen zurückgeben

Beim Abfragen einer Datenbank kommt es häufig vor, dass Szenarien behandelt werden, in denen keine passenden Zeilen gefunden werden. Um leere Ergebnisse zu vermeiden, können Sie stattdessen einen Standardwert zurückgeben.

In Ihrem Fall möchten Sie das nächste geplante Element für einen Stream auswählen. Wenn kein Element geplant ist, möchten Sie einen Standardwert, um sicherzustellen, dass der Stream Inhalte abspielt.

Sie haben erfolglos versucht, COALESCE und IFNULL zu verwenden. Es gibt jedoch einen etwas anderen Ansatz, der funktioniert:

<code class="sql">SELECT IFNULL(MIN(`file`), 'default.webm') `file` 
FROM `show`, `schedule` 
WHERE `channel` = 1 AND `start_time` <= UNIX_TIMESTAMP() 
  AND `start_time` > UNIX_TIMESTAMP()-1800 AND `show`.`id` = `schedule`.`file` 
ORDER BY `start_time` DESC LIMIT 1</code>
Nach dem Login kopieren

Durch die Verwendung von MIN() als Aggregatfunktion stellen Sie sicher, dass ein NULL-Wert zurückgegeben wird, wenn keine Zeilen ausgewählt sind. Dann können IFNULL oder COALESCE NULL durch Ihren Standardwert, in diesem Fall „default.webm“, ersetzen.

Mit dieser Methode können Sie einen Standardwert abrufen, wenn die Abfrage keine Ergebnisse zurückgibt, wodurch das Fehlen einer Übereinstimmung effektiv behandelt wird Zeilen.

Das obige ist der detaillierte Inhalt vonWie werden Standardwerte für leere Ergebnismengen in Datenbankabfragen zurückgegeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage