MySQL | Daten sortieren
Im vorangegangen Beispiel wurden die Datensätze unsortiert untereinander
ausgegeben. Also praktisch als einzelne Datensätze, wobei die
Datenfelder
durch ein Komma voneinander getrennt und wenig übersichtlich
ausgegeben wurden.
Übersichtlicher und lesbarer ist es, wenn man diese Daten in
Form einer Tabelle
mit Linien ausgibt, die durch Überschriften die Feldnamen kennzeichnet
und zudem
die Orte alphabetisch sortiert, ausgibt.
Ein Beispiel hierzu - Programmcode:
1. mysql_connect("","root"); // Verbindung mit dem Datenbankserver herstellen
2. mysql_select_db("staedte"); // Auswahl der Datenbank staedte
3. $sqlab="select * from orte"; // Abfrage festlegen
$sqlab.=" order by ort"; // realisiert die sortierte Ausgabe
4. $result=mysql_query($sqlab); // SQL Abfrage ausführen
5. $anzahl=mysql_num_rows($result); // Anzahl Datensätze ermitteln
6. if($anzahl==0) echo "Keine Daten vorhanden."; //Ausgabe einer Meldung falls 0 Datensätze
7. // Zählervariable definieren
$nr=1;
// Tabellenüberschrift erzeugen
echo "<table width='80%' border='1' align='center' bordercolor='#000000'>";
echo "<tr align='center' bgcolor='#ffffff'>";
echo "<td>Nr.</td>";
echo "<td>Ort</td><td>PLZ</td><td>Einwohner</td>";
echo "<td>Einwohnerstand</td><td>Bundesland</td>";
echo "</tr>";
// Schleifenbedingung formulieren - Datenausgabe in Html Tabelle
while($ausgabe=mysql_fetch_assoc($result))
{
echo "<tr align='center'>";
echo "<td>$nr</td>";
echo "<td>".$ausgabe["ort"]."</td>";
echo "<td>".$ausgabe["plz"]."</td>";
echo "<td>".$ausgabe["einwohner"]."</td>";
echo "<td>".$ausgabe["einwohnerstand"]."</td>";
echo "<td>".$ausgabe["bundesland"]."</td>";
echo "</tr>";
// Hochzählen der laufenden Nummer
$nr++;
}
// Tabelle schließen und Ausgabe der Anzahl der Datensätze
echo "</table>";
echo "<div align='left'>$anzahl Datensätze gefunden.</div>";
Ausgabe der Tabelle orte der Datenbank staedte
|
Nr.
|
Ort
|
PLZ
|
Einwohner
|
Einwohnerstand
|
Bundesland
|
|
1
|
Bielefeld
|
33602
|
326715
|
2006-01-01
|
NRW
|
|
2
|
Braunschweig
|
38100
|
246012
|
2008-12-31
|
Niedersachsen
|
|
3
|
Gütersloh
|
33330
|
96343
|
2006-01-01
|
NRW
|
|
4
|
Mainz
|
55001
|
197623
|
2008-12-31
|
Rheinland-Pfalz
|
|
5
|
München
|
80331
|
1326807
|
2008-12-31
|
Bayern
|
|
6
|
Steinhagen
|
33803
|
19936
|
2006-01-01
|
NRW
|
|
7
|
Warendorf
|
48231
|
38268
|
2008-12-31
|
NRW
|
7 Datensätze gefunden.
Ausgegeben wird oben abgebildete Html Tabelle mit Überschrift , einer hochgezählten
fortlaufenden Nummer und mit einer sortierten Ausgabe der Daten nach Ortsnamen.
Durch den Zusatz order by ort in der SQL Abfrage, wird eine sortierte Ausgabe
nach dem Ortsnamen festgelegt. Eine Sortierung nach Bundesland würde erfolgen mit
order by bundesland. Also praktisch die order Anweisung gefolgt von dem by und dann
den Namen des Datensatzfeldes, nach dem sortiert werden soll.
Eine Sortiertung nach PLZ würde erfolgen durch order by plz.
Praktisch die Anweisung order und dann der Feldname der Datenbank,
nach dem sortiert werden soll.
Ausgegeben wird oben abgebildete Html Tabelle mit Überschrift , einer hochgezählten
fortlaufenden Nummer und mit einer sortierten Ausgabe der Daten nach Ortsnamen.
Durch den Zusatz order by ort in der SQL Abfrage, wird eine sortierte Ausgabe
nach dem Ortsnamen festgelegt. Eine Sortierung nach Bundesland würde erfolgen mit
order by bundesland. Also praktisch die order Anweisung gefolgt von dem by und dann
den Namen des Datensatzfeldes, nach dem sortiert werden soll.
Eine Sortiertung nach PLZ würde erfolgen durch order by plz.
Praktisch die Anweisung order und dann der Feldname der Datenbank,
nach dem sortiert werden soll.