Avatar billede 13thsky Nybegynder
21. februar 2007 - 21:18 Der er 15 kommentarer og
1 løsning

hente GROUP BY værdierne

når jeg har lavet en:
$1= mysql_query (" bla bla GROUP BY serienummer");
$2 = mysql_fetch_row($1);

Hvordan printer jeg så værdien for hver group?
Avatar billede coderdk Praktikant
21. februar 2007 - 21:22 #1
Du har den vel bare med i SELECT felterne?!

SELECT felt1, felt2 FROM tabel GROUP BY felt2
Avatar billede 13thsky Nybegynder
21. februar 2007 - 21:29 #2
problemet er at jeg bruger SELECT count(*) FROM
Avatar billede coderdk Praktikant
21. februar 2007 - 21:37 #3
Og?
Avatar billede 13thsky Nybegynder
21. februar 2007 - 21:39 #4
hvad skal jeg så skrive? Er lidt newbie...
Jeg vil gerne ha at den skal printe antallet der er i hver group.
altså antallet af input hvor serienummeret er 1,
antallet af input hvor serienummeret er 2
osv...
Avatar billede sone Nybegynder
21. februar 2007 - 21:40 #5
om du laver "SELECT id" eller "SELECT count(*)" - så er det stadig index [0] i din row du skal hente - eneste forskel er, at når du bruger COUNT så er du sikker på at der kun er én row.
Avatar billede 13thsky Nybegynder
21. februar 2007 - 21:43 #6
ok, men det jeg så skal bruge er noget i stil med:
SELECT count(*) WHERE serienummer=1, count(*) WHERE serienummer=2 osv...

Hvordan skrives det?
Avatar billede algizoft Nybegynder
21. februar 2007 - 21:45 #7
Du kan jo bruge SELECT count(*) AS antal WHERE osv. hvis du gerne vil have et navn at referere til.
Avatar billede coderdk Praktikant
21. februar 2007 - 21:45 #8
I stedet for mysql_fetch_row så brug mysql_fetch_assoc, så kan du hente værdierne sådan:

$sql = "SELECT serienummer, COUNT(*) AS antal FROM tabel GROUP BY serienummer";
$row = mysql_fetch_assoc( $resultat );
echo $row['serienummer'] . ": " . $row['antal'];
Avatar billede sone Nybegynder
21. februar 2007 - 21:54 #9
du vil gerne tælle antal rækker pr. serienummer!
- så skal du bruge en group by:

SELECT serienummer, count(serienummer) FROM tabel GROUB BY serienummer
Avatar billede sone Nybegynder
21. februar 2007 - 21:55 #10
GROUP BY...
Avatar billede 13thsky Nybegynder
21. februar 2007 - 21:59 #11
TIL coderdk:

Ja, det virker, men jeg får kun antallet af rækker med det første serienummer ud. Skal jeg printe ud i en While, eller hvordan. Lige nu printer den blot S01: 22

TIL Sone: Det er jeg klar over, men som spørgsmålet lyder, ved jeg ikke hvordan jeg printer værdierne...
Avatar billede algizoft Nybegynder
21. februar 2007 - 22:01 #12
Du putter coderdk's sidste linie ind i en while løkke

while ($row = mysql_fetch_assoc( $resultat )) {
    echo $row['serienummer'] . ": " . $row['antal'];
}
Avatar billede 13thsky Nybegynder
21. februar 2007 - 22:14 #13
PERFEKT- SÅDAN!!!!

Drop svar, så deler jeg mellem coderdk og algisoft...
Avatar billede algizoft Nybegynder
21. februar 2007 - 22:18 #14
Giv dem bare til coderdk... Jeg går ik' så meget op i det.
Avatar billede coderdk Praktikant
21. februar 2007 - 23:11 #15
(c:
Avatar billede 13thsky Nybegynder
21. februar 2007 - 23:25 #16
takker mange gange...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester