27. oktober 2003 - 16:17
Der er
16 kommentarer og 1 løsning
Select med sum og AS
Jeg fatter ikke hvorfor det ikke virker. jeg har en hjemmeside hos brinkster og de har en lille SQL box der kalder op mod en Access DB. Dvs. man indtaster SQL i boxen og bliver udført på DB. problemet er at følgende virker select Homeside, SUM(homepoints) from match Group by homeside Order by SUM(homepoints) DESC MEN det gør følgende ikke: select Homeside, SUM(homepoints) As points from match Group by homeside Order by Points DESC Det giver denne fejl: [Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1. Jeg gætter på at det har noget med AS at gøre men vil gerne have hjælp til at løse mysteriet.
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
27. oktober 2003 - 17:27
#1
select Homeside, SUM(homepoints) As points from match Group by homeside Order by SUM(homepoints)DESC
27. oktober 2003 - 17:27
#2
.
27. oktober 2003 - 19:44
#3
Hvad skulle det hjælpe?
27. oktober 2003 - 19:48
#4
have you tried it?
27. oktober 2003 - 19:52
#5
this works (directly from Access) SELECT match.homeside, Sum(match.homepoints) AS points FROM [match] GROUP BY match.homeside ORDER BY Sum(match.homepoints);
27. oktober 2003 - 19:54
#6
this does too SELECT homeside, Sum(homepoints) AS points FROM match GROUP BY homeside ORDER BY Sum(homepoints);
27. oktober 2003 - 19:54
#7
this DOES NOT WORK SELECT homeside, Sum(homepoints) AS points FROM match GROUP BY homeside ORDER BY points
27. oktober 2003 - 19:56
#8
so I suggest you try my anwer! The reason why you get the error "Too few parameters. Expected 1." is becuase it is looking for "points" in ORDER BY points that is why I changed it to Order by SUM(homepoints)DESC
27. oktober 2003 - 19:57
#9
and just to make sure, there should be a space before DESC Order by SUM(homepoints) DESC
27. oktober 2003 - 19:58
#10
So here is the correct solution SELECT homeside, Sum(homepoints) AS points FROM match GROUP BY homeside ORDER BY Sum(homepoints) DESC;
27. oktober 2003 - 19:59
#11
actually not much different to my first answer :o)
27. oktober 2003 - 20:15
#12
Men det er heller ikke ret meget forskelligt fra det jeg selv har fået til at virke. Hvorfor skulle man skrive 'AS points' hvis man ikke bruger det "Alias" til noget. Grunden til jeg gerne vil kalde kolonnen points er fordi jeg skal kunne kalde den i et ASP-recordset og det kan jeg ikke ved at skrive rs("Sum(homepoints)), men hvis kolonnen defineres som (AS) points kan jeg bruge det i mit recordset.
27. oktober 2003 - 20:25
#13
first, I placed an answer to the problem with the code you were having problems with NOT the code you were NOT haing problems with! If you use this SELECT homeside, Sum(homepoints) AS points FROM match GROUP BY homeside ORDER BY Sum(homepoints) DESC; You will have a two fields in your recordset, homeside and points This line ORDER BY Sum(homepoints) DESC; is ONLY used to sort the result, nothing else. The name you want to use in your recordset WILL BE points.
27. oktober 2003 - 20:27
#14
ok jeg checker lige
27. oktober 2003 - 20:28
#15
I also use as points in my answer! The only difference is the last line which was causing the error!
27. oktober 2003 - 20:30
#16
Du har ret. Jeg bøjer mig i støvet. Sorry I ever doubted you :o)
27. oktober 2003 - 20:32
#17
no problem, we got there in the end :o) og tak!
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser