Datenbankabfrage mit Collate

keine_frage_ist_zu_dumm

Neuer Benutzer
Beiträge
4
Hallo Profis,

ich arbeite mit folgender Abfrage:

Code:
$abfrage = "SELECT Name, Strasse  FROM $db WHERE Name LIKE '%$suche%' ORDER BY $Name COLLATE latin1_german2_ci";

Der letzte Teil ab COLLATE ist neu, damit Namen, die z.B. mit einem "Ö" beginnen nicht ans Ende der Liste gesetzt werden. Soweit funktionert auch alles. Leider kann ich jetzt aber eine vorher funktionierende Funktion nicht mehr nutzen, bei der ich die Auflistung mit "ORDER BY $Name DESC" umdrehen konnte, so dass Namen mit Z oben stehen.

Try and Error Versuche blieben erfolglos und per Google habe ich nichts gefunden, dass mir bei meinem Halbwissen weiter helfen kann.

Danke für Eure Weisheit vorab :)...
 
Werbung:

akretschmer

Datenbank-Guru
Beiträge
9.846
Hallo Profis,

ich arbeite mit folgender Abfrage:

Code:
$abfrage = "SELECT Name, Strasse  FROM $db WHERE Name LIKE '%$suche%' ORDER BY $Name COLLATE latin1_german2_ci";

Der letzte Teil ab COLLATE ist neu, damit Namen, die z.B. mit einem "Ö" beginnen nicht ans Ende der Liste gesetzt werden. Soweit funktionert auch alles. Leider kann ich jetzt aber eine vorher funktionierende Funktion nicht mehr nutzen, bei der ich die Auflistung mit "ORDER BY $Name DESC" umdrehen konnte, so dass Namen mit Z oben stehen.

Try and Error Versuche blieben erfolglos und per Google habe ich nichts gefunden, dass mir bei meinem Halbwissen weiter helfen kann.

Danke für Eure Weisheit vorab :)...

Was *genau* hast Du probiert? Auch mal das DESC nach dem Collate blafasel?
 
Werbung:

keine_frage_ist_zu_dumm

Neuer Benutzer
Beiträge
4
Hallo akretschmer,

vielen Dank, jetzt funtioniert es! Die Lösung war wirklich das DESC ans Ende zu setzen, also
Code:
...COLLATE latin1_german2_ci DESC";

Ich hatte das zwar vorher bereits ausprobiert, jetzt funktioniert es, vorher nicht. Ich hatte wahrscheinlich beim rumprobieren den Code an irgendeineer Stelle geschrottet ohne es zu merken. Also nochmals danke ;)
 
Oben