|
 |
|
| Autor |
Nachricht |
dein_opi Beliebter [User]


Anmeldung: 07.11.04 Beiträge: 413 Wohnort: Göttingen
|
Verfasst am: 26.10.2007, 15:24 Titel: sql nach alphabet sortieren |
|
|
im normal fall wäre es ORDER BY gewünschtespalte ASC oder DESC
nun habe ich aber folgende situation:
ich gebe auf einer seite die zeile X aus
nun brauche ich den eintrag davor und danach NACH alphabet sortiert..
also das wäre z.b. die DB
1 Audi ..
2 Opel ..
3 Fiat ..
4 Bmw ..
5 Mercedes ..
6 Ferrari
ich gebe gerade die zeile 3 - Fiat aus
wie kriege ich es raus das die vorige zeile Ferrari ist und die nächte Mercedes ist? _________________
News Script Rezepte CMS Counter
|
|
| Nach oben |
|
 |
800XE Bekannter [Mod]


Anmeldung: 24.10.04 Beiträge: 1142 Wohnort: Speyer
|
Verfasst am: 26.10.2007, 18:52 Titel: |
|
|
| Code: |
$query = " SELECT firma";
$query .= " FROM Autohersteller";
$query .= " WHERE id=" .(int)$_GET['id'];
$result = mysql_query($query);
if ( $line = mysql_fetch_array($result, MYSQL_ASSOC))
{
$query = " SELECT firma";
$query .= " FROM Autohersteller";
$query .= " WHERE firma<$line[firma]";
$query .= " ORDER BY firma DESC";
$query .= " LIMIT 1";
$result = mysql_query($query);
$prev = mysql_fetch_array($result, MYSQL_ASSOC);
$query = " SELECT firma";
$query .= " FROM Autohersteller";
$query .= " WHERE firma>$line[firma]";
$query .= " ORDER BY firma ASC";
$query .= " LIMIT 1";
$result = mysql_query($query);
$next = mysql_fetch_array($result, MYSQL_ASSOC);
}
|
so könnte es glaub hinkommen ....
$rev und $next sind die entsprechenden Datensätze
Die ORDERBY ist jeweils Anders rum wie das was man will
also, bei suche nach dem kleineren einen ORDEBY größer, weil man das größte der kleinen will
1 Audi ..
2 Opel ..
3 Fiat ..
4 Bmw ..
5 Mercedes ..
6 Ferrari
Fiat hatte ich
will den nächst kleineren
WHERE firma<Fiat
=
Audi
Opel
ODER BY firma DESC
=
Opel
Audi
nur "ersten" Datensatz ausgeben = Opel
Vorraussetzung ist natürlich das "firma" UNIQUE ist
//EDIT
sehe gerade deine Liste war nicht Aphabetisch ......
1 Audi ..
2 Opel ..
3 Fiat ..
4 Bmw ..
5 Mercedes ..
6 Ferrari
Fiat hatte ich
will den nächst kleineren
WHERE firma<Fiat
=
Audi
BMW
Ferrari
ODER BY firma DESC
=
Ferrari
BMW
Audi
nur "ersten" Datensatz ausgeben = Ferrari _________________
Seien wir realistisch, versuchen wir das Unmögliche!
CMS800 :::::::::: Andy 800XE Zmuda :::::::::
|
|
| Nach oben |
|
 |
dein_opi Beliebter [User]


Anmeldung: 07.11.04 Beiträge: 413 Wohnort: Göttingen
|
Verfasst am: 28.10.2007, 09:13 Titel: |
|
|
ich bedanke mich
das firma<$line[firma] hat mir gefehlt
funktioniert nun alles wie ich es wollte _________________
News Script Rezepte CMS Counter
|
|
| Nach oben |
|
 |
|
|
 |
|
Alle Zeiten sind GMT + 1 Stunde
|
| Seite 1 von 1 |
|  |