Webmaster Forum Logo Part 1 Webmaster Forum Logo Part 2
Webmaster Forum Logo Part 3
     
 
  :: Anmeldung

Benutzername:

Registrierung...

Passwort:

Passwort vergessen?

angemeldet bleiben


  
  :: Umfrage
Welche sozialen Netzwerke benutzt du regelmäßig?

 Facebook
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 73%
 keines
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 22%
 Google+
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 19%
 Twitter
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 11%
 Xing
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 6%
 schülerVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 6%
 meinVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 studiVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 MySpace
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%
 LinkedIn
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%

 ges. 393 Stimmen
 
  :: Buttons

Valid XHTML 1.0 Transitional

Dabei seit: 10.02.2003

Beiträge: 2 037

 

1 Zum Seitenanfang

Mittwoch, 1. April 2009, 03:03

count group by?

hi@all!

ich habe das handbuch mysql gelesen um folgendes problem zu lösen: ich habe z.b eine tabelle mit 6 zeilen, wobei aber 5 dieselbe emailadresse haben, es gibt also in der spalte 'email' zwar 6 zeilen, aber nur 2 verschiedene emailadressen, die ich gezählt haben will, also fand ich GROUP BY (auch bei count(*)), ABER der folgende code gibt NUR 1 aus, obwohl es 2 sein müsste ?(

nun der code:

PHP-Quelltext

1
2
3
4
5
<?php
$queryz mysql_query("SELECT email, count(*) AS anzahl1 FROM realtype_ordered_nl GROUP BY `email`");
$rowz mysql_fetch_array($queryz);
echo 'Alle User: <b>'.$rowz['anzahl1'].'</b>';
?>


wieso zählt er nicht 2 verschiedene emailadressen, sondern nur eine?(


EDIT um 0300:

hat sich erledigt klappt mit DISTINCT

PHP-Quelltext

1
2
3
4
5
<?php
$query mysql_query("SELECT DISTINCT email FROM `realtype_ordered_nl`");
    $count mysql_num_rows($query);
    echo 'Alle User: <b>'.$count.'</b>';
?>


... jetzt zählt er nimmer 1 sondern richtig 2 :D
Im Leben gibt man nur Briefe auf, sonst nix!
www.realtype.org

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »webmastersworld« (1. April 2009, 03:03)

 

Norvares

unregistriert

2 Zum Seitenanfang

Mittwoch, 1. April 2009, 15:32

Wenn du es mit

MySQL-Abfrage(n)

1
SELECT COUNT(DISTINCT email) as anzahl from realtype_ordered_nl


machst, kannst du es über fetch_array einfach ausgeben lassen und sparst unnütze rechnerei in php.

Somit wälzt du die Arbeit auf den DB Server ab der für solche Funktionen optimiert ist.

Gruß

Norvares
 

Dabei seit: 10.02.2003

Beiträge: 2 037

 

3 Zum Seitenanfang

Mittwoch, 1. April 2009, 16:32

THX :D für diese performanceoptimierende info :D:D
Im Leben gibt man nur Briefe auf, sonst nix!
www.realtype.org