webForumDet fria alternativet

Avancerad? sortering av data.

2 svar · 186 visningar · startad av Rocket

RocketMedlem sedan feb. 2000372 inlägg
#1

Jag vill presentera data från en databas i en specifik ordning, tillexempel foton i ett fotoalbum. Vanligen när jag kör en SELECT-sats så sorterar man efter någon av kolumnerna men ordningen i ett fotoalbum finns vanligen inte i databasen. Det skulle kunna finnas i form av tiden då kortet togs men i mitt fall funkar inte detta. Jag undrar nu hur man ska få ut datan i rätt ordning.

De sätten jag har funderat på är följande.
1. Ge alla ett ordnings-id som representerar ordningen. Den första får 100 och nästa 200 osv. På detta sätt kommer jag även att kunna lägga in bilder mellan två andra men det finns en gräns. Alltså borde det finnas ett bättre sätt.
2. Någon form av länkad lista där posten för den första bilden har id till nästa post sparat, osv. Problemet här är att veta vilken bild som är först och sedan få ut alla i rätt ordning med en SELECT-sats.

Detta måste vara att vanlig problem som redan har en lösning, kanske någon färdig funktion i mySQL?

RocketMedlem sedan feb. 2000372 inlägg
#2

Är det så illa att det inte finns någon bra lösning eller har jag kanske förklarat dåligt?

aasahMedlem sedan mars 20034 471 inlägg
#3

Jag har antagligen fel men jag tycker att det låter som om du inte tänkt igenom problemet riktigt...

Din databas kan ju omöjligt veta i vilken ordning du vill ha dina bilder, alltså måste du ange det på något sätt.

Exempel

id      beskr             ordn
1       Soluppgång         1
2       Solnedgång        10
3       Hus                2
4       Äng                7

.... order by ordning; så är saken klar ur databasens synpunkt.

Ditt problem, däremot verkar vara att bestämma dig för hur du ska numrera? Och det har ju inte med MySQL att göra?

256 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
132 ms — hämta forumlista (db)
122 ms — hämta statistik (db)
125 ms — hämta tråd, inlägg och bilagor (db)