Sortiere immer wo möglich im SQL Server.
Das SQL abstrahiert die Schritte zum Abfragen der Datenbank, Sortierung usw. Verwenden Sie so viel Abstraktion wie möglich - warum würden Sie eine Reihe von Zeilen auswählen und dann einen Sortieralgorithmus schreiben, wenn Sie dies in SQL mit tun können ORDER BY
.
Siehe auch Bill Karwins Antwort .
Ich würde die Sortierung auf dem Server verwenden, wenn das Dataset groß ist, und ich weiß, dass in der Datenbank ein Index vorhanden ist, der bei der Sortierung hilft. Wenn es keinen Index gibt, würde ich einen erstellen.
Ich würde die Sortierung auf dem Client nur verwenden, wenn der Datensatz klein genug ist, um bequem in den Anwendungsspeicher zu passen, und das Anwendungssystem eine effiziente Sortierfunktion hat und es keinen Index in der Datenbank gibt. Aber wenn der Datensatz so klein ist, sind die Kosten für die Sortierung im Server selbst ohne Index wahrscheinlich leicht zu ertragen.
Im Allgemeinen möchten Sie in der Datenbank sortieren, es ist einfacher, erfordert weniger Code und ist effizienter.
Es gibt jedoch einige Randbedingungen, bei denen eine Client-basierte Sortierung sinnvoll ist.
Nehmen wir an, Sie haben eine JavaScript-GUI, die eine Tabelle mit 500 Zeilen anzeigt. Wenn Sie Ihren Benutzern die Flexibilität geben möchten, nach der von Ihnen gewünschten Spalte zu sortieren, ist es sinnvoll, in JavaScript zu sortieren eine Reise zum Server.
Der Hauptvorteil bei der Verwendung der Client-seitigen Sortierung besteht darin, den Netzwerkverkehr und die Datenbanknutzung zu verringern (wenn mehrere Sortierungen angeboten werden). Sie müssen sehr vorsichtig mit Ihrer Sortierleistung und Speicherbeschränkungen sein. Große Datenmengen, Client-Seite, werden oft virtualisiert, so dass nicht alle Daten tatsächlich beim Client ankommen.
Tags und Links sql performance sorting