distinct problem

Databaser & SQL

3 svar · 456 visningar · startad av MM

Medlem sedan maj 2000138 inlägg
Trådstart#1

Får inte till det med DISTINCT, jag får dubletter... x(

 strSQL = "SELECT DISTINCT (refid), id, rubrik, kund, bildnamn, datum  FROM Referenser r INNER JOIN Referensbilder rb ON r.id = rb.refid  WHERE aktiv =1 order by  id desc" 
  Set objRS = Conn.Execute(strSQL)

har alltså en tabell med referenser och en med bilder. Det kan vara flera bilder till en referens, men jag vill visa listan med en rad för varje referens, oavsett om det finns en eller flera tillhörande bilder. (nu blir det dubbla rader om det finns fler bilder.)

Medlem sedan mars 20032 667 inlägg
#2

Distinct fungerar inte på en enskild kolumn utan på hela selectlistan.

Vad händer om du grupperar på alla fält i din selectlista?

Medlem sedan maj 2000138 inlägg
#3

Ja, så enkelt var det ju! Den här sqlsatsen funkade: (lade bara till group på refid, för det är det id som är unikt för referensen.

strSQL = "SELECT DISTINCT (refid), id, rubrik, kund, bildnamn, datum  FROM Referenser r INNER JOIN Referensbilder rb ON r.id = rb.refid  WHERE aktiv =1 Group by refid order by  id desc"

Tack för hjälpen

Medlem sedan dec. 200012 464 inlägg
#4

Flyttas från ASP

251 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)