Autor Zpráva
fimmos
Profil
Dobrý večer,
trápím se s následujícím dotaze... Potřebuji vybrat sloupce s posledními 4 záznamy celkově ze dvou tabulek, přičemž sloupce jsou stejného typu, a pak ještě vyfiltrovat záznamy, kde v těch prvních spojených tabulkách se rovná záznamu ve třetí tabulce.

Snad to nebude tak těžké... Děkuji
Martin
Profil
Můžeš sem dát struktury tabulek?
fimmos
Profil
komentare_clanky:
id
cislo_clanku
datum
komentar

komentare_fotoblog:
id
cislo_clanku
datum
komentar

clanky:
id
url
kategorie
shrnuti
clanek
id_autor

Potřebuji vybrat poslední 4 komentáře z těch dvou tabulek komentářů a odkazovat na ně. Odkazy mám ve tvaru /clanek/nejaky-clanek čili si musí odpovídat cislo_clanku s clanky.id a podle toho vybrat url.
Kajman_
Profil *
A ještě druh a verzi sql :-)
fimmos
Profil
mysql verze 4.1.15
Kajman_
Profil *
Možná by to mohlo být takhle nějak...

select * from ((select id as id_k, cislo_clanku,datum, komentar, 'clanky' as kat from komentare_clanky order by id_k desc limit 4)
union all
(select id as id_k, cislo_clanku,datum, komentar, 'fotoblog' as kat from komentare_fotoblog order by id_k desc limit 4)) as kom, clanky where kom.id_k=clanky.id order by datum desc limit 4

Možná tam budou nějak špatně závorky nebo něco... prostě bych vzal poslední čtyri z obojeho, spojil je a tohle bych seřadil podle datumu... mělo by to být rychlejší než to spojit celé a seřadit až pak.
fimmos
Profil
No, zkoušel jsem to, ale nic to nevrátí...
fimmos
Profil
Tak jsem na to nakonec přišel...
Toto téma je uzamčeno. Odpověď nelze zaslat.

0