webForumDet fria alternativet

Ingen normal sortering

5 svar · 139 visningar · startad av lolukokasos

lolukokasosMedlem sedan mars 2001196 inlägg
#1

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
#2

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
#3

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
#4

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
#5
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
#6

Båda verkar funka! Nu får du en ännu större stjärna i kanten :-D!

Man tackar!

/Lukas

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