Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> pobieranie
peterlan
post
Post #1





Grupa: Zarejestrowani
Postów: 131
Pomógł: 0
Dołączył: 25.10.2012

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


Witam,

uprzedze ze jestem zielony,

mam pytanko:

mozna takie pobieranie jakos polaczyc?

  1. $promo=mysql_query("SELECT * FROM bizuteria ORDER BY id DESC LIMIT 12");
  2. $promo=mysql_query("SELECT * FROM zegarki ORDER BY id DESC LIMIT 12");


gdy wpisze cos takiego:

  1. $promo=mysql_query("SELECT * FROM zegarki bizuteria ORDER BY id DESC LIMIT 12");

to pobiera mi tylko z tabeli zegarki
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
viking
post
Post #2





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

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


Zrobiłeś alias czyli niejawne wywołanie zegarki AS bizuteria. Przecinek pomiędzy.
Go to the top of the page
+Quote Post
peterlan
post
Post #3





Grupa: Zarejestrowani
Postów: 131
Pomógł: 0
Dołączył: 25.10.2012

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


czyli cos takiego?

$promo=mysql_query("SELECT * FROM uhren AS schmuck WHERE active='1' ORDER BY id DESC LIMIT 12");

hmm, moze mi ktos powiedziec czy cos takiego jest mozliwe w ogole, by pobierac na przemian dane z dwoch tabel?

Tz. mam dwie tabele, bizuteria i zegarki i chcialbym by na glownej stronie pojawialy sie na przemian nowo wprowadzone oferty, z tych tabel.
Go to the top of the page
+Quote Post
phpion
post
Post #4





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Skorzystaj z UNION by w jednym wyniku zapytania SQL otrzymać dane z 2 tabel. Wyświetlanie na przemian zrób już po stronie PHP.
Go to the top of the page
+Quote Post
mar1aczi
post
Post #5





Grupa: Zarejestrowani
Postów: 731
Pomógł: 141
Dołączył: 9.05.2011
Skąd: śląskie

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


Jeśli struktura tych tabel czy też dokładniej dane, jakie chcesz pobrać z obu tabel będą mieć tą samą ilość kolumn to można skorzystać z UNION.

Edit: phpion mnie ubiegł (IMG:style_emoticons/default/smile.gif)

Ten post edytował mar1aczi 9.08.2013, 09:09:26
Go to the top of the page
+Quote Post
peterlan
post
Post #6





Grupa: Zarejestrowani
Postów: 131
Pomógł: 0
Dołączył: 25.10.2012

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


Czyli cos takiego?

  1. $promo=mysql_query("SELECT * FROM zegarki WHERE active='1' UNION SELECT * FROM bizuteria WHERE active='1' ORDER BY id DESC LIMIT 12");
Go to the top of the page
+Quote Post
mmmmmmm
post
Post #7





Grupa: Zarejestrowani
Postów: 1 421
Pomógł: 310
Dołączył: 18.04.2012

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


  1. SELECT * FROM (SELECT * FROM zegarki WHERE active='1' LIMIT 12) t1 UNION ALL SELECT * FROM (SELECT * FROM bizuteria WHERE active='1' LIMIT 12) t2 ORDER BY id


EDIT: I zrezygnuj z *

Ten post edytował mmmmmmm 9.08.2013, 09:40:24
Go to the top of the page
+Quote Post
peterlan
post
Post #8





Grupa: Zarejestrowani
Postów: 131
Pomógł: 0
Dołączył: 25.10.2012

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


sam juz nie wiem, ale nie dziala.
Go to the top of the page
+Quote Post
mar1aczi
post
Post #9





Grupa: Zarejestrowani
Postów: 731
Pomógł: 141
Dołączył: 9.05.2011
Skąd: śląskie

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


Nazwy kolumn oraz ich ilość z pierwszego i drugiego podzapytania masz identyczne? Zajrzałeś do wskazanego kawałka dokumentacji?
Go to the top of the page
+Quote Post
mmmmmmm
post
Post #10





Grupa: Zarejestrowani
Postów: 1 421
Pomógł: 310
Dołączył: 18.04.2012

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


W normalnym DBMS nazwy nie muszą być takie same. Muszą być jednak dokładnie takie same pod względem ilościowym, jak i jakościowym (tego samego typu).
Np.
  1. SELECT '2013-01-01'::text
  2. UNION ALL
  3. SELECT '2013-01-01'::timestamp

na PostgreSQL powoduje błąd: BŁĄD: UNION typy text i timestamp without time zone nie mogą być dopasowane
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 24.08.2025 - 06:38