Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 247 Pomógł: 5 Dołączył: 10.12.2007 Ostrzeżenie: (0%)
|
Mam dwie tabele które wyglądają tak:
tabela pracodawcy id....|miasto_id.......|nazwa........... 1.....|1....................|Budo-remont 2.....|4....................|HiTech 3.....|3....................|Studentowo 4.....|5....................|Szop-Pracz 5.....|2....................|Telefonika S.A. 6.....|1....................|Interneto sc. 7.....|1....................| Poczta Misiowa tabela miasta id....|nazwa.........|ludnosc 1.....|Pcim dolny...|1234 2.....|Mala wies....|310 3.....|Dwor...........|55000 4.....|Stolicowo....|3000000 5.....|Srednia wies|7235 6.....|Polakowo....|345000 chciałbym wyświetlić nazwę miasta + nazwa firmy dając takie zapytanie Kod select t1.nazwa, t2.nazwa as nazwa_firmy from miasta t1 inner join pracodawcy t2 on t1.id=t2.miasto_id Jest prawie dobrze jednak nie otrzymuje rekordu z miastem Polakowo w którym nie pracuje żadna firma.. Jak powinno wyglądać to zapytanie żeby była nazwa miasta i np puste miejsce na firme? Znalazłem sam odpowiedź wystarczyło zamienić z inner join na left join Ten post edytował mimol 28.08.2010, 14:11:20 |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 898 Pomógł: 80 Dołączył: 31.05.2008 Ostrzeżenie: (20%)
|
A wiesz w ogóle dlaczego wystarczyło zmienić z inner join na left join? Bo mi się nie wydaje.
INNER JOIN - nie zwraca wiersza gdy nie znajdzie dopasowania. LEFT JOIN - dołącza wyniki z lewej kolumny mimo iż nie znajdzie powiązania z prawą kolumną, resztę NULLuje RIGHT JOIN - na odwrót jak left join FULL JOIN - zwróci wiersze jak znajdzie w którejkolwiek tabel. |
|
|
|
mimol Pusty rekord 28.08.2010, 13:36:17
mimol Zadanie.
Wypisz ile firm ma swoje siedziby w danym... 28.08.2010, 15:37:33
nospor COUNT masz robic po pracodawcach. Przeciez to ich ... 28.08.2010, 15:48:45
mimol Dzięki 28.08.2010, 16:00:46 ![]() ![]() |
|
Aktualny czas: 10.06.2026 - 14:07 |