SELECT total_rating, total_rating_build_date WHERE x = y ORDER BY total_rating+0 DESC
mha +0 så borde den se fältet som numerisk och sortera i numerisk ordning.
12 svar · 393 visningar · startad av mattiasnordin
Min fråga ser ut något liknande:
SELECT total_rating, total_rating_build_date WHERE x = y ORDER BY total_rating DESC
Har för mig att man kunde skriva cdbl(total_rating) men då får jag ett felmeddelande. Är det någon som förstår mitt problem?
Jag vill alltså att sorteringen ska vara
10
9
8
4
Ej
9
8
4
10
Mvh
Mattias
SELECT total_rating, total_rating_build_date WHERE x = y ORDER BY total_rating+0 DESC
mha +0 så borde den se fältet som numerisk och sortera i numerisk ordning.
Jag hade ett liknande problem med min mySQL-databas, problemet låg i att det fanns en IFNULL() när man tog bort den så fungerade det igen.
Jag får det fortfarande inte att fungera. Jag har provat alla exempel ovan. Hjälp...
Vilken datatyp är det på total_rating?
Jag har provat flera olika datatyper. I början hade jag datatyp textfält (vilket inte var rätt!) men nu när jag har ändrat det till ett numeriskt fält så avrundas allt. Fältet måste kunna stödja två decimaler. 9,86 måste få vara ett giltigt värde. Nu får alla fält värdet 10...
Jag använder Access 2002 som databas.
????
Skall man lagra tal skall man givetvis använda talfält. Det finns inställningar i Access där du bestämmer vilken sorts talfält det skall vara. Double / dubbel är vettig fältlängd, eftersom det är en decimaltalstyp.
Mvh
Jag använder nu Numeriskt fält.
Har bytt fältlängd från "Integer" till "double" och då fungerar det som det skulle.
Detta är första gången jag har behövt byta default fältlängd. Är detta något som är ovanligt?
Jag tackar @nders och webForum för att jag fortfarande har mitt hår kvar !!!!!
Kan man få databasen att automatiskt lägga på 00 siffror så att alltid sifferkombinationen består av 5 tecken?
Typ 10.00 eller 09.89 ?
Eller får jag skripta ihop detta?
Mvh
Mattias
Ovanligt, och ovanligt, det beror på vad du ska lagra i fältet. Eftersom defaultinställningen är Långt heltal / Long, kan du bara lagra heltal i fältet, och ska du då lagra decimaltal får du byta fältlängd. Att det heter fältlängd kan tyckas vara lite förvillande, och jag håller med. Det borde vara två olika datatyper istället, exempelvis integer och float eller decimal. Så ser det ut i till exempel MySQL och Microsoft SQL Server.
Mvh
mattiasnordin skrev:
Kan man få databasen att automatiskt lägga på 00 siffror så att alltid sifferkombinationen består av 5 tecken?
Typ 10.00 eller 09.89 ?Eller får jag skripta ihop detta?
Mvh
Mattias
Lös det i applikationen, det är lättast. Om man använder ASP:
Response.write Right("0" & objRS("fältet"), 5)
Mvh,
Tack !
Varsågod. :)