mam sporą bazę i męczę się z wyszukiwaniem tj. mam np. tabele:
T1 +--------+-------------+-----------+------------+ | T1_ID | T1_NAME | T2_ID | T3_ID | +--------+-------------+-----------+------------+ | id11 | name11 | id21 | id31 | | id12 | name12 | id22 | id32 | | id13 | name13 | id23 | id33 | +--------+-------------+-----------+------------+
T2 +--------+---------+ | T2_ID | T2_NAME | +--------+---------+ | id21 | name21 | | id22 | name22 | | id23 | name23 | +--------+---------+
i chce wyszukać we wszystkich kolumnach NAME tekst "name32 name2" tak jak w Googlach czyli łączone ANDem wiec generuje sobie zapytanie:
T3 +--------+---------+ | T3_ID | T3_NAME | +--------+---------+ | id31 | name31 | | id32 | name32 | | id33 | name33 | +--------+---------+
niestety to nie spełnia moich oczekiwań bo dla T1_NAME otrzymuje fałsz i zwrócone zostaje mi zero odpowiedzi. Jak dać takie zapytanie zeby otrzymać pozytywny wynik?
SELECT * FROM T1 JOIN `T2` ON T1.T2_ID = T2.T2_ID JOIN `T3` ON T1.T3_ID = T3.T3_ID WHERE ( (`T1_NAME` LIKE '%name32%' OR `T1_NAME` LIKE '%name2%' ) AND (`T2_NAME` LIKE '%name32%' OR `T2_NAME` LIKE '%name2%' ) AND (`T3_NAME` LIKE '%name32%' OR `T3_NAME` LIKE '%name2%' ) )