![]() |
![]() |
|
![]() |
![]() |
|
Programmierung Rat & Tat für Programmierer |
![]() |
|
Themen-Optionen | Ansicht |
![]() |
#1 |
Senior Member
![]() Registriert seit: 26.04.2002
Beiträge: 168
|
![]() Hallo,
1) angenommen, ich habe eine Tabelle... Von mir aus einspaltig mit folgenden (fiktiven) Werten: 15 6 24 10 8 9 21 12 5 19 Sortiert mit ORDER BY number DESC kommt da eigentlich (wenngleich verständlicher...) Schmarrn raus: 9 8 6 5 24 21 19 15 12 10 Stelle ich den einstelligen Zahlen eine '0' (Null) voran, klappt es schon besser... 24 21 19 15 12 10 09 08 06 05 So soll es eigentlich sein. Aber wie bekomme ich es ohne eine führende Null hin, so dass quasi nach dem 'Wert' der Zahl, nicht der 'Zeichenfolge' Zahl sortiert wird, gibt es da eine Möglichkeit? 2) Angenommen, ich habe eine Tabelle wie folgt: A 1 B 2 C 5 C 4 C 3 D 6 E 7 Es ist offensichtlich, dass 'C' dreimal vorkommt, mit jeweils unterschiedlicher Nummer in der anderen Spalte. Meine Frage: Kann/Wie kann ich angeben, nach welcher Spalte als zweites sortiert werden soll, wenn ich ORDER BY buchstabe ASC angebe? Ich hoffe, das Problem ist klar... Die drei 'C's werden ja nach Buchstaben sortiert, aber sie sind gleich, d. h. es gibt nicht mehr viel zu sortieren, also möchte ich eine zweite Spalte zur weiteren Sortierung angeben. Ist/Wie ist das möglich? Vielen Dank! Etienne |
![]() |
![]() |
![]() |
#2 |
Inventar
![]() Registriert seit: 24.09.2001
Beiträge: 7.335
|
![]() Ich wurd aus dem Textfeld ein numerisches machen, dann klappt es auch mit den sortieren
![]()
____________________________________
Weiterhin zu finden auf http://martin.leyrer.priv.at , http://twitter.com/leyrer , http://www.debattierclub.net/ , http://www.tratschen.at/ und via Instant Messaging auf Jabber: m3 <ät> cargal.org . |
![]() |
![]() |
![]() |
#3 |
Aussteiger
![]() |
![]() oder du machst ein
ORDER BY TO_NUMBER(COLUMN_NAME) DESC funktioniert zumindest unter oracle ... edit: die gefahr ist aber, dass in dem feld nicht unbedingt zahlen drinnenstehen müssen ![]()
____________________________________
Praktizierender Eristiker No hace falta ser un genio para saber quién dijo eso. Der wirklich faule Mensch ist oft extrem fleißig, denn er will möglichst schnell wieder faul sein. |
![]() |
![]() |
![]() |
#4 |
Inventar
![]() Registriert seit: 24.09.2001
Beiträge: 7.335
|
![]() "Wie umgehe ich einen Designfehler mit einer CPU-Intensiven Operation", ein kleiner Kurs von und mit pc.net.
![]()
____________________________________
Weiterhin zu finden auf http://martin.leyrer.priv.at , http://twitter.com/leyrer , http://www.debattierclub.net/ , http://www.tratschen.at/ und via Instant Messaging auf Jabber: m3 <ät> cargal.org . |
![]() |
![]() |
![]() |
#5 | |
Aussteiger
![]() |
![]() Zitat:
![]() nur weil man nach einem textfeld sortieren will, ist also eine DB falsch designed ![]() ![]() ![]() btw: @randomize ad 2) order by spalte1 desc, spalte2 asc, spalte3, usw. ![]()
____________________________________
Praktizierender Eristiker No hace falta ser un genio para saber quién dijo eso. Der wirklich faule Mensch ist oft extrem fleißig, denn er will möglichst schnell wieder faul sein. |
|
![]() |
![]() |
![]() |
#6 |
Aussteiger
![]() |
![]() achja, nochwas:
wozu hamma denn die ganzen schnellen cpu's ... die grundeln sowieso die meiste zeit im idle-mode herum ![]() und am liebsten hab ich sowieso die sinnlosen mehrfach-konvertierungen á la to_number(to_date(to_char(1),'Y')) ![]()
____________________________________
Praktizierender Eristiker No hace falta ser un genio para saber quién dijo eso. Der wirklich faule Mensch ist oft extrem fleißig, denn er will möglichst schnell wieder faul sein. |
![]() |
![]() |
![]() |
#7 |
Senior Member
![]() Registriert seit: 26.04.2002
Beiträge: 168
|
![]() Ahh. Also sagen wir mal, das zweite Problem habe ich schon selbst gelöst; Das erste... Naja der Vorschlag mit 'nem numerischen Feld klingt irgendwie garnicht mal so dumm...
![]() Den letzten Kommentar habe ich wohl nicht so ganz kapiert, ich bitte um Verzeihung ob meiner Dummheit ![]() ![]() Anyway, danke schonmal für den num. Feld-Tip... ![]() Tschööö Etienne |
![]() |
![]() |
![]() |
#8 |
Aussteiger
![]() |
![]() @randomize
to_number ist eine eigene operation ... wenn die spalte schon den typ number hat, dann spart man sich die konvertierung und erhöht somit die performance ![]()
____________________________________
Praktizierender Eristiker No hace falta ser un genio para saber quién dijo eso. Der wirklich faule Mensch ist oft extrem fleißig, denn er will möglichst schnell wieder faul sein. |
![]() |
![]() |
![]() |
#9 | |
Inventar
![]() Registriert seit: 24.09.2001
Beiträge: 7.335
|
![]() Zitat:
![]()
____________________________________
Weiterhin zu finden auf http://martin.leyrer.priv.at , http://twitter.com/leyrer , http://www.debattierclub.net/ , http://www.tratschen.at/ und via Instant Messaging auf Jabber: m3 <ät> cargal.org . |
|
![]() |
![]() |
![]() |
#10 | |
Senior Member
![]() Registriert seit: 26.04.2002
Beiträge: 168
|
![]() Zitat:
![]() Danke nochmal wegen TO_NUMBER usw., naja also numerisches Feld ist wohl zweifelsohne das einfachste. Thx!! ![]() Etienne |
|
![]() |
![]() |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|