webForumDet fria alternativet

Sortering

Databaser & SQL

5 svar · 246 visningar · startad av asp

Medlem sedan aug. 2002733 inlägg
Frågan#1

Tja!

Jag vill sortera enligt följande:

1. De poster som har fältet "lank" ifyllt.

2. Sortering efter hits.

SELECT * FROM Tabell ORDER BY lank ASC, hits DESC.

Men nu vill jag sortera de som har fältet "lank" ifyllt efter hits också.

Hoppas ni hajjar....

Medlem sedan dec. 200012 464 inlägg
#2

Vad menar du med ifyllt? Som vanligt, ge exempel med datainnehåll och förväntat resultat.

Medlem sedan aug. 2002733 inlägg
#3

Att fältet innehåller något tecken.

Jag vill helt enkelt sortera via hits fast de poster som har fältet "lank" ifyllt skall hamna överst.

Jag antar att man får göra något if-sats eller liknande som kontrollerar om lank innehåller något och sätter en variabel till true och false och sorterar via den.

Medlem sedan dec. 200012 464 inlägg
#4

Menar du att det inte är null eller att det inte är en tom sträng?

(både:)

order by 
case when lank is not null 
  and lank <> '' then 0 else 1 end,hits
Medlem sedan aug. 2002733 inlägg
#5
SELECT * FROM Pokersidor WHERE lank <> '' AND natvark = 'DQE' ORDER BY case when min_lank is not null and min_lank <> '' then 0 else 1 end DESC, hits DESC
Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'case when min_lank is not null and min_lank <> '' then 0 else 1 end'.
Medlem sedan dec. 200012 464 inlägg
#6

Men access då.

ORDER BY iif(min_lank is not null and min_lank <> '',0,1), hits desc

inget desc på första uttrycket.

250 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)