Her zaman MySQL'de bir şeyler sorgulamak için LIKE
deyiminde OR
kullanabileceğinizi düşündüm. Yani, 1 anahtar kelime veya terime arka arkaya birden çok alan karşılaştırmak istiyorsa:Birden çok alanı karşılaştırmak için MySQL içinde MyLQL'de OR Kullanılıyor
SELECT * FROM MyTable WHERE Column1 OR Column2 LIKE '%keyword%';
ve ben olsaydı kelimelerin bir dizi karşılaştırma:
SELECT * FROM MyTable WHERE Column1 OR Column2 LIKE '%keyword1%'
AND Column1 OR Column2 LIKE '%keyword2%';
O sözdizimi inanmıyorum Ancak, doğrudur. Bu doğru yaklaşık gidiş
SELECT * FROM MyTable WHERE Column1 LIKE '%keyword1%' OR Column2 LIKE
'%keyword1%' AND Column1 LIKE '%keyword2%' OR Column2 LIKE '%keyword2%';
Am: gibi bir şey bir yana bu yazı verimli bir yöntem var mı?
Sadece "kelime dizisi" algoritmanız hakkında merak ediyorum ... Bir sütun bir kelimeye benziyorsa ve bir sütun diğerine benziyorsa sonuç almak istediğinizden emin misiniz? – Sebas
bana oldukça verimsiz gözüküyor, prosedürleri de kullanabilirsiniz. – vijay
Anahtar sözcük (ler) bir arama alanından geliyor, böylece kullanıcılar birçok alana dayalı bir veritabanında arama yapmak isteyeceklerdir. Arama terimlerinde 2 kelime kullanırlarsa, bu terim için her iki sütunu da aramak mantıklıdır. Bir alanı hariç tutmak istemiyorum çünkü birden fazla ilgili kelime içerme olasılığı var. – RCNeil