Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Kembalikan nilai default jika satu baris tidak ditemukan

Salah satu caranya

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

Karena Anda hanya mengembalikan satu baris, Anda dapat menggunakan fungsi agregat, dalam hal ini MIN() , yang memastikan bahwa Anda akan mendapatkan NULL jika tidak ada catatan yang dipilih. Kemudian IFNULL() atau COALESCE() akan melakukan tugasnya.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Penjelasan Kerangka Ketersediaan Tinggi MySQL – Bagian III:Skenario Kegagalan

  2. Apa pun yang terjadi, saya tidak dapat mengelompokkan pernyataan MySQL INSERT di Hibernate

  3. Ruby datetime cocok untuk perbandingan mysql

  4. Permintaan MySQL menemukan nilai dalam string yang dipisahkan koma

  5. Indeks unik MySQL berdasarkan beberapa bidang