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

MYSQL menggunakan 'LIKE' di klausa 'WHERE' untuk mencari di subquery

Menggunakan GABUNG:

SELECT a.*
  FROM mytable a
  JOIN myothertable b ON a.name LIKE CONCAT('%', b.name, '%')

...tapi mungkin ada duplikat, jika ada lebih dari satu kecocokan di myothertable untuk mytable yang diberikan merekam.

Menggunakan EXISTS:

SELECT a.*
  FROM mytable a
 WHERE EXISTS (SELECT NULL 
                 FROM myothertable b 
                WHERE a.name LIKE CONCAT('%', b.name, '%'))

Menggunakan Penelusuran Teks Lengkap MATCH (memerlukan myothertable adalah MyISAM)

SELECT a.*
  FROM mytable a
  JOIN myothertable b ON MATCH(a.name) AGAINST (b.name)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Urutan Angka di MySQL

  2. Cara menyembunyikan kata sandi Mysql di docker-compose menggunakan env_file

  3. Kode Kesalahan:1292. Nilai GANDA salah terpotong:'ya'

  4. symfony2 dengan doktrin tidak dapat terhubung ke database mysql jarak jauh

  5. PILIH * DARI beberapa tabel. MySQL