11. december 2002 - 18:56
Der er
12 kommentarer og 1 løsning
ORDER BY ??????????
Hvad er der galt med nedenstående! det giver ingen mening! Den går galt et eller andet sted i sorteringen "order by" ------------------------------------------------ weight.Source = "SELECT * FROM weight WHERE Wweight < " & kurvtotal.Fields.Item("totalweight").Value & "ORDER BY Wprice DESC"
Annonceindlæg fra Kingston Technology
11. december 2002 - 19:00
#1
Der mangler vist et mellemrum inden ORDER BY: weight.Source = "SELECT * FROM weight WHERE Wweight < " & kurvtotal.Fields.Item("totalweight").Value & " ORDER BY Wprice DESC"
11. december 2002 - 19:05
#2
Nu virker den! men den sorterer ikke! "totalweight" er på 3500 og i Wweight er posterne ID Wweight 1 1000 2 5000 3 10000 Skulle den så ikke tage ID 2 på 5000 da man skriver: WHERE Wweight < " & kurvtotal.Fields.Item("totalweight").Value
11. december 2002 - 19:09
#3
Det skal lige med at Wprice også bliver højere med Wweight ID Wweight Wprice 1 1000 39 2 5000 42,5 3 10000 52
11. december 2002 - 19:09
#4
Nej det skulle den ikke hvis totaltweight er 3500. Er Wweight defineret som tal?
11. december 2002 - 19:12
#5
Prøv evt at udskrive SQL sætninge og ikke udføre den for at se at totaltweight er rigtigt.: weight.Source = "SELECT * FROM weight WHERE Wweight < " & kurvtotal.Fields.Item("totalweight").Value & " ORDER BY Wprice DESC" Sådan her: response.write "SELECT * FROM weight WHERE Wweight < " & kurvtotal.Fields.Item("totalweight").Value & " ORDER BY Wprice DESC"
11. december 2002 - 19:13
#6
Det er den ja! den skal dog rigtig sortere således & " ORDER BY Wweight DESC" Men det ændrer ikke at den stadig tager ID 1! - er der en anden måde det kan gøres?
11. december 2002 - 19:16
#7
Den udskriver blot SELECT * FROM weight WHERE Wweight < 3500 ORDER BY Wprice DESC hvis jeg indsætter: <% response.write "SELECT * FROM weight WHERE Wweight < " & kurvtotal.Fields.Item("totalweight").Value & " ORDER BY Wprice DESC" %>
11. december 2002 - 19:17
#8
Det har ingen betydning på om der er ORDER BY på ellerr ej for hvilke records der vælges det er udelukket WHERE og hvis den tager forkerte records er det fordi WHERE delen er forkert.. Du kan havde flere kolonner i ORDER BY hvis nogle værdier er ens kan man angive flere kolonner som den skal sortere efter man skriver med komma mellem kolonerne.. ORDER BY kolonne1, kolonne2 DESC, kolonne3 weight.Source = "SELECT * FROM weight WHERE Wweight < " & kurvtotal.Fields.Item("totalweight").Value & " ORDER BY Wweight DESC, Wprice DESC"
11. december 2002 - 19:19
#9
Er Wweight defineret som tal?
11. december 2002 - 19:21
#10
Den udskriver stadig den laveste værdi "ID 1" når jeg bruger weight.Source = "SELECT * FROM weight WHERE Wweight < " & kurvtotal.Fields.Item("totalweight").Value & " ORDER BY Wweight DESC, Wprice DESC" Kan det være noget at gøre med nedenstående? <% Dim weight__MMColParam weight__MMColParam = "1" if (Request.QueryString("Wprice") <> "") then weight__MMColParam = Request.QueryString("Wprice") %>
11. december 2002 - 19:22
#11
Ja Wweight er defineret som tal!
11. december 2002 - 19:41
#12
Sorry det var mig der var dum! den skal jo første vise næste post når totalweight er over 5000.. ID Wweight 1 1000 2 5000 3 10000
11. december 2002 - 19:41
#13
Ja hvis det ser sådan her ud: SELECT * FROM weight WHERE Wweight < 3500 Så vil den tage alle record hvor Wweight er mindre end 3500 og dermed hvor ID er 1. ok :)
Kurser inden for grundlæggende programmering