At vise top 5 og flette to tabeller sammen?

Tags:    php mysql

Jeg er stødt på et lille problem som jeg håber kan løses uden alt fro meget besvær. Håber nogen kan hjælpe mig?

Jeg har en side hvor jeg vil hente de seneste 5 opdaterede poster i en tabel "Databasen"
Men jeg skal samtidig bruge info fra tabel "billeder".
Derfor har jeg lavet en inner join af disse to.

Problemet er så, at selvom jeg vælger "ORDER BY Dato_op" som er et felt i "Databasen" som indeholder en dato for seneste opdatering, så virker det som om den sortere mere eller mindre ud fra feltet "id" i "billeder".

Her er min kode:
Fold kodeboks ind/udPHP kode 


Men som sagt - hvis der er uploadet 3 nye billeder til "billeder" af samme hest - så viser den denne hest 3 gange på min top 5. Jeg vil jo gerne at den viser denne top 5 KUN sorteret ud fra mit Dato_op felt i "Databasen".

Hvordan er det jeg skal gøre anderledes?



6 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 4 karma
Sorter efter stemmer Sorter efter dato
LINMIT 1 vil kun hente 1 post ud, men som jeg forstår det skal der flere poster ud, men hver id kun 1 gang
løsningen er kig på distinct
http://dev.mysql.com/doc/refman/5.7/en/distinct-optimization.html
http://stackoverflow.com/questions/6127338/sql-select-distinct-but-return-all-columns




du kommer muligvis også til at bruge limit 5, som du skrev i udgangs spørgsmålet
tag også og kig på group by, som kan være et alternativ til distinct
http://dev.mysql.com/doc/refman/5.7/en/group-by-functions.html

lav evt et begrænset dump af 2 test tabeller og dit ønsket output og lig det herind, det er nemmere at skrive ud fra konkrate data




Slet ingen som kan hjælpe mig her????

Fold kodeboks ind/udPHP kode 



Ovenståene kode viser mig samme hest (hid) flere gange fordi der er flere billeder tilknyttet (hestid).
Og jeg vil kun have hver hest vist én gang.



Indlæg senest redigeret d. 31.07.2013 13:21 af Bruger #17644
Tilføj LIMIT 1 i enden på din query.



Ja Limit kan jeg ikke bruge, da jeg netop skal hente flere heste ud - men kun én gang for hver hest.

Jeg tager et kig på de der links



Jeg har netop valgt at bruge Group by - og det ser ud til at virke helt som det skal, så det var jo dejlig nemt :)



t