[sql] Ach te standarty, czy to to samo? |
[sql] Ach te standarty, czy to to samo? |
2.05.2003, 20:18:18
Post
#1
|
|
Grupa: Przyjaciele php.pl Postów: 1 467 Pomógł: 13 Dołączył: 22.02.2003 Ostrzeżenie: (0%) |
Mam takie pytanie. Właśnie kupiłem sobie książkę o SQL'u i czytam o złączeniach.
Skorzystam z tabeli tych tabel do przedstawienia problemu: Cytat - klient - [id].[nazwa]
- faktura - [id].[data_wystawienia].[id_klienta] Mam takie pytanie, czy to są te polecenia robią to samo? Pierwsze: Kod SELECT
klient.id id, klient.name imie, faktury.data_wystawienia data FROM klient, faktury WHERE klient.id=faktury.id_klienta Drugie: Kod SELECT Co dziwniejsze z mojej wiedzy wynika (tak słyszałem), że JOIN jest tylko pojęciem i że pierwszy przykład jest "bardziej" SQL'owy.
klient.id id, klient.name imie, faktury.data_wystawienia data FROM klient LEFT JOIN faktura ON (faktura.id=klient.id) A tak wogóle to mam jeszcze jedno pytanie. Czy chcąc dokonać lewego złączenia zewnętrznego z użyciem słówka JOIN powinienem napisać Kod OUTER LEFT JOIN czyKod LEFT OUTER JOIN
|
|
|
5.05.2003, 09:14:54
Post
#2
|
|
Grupa: Zarząd Postów: 2 277 Pomógł: 6 Dołączył: 27.12.2002 Skąd: Wołów/Wrocław |
1. Według manuala WHERE jest równoznaczne z OUTER JOIN
2. Pisz tak, jak działa -------------------- "Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
|
|
|
6.05.2003, 10:15:39
Post
#3
|
|
Grupa: Zarejestrowani Postów: 384 Pomógł: 0 Dołączył: 3.04.2003 Skąd: Chorzow Ostrzeżenie: (0%) |
Cytat Pierwsze:
Kod SELECT klient.id id, klient.name imie, faktury.data_wystawienia data FROM klient, faktury WHERE klient.id=faktury.id_klienta wypisze tylko tych klientow, ktorzy _maja_ jakakolwiek fakture, w wyniku nie pojawia sie zadni klienci nie posiadajacych wpisow w fakturach Cytat Drugie:
Kod SELECT klient.id id, klient.name imie, faktury.data_wystawienia data FROM klient LEFT JOIN faktura ON (faktura.id=klient.id) Wypisze _wszystkich_ klientow, dla klientow posiadajacych faktury rowniez dane tych faktur, dla klientow bez faktur wypisze dane klienta i zamiast danych faktur da wartosc NULL |
|
|
Wersja Lo-Fi | Aktualny czas: 10.06.2024 - 06:27 |