30. august 2006 - 16:56Der er
1 kommentar og 1 løsning
distinct første felt, plus tilhørende data ikke distinct
Lad os sige min tabel ser således ud.
# | kol1 | kol2 | kol3 1 | ibm | europa tysklan | berlin 2 | ibm | europa holland |amsterdam 3 | ibm | europa tjekkiet | prag 4 | ca | asien kina | beijing 5 | ca | asien sydkorea | something 6 | avh | europa danmark | københavn 7 | avh | europa sverige | stockholm
Hvordan får jeg data ud så kol1 alle er forskellige. og de resterende informationer kommer med ud. fx.
# | kol1 | kol2 | kol3 1 | ibm | europa tysklan | berlin 5 | ca | asien sydkorea | something 6 | avh | europa danmark | københavn
Det skal nærmest være distinct på kol1 men de resterende informationer skal bare med, ligemeget hvad de er.
Fx hvis man skal have fat i ibm, men ligegyldigt hvor de befinder sig. Håber jeg gør mig klar nok om hvad det er jeg gerne vil have gjort.
SELECT kol1, MIN(kol2) AS MinKol2, MIN(kol3) AS MinKol3 FROM tabel GROUP BY kol1 ORDER BY kol1 DESC
men så kunne man ikke garantere, at værdierne i MinKol2 og MinKol3 "hænger sammen". Med de viste data ville det ganske vist resultere i
ibm, europa holland, amsterdam ca, asien kina, beijing avh, europa danmark, københavn
hvilket faktisk er ok, selvom det ikke er helt det samme resultat, som det du ønsker.
Men hvis række 3 havde heddet ibm, europa frankrig, paris
så ville resultatet af ovenstående forespørgsel have været ibm, europa frankrig, amsterdam ca, asien kina, beijing avh, europa danmark, københavn
Desværre er der vist ikke andre muligheder - med mindre tabellen også har et felt, som er unikt pr. række, normalt et felt som bruges som primær nøgle. Mange har et autonummer felt, som bruges på den måde. Måske har du jo også sådan et felt, men har bare ikke oplyst om det?
Hvis vi nu antager, at du har et sådant felt - vi kalder det Id, så ville du kunne bruge en forespørgsel som
SELECT * FROM tabel WHERE Id IN (SELECT MIN(Id) FROM tabel GROUP BY kol1) ORDER BY kol1 DESC
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.