![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 16.10.2004 Ostrzeżenie: (0%) ![]() ![]() |
Witam serdecznie
Mam 2 tabele samochody i wersje. tabela samochody ma następujące kolumny: samochod_id samochod_nazwa samochod_model tabela wersje: wersja_id samochod_id wersja_silnik wersja_moc Chciałbym pobrać wszystkie rekordy z tabeli samochodu, tak aby każdy model miał przypisany silnik o najmniejszej mocy tak aby na liście samochodów było coś takiego, np: Cytat Mercedes E od 145 koni mechanicznych Problem w tym, ze przy zapytaniu: Kod SELECT s.*, w.* FROM samochody AS s INNER JOIN wersje AS w ON s.samochod_id=w.samochod_id ORDER BY w.wersja_moc ASC To zapytanie jednak nie wykonuje tego co chciałem. Dostaję listę rekordów wszystkich samochodów z wszystkimi silnikami a nie tylko z najsłabszymi czyli dostaję x Mercedesów klasy E (dla kazdej wersji 1 rekord) Jak powinno wyglądać poprawne zapytanie? |
|
|
![]() ![]()
Post
#2
|
|
![]() Administrator serwera Grupa: Developerzy Postów: 521 Pomógł: 13 Dołączył: 2.04.2004 Skąd: 52°24' N 16°56' E Ostrzeżenie: (0%) ![]() ![]() |
Najpierw pobierz listę wersji o najniższej mocy silnika, a potem połącz ją z samochodami
![]() -------------------- Środowisko: Gentoo 2008.0 | Apache | PHP5 | PostgreSQL | MySQL | Postfix
Workstation: Gentoo 2008.0 | Firefox Thomas Alva Edison: "Aby coś wynaleźć wystarczy odrobina wyobraźni i sterta złomu ..." Odpowiedź na każde pytanie typu "Jak ...": "Nie da się, to nie PostgreSQL" |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 16.10.2004 Ostrzeżenie: (0%) ![]() ![]() |
A czy nie da się tego zrobić pobierając najpierw listę modeli ? Może UNION
Zrobiłem następujące zapytanie:
I otrzymuje takie dane jak chce... wyświetlam je tak: Kod while ($r=pg_fetch_array($q)) { print " $r[samochod_nazwa] $r[samochod_model]<br> znaleziono $r[ilosc_modeli] modeli o mocy od $r[moc_min] do $r[moc_max] "; } Nie wiem tylko jak dodać do mojego zapytania warunek WHERE tak aby wyswietlać samochody o mocy minimalnej od 100... jak daje:
to wyskakuje mi błąd, że "kolumna moc_min nie istnieje"... Czy ktoś wie jak rozwiązać ten problem? |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 92 Pomógł: 3 Dołączył: 4.04.2006 Ostrzeżenie: (0%) ![]() ![]() |
to wyskakuje mi błąd, że "kolumna moc_min nie istnieje"... sprobuj wpiswac razem: mocmin tzn nazwe kolumny zmien na taka jak podalem ja mialem podobny problem ale u mnie nie widzial duzych liter np mialeem: idPat to krzyczal ze takiego czegos nie ma a jak mu zmienilem na idpat to juz widzi i smiga ![]() moze u Ciebie jest podobny problem z tym ze z _ proba nie strzelba ![]() Ten post edytował jezoo 26.12.2006, 19:13:47 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 07:36 |