lolukokasosMedlem sedan mars 2001196 inlägg
Hej!
Jag har en kolumn med filnamn, vad jag vet så kommer jag ha filer som; .gif, .jpg, .bmp, .doc och .edr.
Mitt problem är att en post i en relaterad tabell kan ha flera av dessa filnamn. Så, mitt problem är att i selekteringen alltid få .gif-filerna först.
Går detta? Det skulle vara skönt att slippa lägga till en kolumn som bara va till för att sköta det här.
/Lukas
LarsGMedlem sedan dec. 200012 465 inlägg
Det går väl, den exakta syntaxen beror lite på vilken databas du använder
select tabell.*,case when upper(right(filename,3)) = 'GIF' then 0 else 1 end as orderCriteria from tabell order by orderCriteria,filename
Borde fungera i SQL server t.ex.
------------------
essentitia preter non sans multiplicandum
lolukokasosMedlem sedan mars 2001196 inlägg
Tyvärr måste jag hålla mig till Access, där verkar inte denna kod funka.
Är det nån som vet hur motsvarande i Access skulle se ut? Jag skickar med koden som jag försökt med. LarsG, du får en * i kanten IGEN ;-).
/Lukas
lolukokasosMedlem sedan mars 2001196 inlägg
Glömde koden....
SELECT DISTINCT *, case when upper(right(fil_Namn,3)) = 'GIF' then 0 else 1 end as orderCriteria
FROM Datablad LEFT JOIN Lankar ON [Datablad].[regId]=[Lankar].[reg_Id]
WHERE [niva] Between 10 And 40
ORDER BY [Datablad].[regId], orderCriteria;
LarsGMedlem sedan dec. 200012 465 inlägg
SELECT *
FROM Datablad LEFT JOIN Lankar ON [Datablad].[regId]=[Lankar].[reg_Id]
WHERE [niva] Between 10 And 40
ORDER BY [Datablad].[regId], iif(ucase(right(fil_namn,3))='GIF',0,1)
Jag blir lite osäker på om Access stöder att man anger uttryck i order by. Om ovanstående inte går igenom så kan du testa detta
SELECT iif(ucase(right(fil_namn,3))='GIF',0,1),*
FROM Datablad LEFT JOIN Lankar ON [Datablad].[regId]=[Lankar].[reg_Id]
WHERE [niva] Between 10 And 40
ORDER BY [Datablad].[regId], 1
------------------
essentitia preter non sans multiplicandum
[Redigerat av LarsG den 13 nov 2001]
lolukokasosMedlem sedan mars 2001196 inlägg
Båda verkar funka! Nu får du en ännu större stjärna i kanten :-D!
Man tackar!
/Lukas