Autor Zpráva
Petr Ká
Profil
Ahoj

Potřeboval bych poradit s dotazem na 2 tabuky. Jedná se o fotogalerii a struktura je nasledovná:

Tabulka : galerie

id, user, nazev, .....
Tabulka : galerie_fotky

id, id_galerie, nazev, url, ...

Řeším problém ve výpisu galerií pro určitého uživatele a potřebuju dostat z dotazu :
id (tabulka galerie),
nazev (tabulka galerie),
pocet fotek (z tabulky galerie_fotky, kde pocet fotek musi byt spadajici pod kategorii)
url (z tabulky galerie_fotky, musi to byt z nahodne fotky spadajici pod galerii)

Zatim jsem to nevyresil... asi na to jdu zbytecne slozite, ale mam ted toto:

SELECT a.id,a.nazev, COUNT(b.id)  as pocet b.url 
FROM galerie a, galerie_fotky b 
WHERE a.user=1 
AND a.id=b.id_galerie 
AND b.id IN 
(
SELECT c.id 
FROM galerie_fotky c,galerie d 
WHERE d.user=1 
AND d.id=c.id_galerie 
ORDER BY RAND()) 
ORDER BY a.vytvoreno DESC;



Tak jsem to vyřešil, už mi je zbývá dotaz upravit tak, aby se mi z dotazu vracelo to náhodné url..

SELECT a.id,a.nazev, COUNT(b.id) as pocet, b.url FROM galerie a, galerie_fotky b WHERE a.user='".db_esc($id)."' AND a.id=b.id_galerie AND b.id IN (SELECT c.id FROM galerie_fotky c,galerie d WHERE d.user='".db_esc($id)."' AND d.id=c.id_galerie ORDER BY c.vytvoreno DESC) GROUP BY a.id ORDER BY a.vytvoreno DESC;
Petr Ká
Profil
Dodatek : db_esc(); je jen zkraceny nazev pro escapovani stringu

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: