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

Membuat mysql mengabaikan kondisi di mana

SELECT *
FROM foo
WHERE id = $id
AND ( bar = $baz OR $baz [equals null, empty string, zero, whatever] )

Saya tidak tahu apakah MySQL pernah menggunakan evaluasi hubung singkat dalam rencana pelaksanaannya, tetapi mungkin bermanfaat untuk mengutamakan perbandingan yang lebih murah, seperti:

SELECT *
FROM foo
WHERE id = $id
AND ( $baz [equals null, empty string, zero, whatever] OR bar = $baz )

Anda dapat menggunakan metodologi ini dengan beberapa parameter.

SELECT *
FROM foo
WHERE id = $id
AND ( $baz [equals null, empty string, zero, whatever] OR bar = $baz )
AND ( $x = 0 or x = $x )
AND ( $y IS NULL OR y = $y )

-- etc.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara memperbarui Database saat memeriksa kotak centang dengan jquery?

  2. Mendapatkan daftar nama teman dari MySQL

  3. Bisakah saya menggunakan bahasa kueri hibernasi untuk entitas yang tidak dipetakan ke tabel?

  4. merekayasa balik database mysql untuk membuat aplikasi Django

  5. Bagaimana cara membuat Django bekerja dengan driver MySQL yang tidak didukung seperti gevent-mysql atau driver MySQL Concurrence?