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

MYSQL jika kueri pemilihan mengembalikan 0 baris lalu kueri pemilihan lainnya?

Ini tampaknya berfungsi dari tes cepat yang baru saja saya lakukan dan menghindari kebutuhan untuk memeriksa keberadaan x=1 dua kali.

SELECT SQL_CALC_FOUND_ROWS *
FROM mytable
WHERE x = 1

UNION ALL

SELECT *
FROM mytable
WHERE 
FOUND_ROWS() = 0 AND x = 2;

Sunting:Mengikuti klarifikasi Anda untuk pertanyaan, jelas 2 kueri harus kompatibel dengan UNION agar hal di atas berfungsi.

Jawaban atas pertanyaan Anda yang diperbarui adalah Tidak. Ini tidak mungkin dilakukan dalam satu kueri. Anda perlu menggunakan beberapa logika prosedural bersyarat untuk mengeksekusi kueri yang diinginkan.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL Query IN () Klausa Lambat pada Kolom Terindeks

  2. Indeks MySQL untuk MIN dan MAX

  3. Bagaimana cara mengisi dropdown kedua berdasarkan pilihan dropdown pertama menggunakan jQuery/AJAX dan PHP/MySQL?

  4. perbedaan antara where_in dan find_in_set

  5. MySQL - memperbarui semua catatan agar sesuai dengan nilai maksimal dalam grup