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

Melacak kueri SQL pada jumlah kueri yang tidak diketahui (dinamis) menggunakan LIKE

Yang ingin Anda lakukan adalah meneruskan array sebagai argumen tunggal ke where yang berisi kueri DAN nilai dinamis. Misalnya:

where(["att_1 LIKE ? OR att_2 LIKE ?", "value1", "value2"])

Jika sebuah array dilewatkan sebagai argumen pertama dan satu-satunya, maka elemen pertama dari array tersebut diperlakukan sebagai template. Nilai larik berikut diperlakukan sebagai nilai dinamis untuk template kueri.

Sebagai contoh Anda, alih-alih memiliki dua variabel terpisah queries dan query , gabungkan menjadi satu query variabel:

# A single array with the query AND values
query = ["hobby LIKE ? OR (gender LIKE ? AND hobby LIKE ?)", "skiing", "male", "jogging"]

# Run the `where` with a single array as the argument
YourModel.where(query)

Ini akan memungkinkan Anda untuk menanyakan DB dengan jumlah nilai yang tidak diketahui menggunakan LIKE .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Memahami struktur catatan MyISAM

  2. Hubungan Banyak-ke-Banyak di MySQL

  3. Cara memperbaiki karakter UTF8 yang disandikan ganda (dalam tabel utf-8)

  4. Server MySQL telah hilang - tepat dalam 60 detik

  5. MySQL - Temukan poin dalam radius dari database