Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Czy jest możliwość wyszukania w jednym zapytaniu SQL dwóch różnych przystanków należących do jednego kursu ?
peksiarz
post
Post #1





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 27.10.2006

Ostrzeżenie: (10%)
X----


mam zapytanie:

  1. $query = "SELECT pk1.id_kursu, k.nazwa_kursu, pk1.id_przystanku, pk1.numer, pk2.id_przystanku, pk2.numer
  2. FROM przystanek_kursu pk1, przystanek_kursu pk2, przystanek p, kursy k
  3. WHERE p.id_przystanku = pk1.id_przystanku AND p.id_przystanku = pk2.id_przystanku AND k.id_kursu = pk1.id_kursu AND pk1.id_kursu = pk2.id_kursu AND pk1.id_przystanku = '$pocz' AND pk2.id_przystanku = '$kon' AND pk1.numer < pk2.numer ";


moje pytanie dotyczy dwóch przedostatnich lini. Czy jest możliwość wyszukania w jednym zapytaniu dwóch różnych przystanków należących do jednego kursu ?
Powyższe zapytanie testowałem pomijając 2 ostatnie linie, wtedy wyświetlało mi kursy na których był przystanek $pocz (czyli ok) Gdy dodałem dwie ostatnie linie to nic nie wyświetlało a powinno wg. przykładowych danych zapisanych w bazie. Czy to znaczy że bez zagdzieżdzonej instrukcji select sie nie obejdzie ? (IMG:http://forum.php.pl/style_emoticons/default/worriedsmiley.gif)


--
prosze uzywac bbcode -- latwiej sie czyta // dr_bonzo

Ten post edytował peksiarz 21.11.2006, 22:43:14
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
KILIUSZKIN
post
Post #2





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 26.01.2006

Ostrzeżenie: (0%)
-----


Na przyszłość powinieneś podać strukturę tabel i relacje między nimi, bo odpowiadający na takiego posta musi przyjmować niekoniecznie właściwe założenia.

1.) Nie bardzo czuję, po co w tym zapytaniu robi tabelka przystanek ?
Nie wyświetlasz żadnego pola z tej tabeli.

2. ) Nie podoba mi się to wyrażenie:
WHERE p.id_przystanku = pk1.id_przystanku AND p.id_przystanku = pk2.id_przystanku
Nie prościej od razu pk1.id_przystanku=pk2.id_przystanku
Ale w tym zapytaniu wydaje mi się, że ten warunek jest błędny, bo szukasz różnych przystanków kursu.
dlatego spróbuj wogóle pominąć ten warunek.

Good luck!
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 6.10.2025 - 17:29