2009-09-30 7 views
2

J'ai une demande générale liée au traitement des lignes d'une requête. En général, j'essaie toujours de formater/traiter mes lignes dans SQL lui-même, en utilisant de nombreuses instructions CASE WHEN pour pré-formater mon résultat db, en limitant les lignes et en remplissant les colonnes en fonction d'autres colonnes.Post-traitement dans SQL vs dans le code

Cependant, vous pouvez également choisir de simplement sélectionner toutes vos lignes et faire le post-traitement en code (asp.NET dans mon cas). Selon vous, quelle est la meilleure approche en termes de performance?

Merci à l'avance, Stijn

Répondre

0

Je recommande de faire le traitement dans le code, sauf si vous avez des considérations de bande passante réseau. La raison simple est qu'il est généralement plus facile de faire des changements de code que les modifications de la base de données. En outre, les performances sont plus souvent liées à la requête de base de données et à l'accès disque réel qu'à la quantité de données renvoyée. Cependant, je suppose que vous faites référence à des modifications de formatage «mineures» du résultat. Standard où les clauses devraient naturellement être faites dans la base de données.

+0

Merci Bjorn. Dans mon cas spécifique, je crée quelques colonnes supplémentaires dans mon résultat de requête. Ces colonnes doivent être remplies en fonction des valeurs des autres colonnes. Je peux écrire les instructions CASE WHEN, ou je peux remplir les colonnes supplémentaires dans mon code asp.NET. Pour des raisons de maintenance, je suppose que l'option dans le code serait en effet la meilleure –