11. marts 2008 - 12:54
Der er
9 kommentarer og 1 løsning
Udtræk af én record fra hver kategori
Jeg skal lave et udtræk fra denne tabel kaldet Galleri: ID***ArtsID***Filnavn 1****1*******aaa.jpg 2****1*******bbb.jpg 3****2*******ccc.jpg 4****3*******ddd.jpg 5****3*******eee.jpg 6****3*******fff.jpg 7****4*******ggg.jpg 8****4*******hhh.jpg således at der kommer én jpgfil for hver ArtsID (ID skal også med): ID***ArtsID***Filnavn 1****1*******aaa.jpg 3****2*******ccc.jpg 4****3*******ddd.jpg 7****4*******ggg.jpg Det burde være simpelt, vl jeg mene, men jeg er alligevel kørt sur i det, fordi jeg ikke får ID med. Det nærmeste jeg kommer er uden ID: SELECT DISTINCT ArtsID, (SELECT TOP (1) Filnavn FROM Galleri AS t2 WHERE (ArtsID = t1.ArtsID)) AS Filnavn FROM Galleri AS t1 Kan nogen hjælpe? Hilsen Thomas
Annonceindlæg fra Hitachi
”Forskellighed gør os stærkere!”
Diversitet er ikke kun buzzwords og politisk korrekthed, men et spørgsmål om at alle føler sig godt tilpas og kan yde deres bedste.
31. januar 2025
11. marts 2008 - 13:08
#1
Hvordan ved du, at det er ArtsID=1 og aaa.jpg du skal bruge og ikke ArtsID=! og bbb.jpg?????
11. marts 2008 - 15:04
#2
Det er ligemeget, det kan være ArtsID=1 og aaa.jpg ELLER ArtsID=1 og bbb.jpg. Det vigtige er at få et enkelt filnavn for hver artsid.
11. marts 2008 - 17:46
#3
Du vil kun have ét filnavn ud, sammen med artsid? Du vil ikke have alle filer med ud? SELECT ArtsID, MIN(Filnavn) FROM Galleri GROUP BY ArtsID
11. marts 2008 - 17:53
#4
Bare ét filnavn pr artsid, men id skal også med
11. marts 2008 - 17:54
#5
SELECT ID, ArtsID, MIN(Filnavn) FROM Galleri GROUP BY ID, ArtsID
11. marts 2008 - 19:02
#6
Nej, den dur ikke, den skriver alle records bare ud
11. marts 2008 - 22:01
#7
Jamen det KAN du ikke. Hvis du vil ha' alle felter så får du alle records fordi de er forskellige på filnavn. Prøv at gå 2-3 skridt tilbage og tænk over HVAD det er du har brug for FØR du begynder på en select .... hvorfor skal du ha' 'bare en eller anden'???? og hvad er kriterierne for 'en eller anden'? Databaser er for dumme til at kunne vælge for dig ;) Ellers må du skrive flere detaljer så vi bedre kan forstå den opgave du vil løse.
11. marts 2008 - 23:21
#8
Sådan: SELECT MIN(ID) AS ID, ArtsID, (SELECT Filnavn FROM Galleri WHERE ID = MIN(g1.ID)) FROM Galleri g1 GROUP BY ArtsID
12. marts 2008 - 08:08
#9
Sådan! Tak for hjælpen. Hilsen Thomas
15. marts 2008 - 20:18
#10
selv tak
Computerworld tilbyder specialiserede kurser i database-management