Bonjour à tous,
Je travaille en ASP.NET 2.0 (C#) et sous MS-SQL 2005. J'ai une Procédure Stockée qui est appellée avec commes paramètres :Je souhaite effectuer dynamiquement la clause ORDER BY de ma requête SQL.. On ne peut pas utiliser directement un Alias dans la clause ORDER BY donc j'ai fait :
- @sortDir : direction du tri (ASC / DESC)
- @sortField : la colonne ou l'alias du SELECT qui sera utilisé pour le tri
Le soucis est que je ne peux pas ajouter à la suite un autre CASE @sortDir car ca me met une erreur. Donc, comment faire en sorte (sans construire une String qui contient la requete) pour ajouter simplement le ASC/DESC?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 ORDER BY CASE @sortField WHEN 'Name' THEN event_name WHEN 'Date' THEN dt_stopreg WHEN 'Rank' THEN (SUM(rank_votes) / SUM(rank_nbvotes)) WHEN 'Amount' THEN SUM(amount) WHEN 'Nb' THEN COUNT(id_b) END
Merci d'avance :-)
Partager