MySQL - tersi bir tablo belirli bir dize veri ziyade maç için bir yolu var mı

3 Cevap php
SELECT * FROM disney;
+++++++NAME+++++++
lion king
cinderella
the little mermaid
+++++++++++++++++++

$string = "i love the movie lion king, it rocks!"

Ben ADI verilen dize içinde olduğu disney ADI almak istiyorum. Bu tür benziyor:

'SELECT * FROM disney WHERE NAME LIKE "%'.$string.'%";'

sadece diğer yolu civarında (i denedim ama işe yaramadı).

Bir tablo hücresinde bir veri belirli bir dize var olup olmadığını kontrol etmek için bir MYSQL işlevi var mı?

Thanks a lot! (). Ben çalışıyorum PHP!

3 Cevap

Ben şu (keresinde aynı şeyi yapmaya çalışıyorum hatırlıyorum, ve ben bu kullandığım ne olduğunu düşünüyorum) çalışması gerektiğini düşünüyorum:

'SELECT * FROM disney WHERE "' . $string . '" LIKE CONCAT("%",NAME,"%")';

Bunun için çalışması gerekir INSTR Fonksiyon var:

SELECT * FROM disney WHERE INSTR('i love the movie lion king, it rocks!', name) > 0

Ayrıca sadece MyISAM tabloları ile çalışır MySQL'in FULLTEXT arama özelliği deneyebilirsiniz:

$query = "SELECT * FROM disney WHERE MATCH(NAME) AGAINST ('$text')";