傳回空結果集的預設值
查詢資料庫時,通常會處理找不到符合行的情況。為了避免空結果,您可以傳回預設值。
在您的情況下,您希望為流選擇下一個計劃項目。如果沒有安排項目,您需要一個預設值以確保流播放內容。
您嘗試使用 COALESCE 和 IFNULL 但沒有成功。但是,有一種稍微不同的方法可以工作:
<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>
透過使用 MIN() 作為聚合函數,可以確保在未選擇任何行時傳回 NULL 值。然後,IFNULL 或 COALESCE 可以將 NULL 替換為您的預設值,在本例中為「default.webm」。
此方法可讓您在查詢沒有傳回結果時檢索預設值,有效處理缺少符合的情況行。
以上是如何在資料庫查詢中傳回空結果集的預設值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!