Sk!ppy Skrevet 23. april 2009 Del Skrevet 23. april 2009 Hei. jeg har koden: $manhigh = mysql_query("SELECT MAX(SUM(km)), navn FROM `res` WHERE `kjonn`='mann'") or die(mysql_error()); Jeg vil da altså summere sammen "km", og derreter velge det høyeste som blir da. Igjen skal kjønnet vær mann. jeg får error: Invalid use of group function takk på forhånd Lenke til kommentar
Thomas. Skrevet 23. april 2009 Del Skrevet 23. april 2009 SELECT * FROM `res` WHERE `kjonn`='mann' ORDER BY km DESC LIMIT 1 Lenke til kommentar
Sk!ppy Skrevet 23. april 2009 Forfatter Del Skrevet 23. april 2009 Jeg skal forsatt legge sammen "km" Skal se om jeg får lagd noe ut av den.. Lenke til kommentar
Ernie Skrevet 23. april 2009 Del Skrevet 23. april 2009 Okey, her er det noen jeg definitivt ikke helt skjønner. Du skal summere alle verdier fra feltet 'km' i tabellen hvor feltet 'kjonn' er satt til 'mann' og finne maks verdi av det? Altså du skal på papiret finne maks av en eneste verdi? Hva er poenget med det? Tror du bør forklare litt bedre hva du ønsker å komme frem til. Lenke til kommentar
Sk!ppy Skrevet 23. april 2009 Forfatter Del Skrevet 23. april 2009 Jeg har en tabell som ser sånn ut : Felt Type Null Standard Kommentarer id int(11) Nei dato varchar(255) Nei navn varchar(255) Nei ansnr varchar(255) Nei km varchar(255) Nei kjonn varchar(255) Nei Hvor jeg skal plusse sammen feltet KM, sånn at vær unike person får kun ett tall, og ikke X antall. Den skal igjen sortere etter kjonn. Håper det var litt bedre? Lenke til kommentar
Jonas Skrevet 23. april 2009 Del Skrevet 23. april 2009 (endret) Okey, her er det noen jeg definitivt ikke helt skjønner. Du skal summere alle verdier fra feltet 'km' i tabellen hvor feltet 'kjonn' er satt til 'mann' og finne maks verdi av det? Altså du skal på papiret finne maks av en eneste verdi? Hva er poenget med det? Tror du bør forklare litt bedre hva du ønsker å komme frem til. Jeg antar at hver person har løpt flere ganger og hvert løp er oppført som én rad. Trådstarter vil finne ut hvilken mann som tilsammen har løpt lengst. $manhigh = mysql_query("SELECT SUM(km), navn FROM `res` WHERE `kjonn`= 'mann' GROUP BY navn ORDER BY SUM(km) DESC LIMIT 1") or die(mysql_error()); Endret 23. april 2009 av Jonas Lenke til kommentar
Edorph Skrevet 23. april 2009 Del Skrevet 23. april 2009 (endret) Litt vanskelig å forstå hva du vil ja.. antar at du har en tabell omtrent som denne: | navn | km | kjonn | ----------------------------- | bob | 2 | mann | | sue | 3 | kvinne | | bob | 4 | mann | | sue | 5 | kvinne | | fred | 2 | mann | Hvis jeg tolket spørsmålet ditt riktig, så kan du prøve noe sånn som dette kanskje? SELECT navn, SUM(km) AS kmsum FROM res WHERE kjonn='mann' GROUP BY navn ORDER BY kmsum DESC LIMIT 1 Da får du ut navnet til den av mennene som har flest km totalt, samt det totale antall km for den mannen. Edit: Beaten to the punch! Endret 23. april 2009 av Edorph Lenke til kommentar
Sk!ppy Skrevet 23. april 2009 Forfatter Del Skrevet 23. april 2009 (endret) Åjo.. Beklager, Tror jeg glemte å nevne i siste post. Den skal etter alt det, Velge personen som har gått LENGST , av alle. Tror det er løst nå $manhigh = mysql_query("SELECT SUM(km), MAX(km), navn FROM `res` WHERE `kjonn`= 'mann' GROUP BY navn ORDER BY SUM(km) DESC LIMIT 1") or die(mysql_error()); Endret 23. april 2009 av LaCrouX Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå