J'ai une table A et si les paramètres @x
est 0 je veux commander A par date, sinon par nom. Voici un exemple:SQL - ORDER BY dans IF-ELSE CLAUSE
declare @x int set @x = 0
if(@x=0)(
SELECT * FROM A
order by DATE
)
else
(
SELECT * FROM A
order by Name
)
Quand essayer de le faire retour SQL Server 2 d'erreur egual comme
syntaxe incorrecte près du mot-clé « pour ».
Que puis-je faire?
Je ne suis pas sûr qu'il fonctionnera, en supposant que 'Date' est de type date et le nom est le type de chaîne. La conversion en variante aiderait, mais cela pourrait affecter (en mauvais) l'utilisation de l'index. –