Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2009-03-12 15:48:35

  szewczyk - Stary wyjadacz :P

szewczyk
Stary wyjadacz :P
Zarejestrowany: 2006-12-03

Mysql - Pobranie wyników z kilku tabel w jednym zapytaniu

Witam

jak pograć dane z kliku tabel w jednym zapytaniu ?

chcę pobrać komórki id,cos2,cos3,cos4 i wszystkie tabele które bede odpytywał posiadają je

Ostatnio edytowany przez szewczyk (2009-03-12 15:48:50)

Offline

 

#2  2009-03-12 16:52:43

  BiExi - matka przelozona

BiExi
matka przelozona
Skąd: Gorlice
Zarejestrowany: 2004-04-16
Serwis

Re: Mysql - Pobranie wyników z kilku tabel w jednym zapytaniu

Cos takiego mniejwecje (w postgresql) w mysqlu powinno tez dzialac

Kod:

SELECT tab1.pol1, tab1,pol2, tab1,pol1a
  FROM tab1
  JOIN tab2 ON tab2.pol_laczace = tab1.pol_loaczace;

zeby nie pisac za kazdym razem mozna sobie klepnac widok

Kod:

CREATE VIEW costam AS
SELECT tab1.pol1, tab1,pol2, tab1,pol1a 
  FROM tab1
  JOIN tab2 ON tab2.pol_laczace = tab1.pol_loaczace;

i jak mamy widok to wystarczy

Kod:

SELECT * FROM costam

Offline

 

#3  2009-03-13 12:35:03

  szewczyk - Stary wyjadacz :P

szewczyk
Stary wyjadacz :P
Zarejestrowany: 2006-12-03

Re: Mysql - Pobranie wyników z kilku tabel w jednym zapytaniu

niestety cos nie dziala :( :

Kod:

    SELECT o_foldery.id, o_foldery,user, o_foldery,realname
      FROM o_foldery
      JOIN o_papier ON o_papier.id = o_foldery.id

error : Unknown column 'o_foldery' in 'field list'

Offline

 

#4  2009-03-13 13:00:54

  skotx - Członek DUG

skotx
Członek DUG
Skąd: Olkusz
Zarejestrowany: 2008-01-22

Re: Mysql - Pobranie wyników z kilku tabel w jednym zapytaniu

Kod:

SELECT * FROM tabela1 t1 INNER JOIN tabela2 t2 ON t1.id=t2.id

albo

SELECT * FROM tabela1 INNER JOIN tabela2 USING(id) ------>>powinno, aczkolwiek nie musi działać.

Kod:

  SELECT *
      FROM o_foldery tab1
      INNER JOIN o_papier tab2 ON tab1.id = tab2.id

tab1, tab2=aliasy do tabel, żeby nie wypisywać długich nazw. Możesz też bez tego zrobić.

Kod:

  SELECT *
      FROM o_foldery
      INNER JOIN o_papier ON o_foldery1.id = o_papier.id

I teraz zamiast * podajesz co tam chcesz wyłuskać z tabel.

czyli

Kod:

SELECT id, user, realname
FROM o_foldery
INNER JOIN o_papier ON o_foldery1.id = o_papier.id

I to musi działać.

Edit: fajny jest sql anywhere do nauki. Nie wiem czy jest dostępny na linuksa bo korzystałem z tego na windzie.

Ostatnio edytowany przez skotx (2009-03-13 13:08:21)


Jeśli mam wysłuchiwać czyichś poglądów, to niech będą one wypowiedziane w formie twierdzącej, wątpliwości sam mam dosyć.

Offline

 

#5  2009-03-13 13:06:08

  szewczyk - Stary wyjadacz :P

szewczyk
Stary wyjadacz :P
Zarejestrowany: 2006-12-03

Re: Mysql - Pobranie wyników z kilku tabel w jednym zapytaniu

a co jesli mam wiecej tabel ,(20) jak zbudowac pytanie do SQL aby powiazac je miedzy sobą ?

Offline

 

#6  2009-03-13 13:23:24

  skotx - Członek DUG

skotx
Członek DUG
Skąd: Olkusz
Zarejestrowany: 2008-01-22

Re: Mysql - Pobranie wyników z kilku tabel w jednym zapytaniu

Po prostu dodajesz nowego joina.
Podam Ci linka, bo zaraz na uczelnie uciekam. Tutaj masz dosyć fajnie opisane bo z przykladem : http://forum.php.pl/lofiversion/index.php/t59408.html
oraz tutaj są podstawy z przykładami http://sql.pressmedia.com.pl/!start.htm


Jeśli mam wysłuchiwać czyichś poglądów, to niech będą one wypowiedziane w formie twierdzącej, wątpliwości sam mam dosyć.

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)