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

Mencari kolom yang berisi data CSV dalam tabel MySQL untuk keberadaan nilai input

Pertama-tama, basis data tentu saja tidak boleh berisi nilai yang dipisahkan koma, tetapi semoga Anda sudah mengetahuinya. Jika tabel dinormalisasi, Anda dapat dengan mudah mendapatkan item menggunakan kueri seperti:

select distinct i.Itemid
from Item i
inner join ItemFeature f on f.ItemId = i.ItemId
where f.Feature in ('AB', 'PQ')

Anda dapat mencocokkan string dalam nilai yang dipisahkan koma, tetapi tidak terlalu efisien:

select Id
from Item
where
  instr(concat(',', Features, ','), ',AB,') <> 0 or
  instr(concat(',', Features, ','), ',PQ,') <> 0


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ADDDATE() vs DATE_ADD() di MySQL:Apa Bedanya?

  2. Cara menangani karakter internasional dengan benar di PHP / MySQL / Apache

  3. Bagaimana cara menghindari tanda kutip (') di MySql?

  4. 1093 Kesalahan dalam tabel MySQL ditentukan dua kali

  5. MySQL match() against() - urutkan berdasarkan relevansi dan kolom?