Je me suis battu avec cette requête pendant 2 jours et je ne trouve toujours pas où le problème est.Msg 102, niveau 15, état 1, ligne 15 Syntaxe incorrecte près de ')'
La requête SQL est comme ceci:
select t2.transno,
case
when (Select Count (*)
From v1
where v1.transno < v1.transno) > 1
then (
case
when (Select Top 1 v1.transno
From v1
Where v1.transno < v1.transno
Order By v1.transno Desc)=(T2.transno-1)
then ' '
else 'Missing Invoice')
else ''
end AS Marker
FROM v1 AS T2
Il me donne un message d'erreur:
Msg 102, Level 15, State 1, Line 15 Incorrect syntax near ')'.
Je pense que vous feriez mieux de nous donner des tableaux, des données et la sortie désirée . Vous avez 2 sous-requêtes corrélées par ligne dans SELECT, ce qui signifie une mauvaise performance. si c'est rapide, c'est parce que l'optimiseur réalise v1.transno
gbn
Son pour vérifier la séquence du numéro de facture, et si un numéro est manquant alors il affichera la facture manquante dans la colonne marqueur.Je l'ai fait dans l'accès cela fonctionne bien mais quand je change la syntaxe pour l'exécuter dans SQL Server 2005 alors j'obtiens erreur – Monshine