Precyzyjny LIKE

0

Zastanawiam się czy da się doprecyzować, sprecyzować zapytane z LIKE, czy one zawsze będzie takie ... a nie inne. Ściągnąłem sobie moją bazę na komputer. Wg notepad++ mam 149 wystąpień tajemniczego ciągu znaków wpisane w LIKE. Baza zwraca 121 a powinna 128.

I tu jest pytanie. Czy da się zmusić te polecenie tak aby treści LIKE szukała w pierwszych powiedzmy w pierwszych 30 słowach wpisu ?

mam zapytanie teraz takie:

SELECT COUNT( * ) AS  `count` FROM  `tabela` WHERE  `tresc` LIKE  "%zdanie na początku niektórych wpisów%"

I mając takie coś:


Bla bla bla bla 12.01.2012 r. zdanie na początku niektórych wpisów <br><p>coś tu jest</p>. I powiedzmy, że tu jest ponad 30 słów. I sobie piszę: bla blaaaa zdanie na początku niektórych wpisów blaaaaaaaa zdanie na początku niektórych wpisów. 

Ogranicznik do 30 pierwszych słów dla wpisu powinien zwrócić mi wynik "1" a nie "3" w tym wypadku. To pozwoliłoby uniknąć błędów, że gdzieś w środku wpisu coś tam jest tam napisane. Co nie powinno :) Dla każdego ID oczywiście osobno. Da się tak? Czy nie bardzo ?

0

substr()

0

Możesz dać jakiś przykład?

1

WHERE substr('tresc',1,10) LIKE '%zdanie%'
oczywiście tu masz znaki nie słowa

0

O nawet działa, dzięki :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1