Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Ako na zlozity dotaz [MySQL]

Dobry den vospolok,

zatuhol som pri rieseni jedneho MySQL dotazu s poddotazmi, moze mi s tym niekto pomoct? Ide o to, ze mam 3 tabulky:

[querypn1.png]

A teraz otazka: Potrebujem spojit tieto 3 tabulky tak, ze vypisem vsetky veci, ich mena, kategorie a priradim ku kazdej veci obrazok. Kde je problem. Spojit tabulky veci a kategoria veci nie je problem na zaklade ID, obrazky by som priradoval tiez podla ID, avsak chcem ku kazdej veci vybrat len JEDEN obrazok a v tabulke obrazky veci sa nachadza hned niekolko obrazkov k jednej veci, preto vypise tu istu vec vo vratenom query ako viac poloziek, riadkov. Ako obmedzit nacitanie obrazkov na jeden jediny? Skusal som rozne operatory a poddotazy, ale nic sa mi nedarilo. Zrejme je to trivialita, ale neviem prist veci na klb.

Vdaka za akekolvek nakopnutie. :beer:

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
SELECT v.jmeno, k.kategorie, o.obr FROM veci v JOIN kategorie k ON v.kategorie = k.id, obrazky o WHE…
Wikan 10.09.2008 11:31
Wikan
Dakujem, overim. Mozem sa spytat, co znamena zapis: kategorie k a obrazky o ? To priradujete ali… nový
2laak 10.09.2008 11:44
2laak
urobis si VIEW CREATE VIEW NAZOV AS SELECT VEC_ID, MAX(OBRAZOK) FROM OBRAZKY GROUP BY VEC_ID a pot… nový
wam_Spider007 10.09.2008 11:35
wam_Spider007
-- inak je to dost odveci otazka, kedze si ani nepovedal, ktory obrazok presne chces. Nie, odveci t… nový
2laak 10.09.2008 11:43
2laak
select k.*, v.*, (select distinct Veci_Id, Obrazok from Obrazky_veci) O from Kategoria k, Veci v whe… nový
Rce 10.09.2008 11:36
Rce
Ide o dosť bežný problém, riešení je na webe veľa. Ak nechceš použiť view, tak si môžeš prečítať nap… nový
los 10.09.2008 11:53
los
Dakujem vsetkym zucasnenym za rady, vsetky boli podnetne. Vidiet, ze ste profici. Zo vsetkych rad so… poslední
2laak 15.09.2008 18:44
2laak

urobis si VIEW

CREATE VIEW NAZOV
AS
SELECT VEC_ID, MAX(OBRAZOK)
FROM OBRAZKY
GROUP BY VEC_ID

a potom uz budes mat len jeden obrazok pre kazdu vec

-- inak je to dost odveci otazka, kedze si ani nepovedal, ktory obrazok presne chces.

Dakujem vsetkym zucasnenym za rady, vsetky boli podnetne. Vidiet, ze ste profici. Zo vsetkych rad som sa co-to naucil.

Problem som vyriesil prostym LEFT JOIN-om, kde som sa vyhral trochu s klauzulami WHERE a pod.

Este raz dakujem a znacim ako vyriesene. :-)

Zpět do poradny Odpovědět na původní otázku Nahoru