Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> MS SQL złączenie 3 tabel, Raport z 3 tabel
KGBa
post 21.09.2009, 09:41:52
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 21.09.2009

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


Witam,

jako, że jest to dla mnie zupełnie nowy obszar działania proszę o pomoc i wyjaśnienia:

+ Potrzebny jest mi raport z 3 tabel (excel)

+ Muszę ściągnąć złączone 3 tabele (po róznych nazwach kolumn)
1) tab.pr
2) tab.rp
3) tab.for

+ łączenia po kolumnach:
(tab 1 z 2) pr.r_m = rp.sys
(tab 1 z 3) pr.for = for.sys

+ oprócz tego z tab 1 potrzebne są dodatkowo 3 kolumny (d, d_n, e), z tab 2 1 kolumna (name), z tab 3 2 kolumny (f_n, f_t)


Próba połączenia po join left on - nie powiodła się gdyż tym sposobem można połączyć tylko 2 tabele....

Z gory dziekuje za cenne info

Go to the top of the page
+Quote Post
askone
post 21.09.2009, 09:52:54
Post #2





Grupa: Zarejestrowani
Postów: 654
Pomógł: 121
Dołączył: 27.10.2007
Skąd: Poznań, Łódź

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


Hej

Sam napisałeś już odpowiedź winksmiley.jpg

Wystarczą dwie klauzule left join, pierwsza łączy tabelę 1 z 2, druga łączy tabelę 1 z 3

  1. SELECT
  2. nazwy kolumn
  3. FROM tabela1
  4. LEFT JOIN tabela2 ON tabela2.sys = tabela1.r_m
  5. LEFT JOIN tabela3 ON tabela3.sys = [tabela1.FOR]


Ten post edytował fly474 21.09.2009, 09:54:16


--------------------
Kliknij jeśli moja odpowiedź Ci pomogła.
askone.pl
Go to the top of the page
+Quote Post
KGBa
post 21.09.2009, 10:45:50
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 21.09.2009

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


a jak podłączyć jeszcze dodakowe kolumny??

+ oprócz tego z tab 1 potrzebne są dodatkowo 3 kolumny (d, d_n, e), z tab 2 1 kolumna (name), z tab 3 2 kolumny (f_n, f_t)
Go to the top of the page
+Quote Post
askone
post 21.09.2009, 11:56:39
Post #4





Grupa: Zarejestrowani
Postów: 654
Pomógł: 121
Dołączył: 27.10.2007
Skąd: Poznań, Łódź

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


Tam gdzie ja napisałem "nazwy kolumn" wpisujesz odpowiednie kolumny poprzedzone przedrostkiem lub nazwą tabeli.

  1. SELECT
  2. tabela1.d,
  3. tabela1.d_n,
  4. tabela1.e,
  5. tabela2.name,
  6. tabela3.f_n,
  7. tabel3.f_t
  8. FROM tabela1
  9. LEFT JOIN tabela2 ON tabela2.sys = tabela1.r_m
  10. LEFT JOIN tabela3 ON tabela3.sys = [tabela1.FOR]
  11.  


--------------------
Kliknij jeśli moja odpowiedź Ci pomogła.
askone.pl
Go to the top of the page
+Quote Post
KGBa
post 21.09.2009, 13:26:34
Post #5





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 21.09.2009

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


Dzięki wielkie - jest ok smile.gif
Go to the top of the page
+Quote Post
prachwal
post 23.09.2009, 18:45:28
Post #6





Grupa: Zarejestrowani
Postów: 171
Pomógł: 18
Dołączył: 13.03.2009
Skąd: lublin

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


skorzystaj z SQL SERVER MENAGMENT STUDIO - jest w zestawie nawet do wersji Express
tam masz Ctrl +Shif + Q edytor graficzny zapytań - całkiem przyzwoity
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 7.05.2025 - 07:15