Ich möchte zählen, wie oft eine Postleitzahl in eine Datenbank eingegeben wird. Ich bin mir nicht sicher, ob ich die richtige Funktion verwende oder nicht. Auch muss ich die Postleitzahlen nach dem Jahr trennen, in dem sie in die Datenbank eingegeben wurden. Ich weiß, wie man die Jahre trennt. Worauf ich wirklich Hilfe brauche, sind doppelte Einträge. Hier ist mein Code.Doppelte Einträge in der Datenbank zählen
$sql = 'SELECT * FROM zip ORDER BY time_register';
$result = mysql_query($sql,$db) or die(mysql_error(). "<br />SQL: $sql");
$row = mysql_fetch_array($result);
do{
$visitor_zip= array();
$register = $row['time_register'];
$register_year = date(Y,$register);
print_r(array_count_values($visitor_zip));
} while($row = mysql_fetch_array($result))
Antwort: Hier ist mein Code, das funktioniert.
$sql = "SELECT `visitor_zip` AS `zip`, COUNT(`visitor_zip`) AS `cnt`
FROM `zip`
GROUP BY `visitor_zip`
ORDER BY visitor_zip";
$result = mysql_query($sql,$db) or die(mysql_error(). "<br />SQL: $sql");
print '<table class="zip"><tr><td><b>Zip</b></td><td># of</td></tr>';
while($row = mysql_fetch_array($result)) {
print '<tr><td>' . $row['zip'] .'</td><td>'. $row['cnt'] . '</td></tr>';
}
print '</table>';
Was in der Tabelle sind die Felder? –
zip_id visitor_zip visitor_id visitor_email time_register ich die time_register nur bin mit (dies ist ein Zeitstempel) und visitor_zip zu diesem Zeitpunkt. Ich schätze all die Hilfe, die ich schon bekommen habe. Ich war völlig auf der falschen Spur, um dieses Problem zu lösen. Ich habe versucht, eine PHP-Funktion dafür zu finden, anstatt die Abfrage in die Datenbank zu ändern. Jetzt weiß ich nicht, wie man den Code schreibt, um die Informationen aus der Datenbank anzuzeigen. Ist das sinnvoll? – PeggyMe