Nieuw lid |
|
Dag mensjes ,
Ik ben mezelf ongeveer aan het opvreten met het volgende probleem :
Ik heb een tabel die er ongeveer als volgt uitziet ;
id titel name added(unixtime)
In deze tabel worden via curl/cronjobs gegevens geplaatst van de laatste Tv Series.
VB tabel :
id titel Naam added
96 Journeyman.S01E01.720p.HDTV.x264-HDQ Journeyman 1191438612
Nou hebben dus meerdere rijen de zelfte NAME , ik wil dus eigenlijk uit de DB hebben
Elke NAME , maar 1 maal , gesorteerd op added ( datum) met het aantal rijen die naam nog meer hebben
SELECT * count(*) as count FROM crawl_tv WHERE found ='yes' GROUP BY name ORDER BY added DESC
Het probleem : hij zoekt met die group by naam natuurlijk op alfabet , dus de eerste naam die hij tegenkomt ( en waarvan hij de rij neemt ) is dus niet de laatste toegevoegde serie.
Welke query zou ik anders kunnen nemen ?
ALvast bedankt jongens,
- Paolo
Update:
Opgelost , je kan dus wel in een query dit voor elkaar krijgen
Ik had eerst
SELECT titel, name, added
FROM crawl_tv s1
WHERE added=(SELECT MAX(s2.added)
FROM crawl_tv s2
WHERE s1.name = s2.name ) ORDER BY added DESC
maar dan kreeg ik count er niet meer tussen dus nu is het :
SELECT name,titel, MAX(added) AS added ,count(name) as count
FROM crawl_tv
GROUP BY name ORDER BY added DESC
|