webForumDet fria alternativet

Problem med DISTINCT

2 svar · 216 visningar · startad av Pudolf

PudolfMedlem sedan juli 2000224 inlägg
#1

Hej jag har ett problem med en SQL-kod. Jag har en tabell som ser ut ung. såhär: (stiligt va? ;))

--id-------pid--------bild-----------datum----
  10        1         [red]nr22[/red]        2003-01-09
  9         1         nr21        2003-01-09
  8         1         nr20        2003-01-09
  7         4         [red]nr77[/red]        2003-01-07
  6         4         nr78        2003-01-07
  5         4         nr79        2003-01-07
  4         3         [red]nr09[/red]        2003-01-05
  3         6         [red]nr113[/red]       2003-01-03
  2         6         nr114       2003-01-03
  1         1         [red]nr55[/red]        2003-01-01

Jag vill då ta fram 1 bild (den senaste) varje gång det blir ett nytt pid (alltså inte fler bilder från samma pid efter varandra!), det där lät knepigt så jag markerar med rött vilka bilder som isånafall skulle tas ut!

Jag testade med den här koden:

$sql = "SELECT DISTINCT pid, id, bild, datum FROM mina_bilder ORDER BY id DESC LIMIT 10";

Men då visas bara de 10 senaste rakt av (id 10 ner till 1 alltså). Är det inte så man ska använda DISTINCT eller? :)

LarsGMedlem sedan dec. 200012 465 inlägg
#2

Nej distinct är inte rätt väg. Detta kräver subselect och därmed 4.1 av Mysql. Eftersom den inte är stabil så ...

http://www.mysql.com/doc/en/example-Maximum-column-group-row.html

PudolfMedlem sedan juli 2000224 inlägg
#3

Åh.. vilken otur! :)

Då får jag hitta på något nytt, tack för det snabba svaret :)

Genererad på 378 ms · cache AV · v20260730165559-full.f96bc7eb