Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: jak obluzyc zapytanie z wielokrotnym selectem w mysql?
Forum PHP.pl > Forum > Przedszkole
Anonymous
Witam, oto moj problem: mam tabele 'jezyki' w ktorej sa informacje o jezykach obcych oferowanych przez placowki oswiatowe. Tabela ma 2 kolumny: 'id_placowki' i 'jezyk'. Kazda placowka (kazde id_placowki) moze miec przypisane kilka jezykow wiec wspiy moga wygladac tak:
...
5 francuski
5 angielski
5 wloski
...

Pytanie jest zadawane wielokrotnym selectem z formularza - czyli mozna zapytac o placowki oferujace np. jezyki: angielski i francuski... tylko nie wiem jak to zapytanie ma wygladac w MySql, probowalem tak:

select id_placowki from jezyki where jezyk='angielski' and jezyk='francuski' ;

(to oczywiscie tylko przykladowe zapytanie wygenerowane przez skrypt) ale niestety nie dziala :/ tzn nie daje zadnych wynikow - tak jakby warunki z and'ow sie wykluczaly...

jesli ktos wie jak stoworzyc zapytanie to bardzo prosze o pomoc smile.gif

pozdrowka
Jojo
Dobrze zacząłeś kombinować ale powinieneś napisać OR zamiast AND. Zauważ, że język ni może być u Ciebie jednocześnie angielski i francuski, a tamtym zapytaniem chcesz wyciągnąć właśnie takie rekordy.
Anonymous
ehh no wlasnie problem w tym ze OR tez nie moze byc - bo szukane sa placowki oferujace jednoczesnie angielski i francuski (tzn jednocesnie wszystkie te jezyki wybrane wielokrotnym selectem z formularza) sad.gif

gdybym dal OR - wyszlyby placowki ktore maja np tylko angielski - a tak byc nie moze...
cboot
Sądze, że konieczne jest połączenie tablicy języki samej ze sobą, raz z francuskimi, raz z angielskimi:
[sql:1:de19dcda16]select a.id_placowki from jezyki a, jezyki f where a.id_placowki = f.id_placowki and a.jezyk = 'angielski' and f.jezyk = 'francuski'
[/sql:1:de19dcda16]
Chyba prościej się nie da.
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.