Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MYSQL]Zapytanie nie zwraca tego co powinno
Forum PHP.pl > Forum > Przedszkole
no-scared
Dlaczego takie zapytanie:

  1. SELECT * FROM `posty` p, `tematy` t WHERE (LOWER(p.tresc) LIKE '%nadrugi%' OR LOWER(t.tresc) LIKE '%nadrugi%') AND `id_dzialu` = 3


Zwraca mi rekordy nawet tam, gdzie w kolumnie t.tresc i p.tresc nie występuje fraza "nadrugi"?
nospor
bo w zaden sposob nie powiązales ze sobą tabel posty i tematy
no-scared
Cytat(nospor @ 4.08.2009, 10:11:05 ) *
bo w zaden sposob nie powiązales ze sobą tabel posty i tematy


Mógłbyś mnie nakierować jak je powiązać? Albo (to tylko jedno zapytanie) pokazać przykładowe prawidłowe zapytanie?

Czy może chodzi Ci o coś a`la left join?
Fifi209
Możesz wiązać np. przez WHERE lub JOIN.

http://pececik.com/showthread.php?t=1184
janusz85
A co chcesz dostać w wyniku?
Fifi209
Cytat(janusz85 @ 4.08.2009, 09:17:53 ) *
A co chcesz dostać w wyniku?


Wszystkie te rekordy gdzie występuje podana przez niego fraza.
Tak ciężko czytać ze zrozumieniem?
janusz85
Jak tabele mają różną budowę i nie są powiązane, to w ten sposób wyjdą dziwne rzeczy, stąd pytanie.
Fifi209
Cytat(janusz85 @ 4.08.2009, 09:23:32 ) *
Jak tabele mają różną budowę i nie są powiązane, to w ten sposób wyjdą dziwne rzeczy, stąd pytanie.


To chyba bardziej pytanie powinno dotyczyć tego jak zbudowane są ów tabele. winksmiley.jpg
Pamiętaj, w programowaniu różne pojęcia mają różne znaczenie.

@autor

Podaj strukturę tych tabel.
janusz85
Tyle to ja akurat wiem.

Czasem dobrze jest zapytać "co autor miał na myśli", bo nie zawsze nasza interpretacja jego kodu jest zgodna z jego zamierzeniem.

Jakby na to nie patrzeć, autor powinien podać jak są zbudowane tabele. :-)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.