Zitat von
hanspeter:
Weils einfach zu kompliziert für reines
SQL ist. Ich müßte mit dynamischen Arrays oder Listen arbeiten können.
Sortierungen erledige ich fast immer im DAL. Die meisten RDBMS generieren bei Sortierungen wesentlich ineffizientere Ablaufpläne und man erhöht nur unnötig die CPU-Last auf der
DB-Maschine.
In .Net frage ich Daten sowieso fast nur noch mit meinem Mini-ORM in der Form ab:
Delphi-Quellcode:
Table<MyClass>.Select(myConnection)
.Where('SomeProperty', someVariable)
.OrderBy('SomeProperty, AnotherProperty desc')
.Execute(someList);
Standardmäßig compiliere und halte ich mir pro Typ und OrderBy String eine dyn. Methode im Speicher, die ich dann zur Sortierung herannehmen kann.
Wenn ich die Sortierung auf ServerSide (also im
SQL) setze war es bisher noch jedesmal langsamer.
Und wenn eine Sortierung komplexer als das übliche Order By - blaBla wird, schreibe ich gleiche eine richtige Sortiermethode und lasse die natürlich nicht in der
DB laufen....