Autor | Zpráva | ||
---|---|---|---|
scratcher Profil |
#1 · Zasláno: 25. 6. 2009, 00:09:59
zdravím mám 3 tabulky:
clanky: id,nazev,datum(date) kategorie: id,nazev,zobrazit,parent clanky_kategorie: id,clanky_id,kategorie_id kazdy clanek muze patrit do vice kategorii. a ja bych potreboval poradit jak na tohle: a) z aktualniho clanku (jeho id znam) bych potreboval zjistit nazvy všech clanku ktere patri do stejne kategorie jako aktualni clanek (kazdy clanek muze patrit do vice kategorii!) b) vypsat vsechny kategorie a pocet kolik obsahuji clanku (vypsat ale jen clanky ktere maji datum nizsi nebo rovno aktualnimu - clanky s datem v budoucnu se nezobrazuji) diky moc za nakopnuti |
||
Akacko Profil |
#2 · Zasláno: 25. 6. 2009, 00:38:33
Nevím, jestli jsem neudělal nějakou hloupou chybu, ale nemam to kde zkontrolovat.
-- a) SELECT C.nazev FROM clanky C, clanky_kategorie CK WHERE C.id=CK.clanky_id AND CK.kategorie_id = ( SELECT kategorie_id FROM clanky_kategorie WHERE clanky_id = $zname_id) -- b) SELECT COUNT(C.*) as pocet_clanku, K.nazev FROM clanky C, clanky_kategorie CK, kategorie K WHERE K.id = CK.kategorie_id AND CK.clanky_id = C.id AND (C.datum <= NOW()) GROUP BY K.nazev |
||
scratcher Profil |
#3 · Zasláno: 25. 6. 2009, 07:31:05
diky B je OK,
ale u toho A) to hazi "Subquery returns more than 1 row" protoze ten clanek patri do vice nez jedne kategorie. Takze ten druhy SQL vrati 2 zaznamy. Asi sem zapomel napsat ze se jedna o MySQL. diky |
||
Kajman_ Profil * |
#4 · Zasláno: 25. 6. 2009, 09:00:46
Na A by mohlo pomoci upravit CK.kategorie_id in
|
||
scratcher Profil |
#5 · Zasláno: 25. 6. 2009, 09:26:21
diky moc, to uz je OK
|
||
Časová prodleva: 15 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0