03. maj 2003 - 12:40
Der er
14 kommentarer og 2 løsninger
Tælle forkomster i MySQL
Hey.. Jeg har f.eks. $result = mysql_query("SELECT * FROM users"); Hvordan tæller jeg sammenkomster af f.eks. email adresser således at kan få en liste (evt i array) a'la 10 email@dk.dk 4 email2@dk.dk 5 email3@dk.dk 6 email4@dk.dk 2 email5@dk.dk Kan man det, på en "nem" måde?
Annonceindlæg fra Cognizant
Prøv: SELECT COUNT(*) AS antal FROM tabel GROUP BY email
schaefner's er umidbart den nemmeste, men denne vil også virke (hvis du alligevel skal bruge queryet til noget) $query = mysql_query("SELECT * FROM users"); echo mysql_num_rows($query);
<?php $result = mysql_query("SELECT *,COUNT(*) AS antal FROM squnk GROUP BY email"); while($row = mysql_fetch_array($result)) { echo "$row[antal] $row[email]<br>"; } ?>
schaefner => samme (ca) ville opnås med: <?php $result = mysql_query("SELECT * FROM squnk GROUP BY email"); echo "der er " . mysql_num_rows($result) . " emails i databasen...<br>"; while($row = mysql_fetch_array($result)) { echo $row[email] . "<br>"; } ?>
skal dea_pg have point, eller skal schaefner løbe solo med dem alle?
Dea_pg > Smid et svar, så smider jeg lidt flere point i puljen, så får du også lidt.
ok, lidt point vil jeg da gerne have...
sorry, havde lidt misforstået spørgsmålet... min fejl... ;) men så ved du det til en anden gang...
det er fordi jeg har skiftet kodeord på databasen og ikke har fået det ændret ;)
Tillægsspørgsmål: (jeg afsætter bare flere point, hvis i kan hjælpe med denne) $result = mysql_query("SELECT *,COUNT(*) AS antal FROM squnk GROUP BY email"); Hvordan får jeg den til at sortere efter flest forkomster, i.e. 3 jkj 2 klj 1 lklkj Og dernæste Hvordan får jeg den til at vise kun dem der kommer flest af (en slags top5) Jeg har forsøgt en kombination med LIMIT, men den virker ikke :(
Den første: SELECT *,COUNT(*) AS antal FROM squnk GROUP BY email ORDER BY antal DESC
SELECT *,COUNT(*) AS antal FROM squnk GROUP BY email ORDER BY antal DESC LIMIT 5
Tak til jer begge.. ikke alene har jeg fået løst (endnu!) et problem.. har også lært lidt :)
Vi tilbyder markedets bedste kurser inden for webudvikling