webForumDet fria alternativet

default sortering

Databaser & SQL

6 svar · 213 visningar · startad av nkrantz

Medlem sedan apr. 2002830 inlägg
Frågan#1

Hej,

Inget stort problem men det är ändå irriterande. När jag går in i phpMyAdmin så listas mina poster lite som de själva vill. De listas alltid på samma sätt, men jag kan inte se någon ordning i det. Skulle helst vilja att den sorterade på mitt id nummer, men det gör den inte nu.

Kan man lösa detta på något sätt? Och vad är, om det nu finns, default sorteringen?

mvh,
Nippe

Medlem sedan juli 20033 147 inlägg
#2

:)

Välj en tabell, tryck Operationer och ta Sortera om tabellen efter id.
Du får välja columnen id i en dropdownmeny.

Medlem sedan apr. 2002830 inlägg
#3

Jo, men alltså, jag vet ju hur jag sorterar den i phpMyAdmin, beskrev kanske lite ottydligt. Jag vill att default sorteringen skall vara efter id...

Medlem sedan juli 20033 147 inlägg
#4

Aha, that's beyond my knowledges. ;)

Medlem sedan dec. 200012 464 inlägg
#5

Det finns ingen default sortering i en relationsdatabas. Om du vill ha något i en viss ordning så måste du alltid ange order by.

Medlem sedan apr. 2002830 inlägg
#6

Okej, men hur kommer det sig så att phpMyAdmin _alltid_ sorterar i samma ordning?

Medlem sedan juli 2002630 inlägg
#7

det är inte så att MySQL-admin/MySQL slumpar ut hur den sorterar...

En relationsdatabas har sätt att avgöra i vilken ordning tabeller ska sorteras om inget annan anges. T.ex. sorteras alla tabeller stigande (asc) om inget annat anges. Vilken kolumn som väljs för sortering beror (sannolikt, nu gissar jag bara) på om kolumnen är primärnyckel, unik, indexerad, oindexerad osv. Om flera tabeller är t.ex oindexerade avgör datatypen vilken kolumn som prioriteras. Gissningsvis sorteras heltal före strängar osv.

Men som LarsG säger, det finns inget standardsätt som databasen sorterar efter så du måste slänga in en sorteringsdel i frågan exempelvis
SELECT id, fornamn, efternamn FROM tabell ORDER BY efternamn ASC

En annan teori är att databasen hostar ur sig informationen på det sätt som går absolut snabbast vilket torde vara att den bara skriver ut rad för rad i databasen.

Jaja, nu ska jag ut och ta en promenad runt Växjösjön så har ni lite att diskutera under tiden :)

252 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
122 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)