Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> RIGHT JOIN z warunkiem
Graby
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 16.05.2003
Skąd: Radom

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


Mam takie tabele z produktami np.
-id_produktu
-nazwa
-opis

zdjęcia:
-id_zdjęcie
-id_produktu
-nazwa_zdjęcia
-glowne (czy zdjęcie jest domyślne)


robie zapytanie:

  1. SELECT * FROM produkty p RIGHT JOIN zdjęcia z ON p.id_produktu=z.id_produktu


i teraz chciałbym zeby z to zapytanie pobrało mi wszystkie produkty, a jesli mają zdjęcie to tez zdjęcie, ale takie które ma główne=1. zdjęć moze być kilka do każdego produktu, albo żadnego

Nie przychodzi mi zadne rozwiązanie do głowy, proszę o pomoc


--------------------
+----oOO-{_}-OOo--------------------------+
Maciej 'Graby' Osypiuk
GG#: 691263
+----oOO-{_}-OOo--------------------------+
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
blooregard
post
Post #2


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




  1. SELECT * FROM produkty p LEFT JOIN zdjęcia z ON p.id_produktu=z.id_produktu WHERE z.glowne=1

Może tak.


--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post
Graby
post
Post #3





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 16.05.2003
Skąd: Radom

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


w tym wypadku wyswietli tylko rekordy które maja zdjecie, a ja potzebuje te które nie maja zdjecia, a jak maja to ma podawac tylko to co ma glowne ustawione na 1


--------------------
+----oOO-{_}-OOo--------------------------+
Maciej 'Graby' Osypiuk
GG#: 691263
+----oOO-{_}-OOo--------------------------+
Go to the top of the page
+Quote Post
bounty
post
Post #4





Grupa: Zarejestrowani
Postów: 68
Pomógł: 9
Dołączył: 12.04.2009
Skąd: Wrocław

Ostrzeżenie: (10%)
X----


hmm a możemy wiedzieć jaki jest warunek czy zdjęcie jest czy nie ma
podałeś tylko pole w którym sprawdzasz czy jest domyslne


--------------------
<?php
while($earth){
drop_bomb();
}
?>
Go to the top of the page
+Quote Post
Graby
post
Post #5





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 16.05.2003
Skąd: Radom

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


jak jest zdjęcie to jest jego nazwa i id_produktu ofcoz


--------------------
+----oOO-{_}-OOo--------------------------+
Maciej 'Graby' Osypiuk
GG#: 691263
+----oOO-{_}-OOo--------------------------+
Go to the top of the page
+Quote Post
blooregard
post
Post #6


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




  1. SELECT * ,
  2. (SELECT IF(z.glowne=1,z.id_zdjecia,NULL) FROM zdjecia z WHERE z.id_produktu = p.id_produktu)
  3. AS zdjecie_glowne
  4. FROM produkty p


A coś takiego?


--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post
trucksweb
post
Post #7





Grupa: Zarejestrowani
Postów: 1 199
Pomógł: 31
Dołączył: 22.03.2004
Skąd: Warszawa

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


Cytat
a ja potzebuje te które nie maja zdjecia, a jak maja to ma podawac tylko to co ma glowne ustawione na 1


cos tu mieszasz, albo chcesz produkty tylko bez zdjec albo produkty, ktore maja zdjecie glowne albo wszystkie produkty z zaznaczeniem ktore z nich maja zdjecie glowne

  1. SELECT * FROM produkty p LEFT JOIN zdjęcia z ON p.id_produktu=z.id_produktu AND z.glowne=1


--------------------
Rozmawia dwóch dyrektorów:
- Jaki jest twój ideał sekretarki?
- 20-letnia dziewczyna z 30-letnim doświadczeniem.
Go to the top of the page
+Quote Post
Graby
post
Post #8





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 16.05.2003
Skąd: Radom

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


to zapytanie nie pokaże produktów bez zdjęć


--------------------
+----oOO-{_}-OOo--------------------------+
Maciej 'Graby' Osypiuk
GG#: 691263
+----oOO-{_}-OOo--------------------------+
Go to the top of the page
+Quote Post
blooregard
post
Post #9


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Cytat
to zapytanie nie pokaże produktów bez zdjęć

Ale sprawdziłes w tej swojej bazie, czy tak "gdybasz" ?


--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post
Graby
post
Post #10





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 16.05.2003
Skąd: Radom

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


tłumaczę raz jeszcze postaram się dokładniej:

potrzebuje wyjąć wszystkie produkty, jeśli produkt nie ma zdjęć to w polach z danymi zdjęć czyli
-id_zdjęcie
-id_produktu
-nazwa_zdjęcia
-glowne

mają być "nulle",
jeśli natomiast produkt ma zdjęcia to ma pokazać tylko 1 rekord zdjęcia, to które ma glowne ustawione na 1

myślę ze lepiej tego się wytłumaczyć nie da


--------------------
+----oOO-{_}-OOo--------------------------+
Maciej 'Graby' Osypiuk
GG#: 691263
+----oOO-{_}-OOo--------------------------+
Go to the top of the page
+Quote Post
blooregard
post
Post #11


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Cytat
tłumaczę raz jeszcze postaram się dokładniej:

Pytam jeszcze raz, postaram sie dokładniej:
Czy sprawdziłeś poprzednio podane zapytanie, czy "gdybasz" co pokaże?


--------------------
Life's simple... You make choices and don't look back...
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 Aktualny czas: 21.08.2025 - 11:41