Bonjour,

Je rencontre une erreur lors de l’exécution d'une requête sous sql server.

Lorsque j'exécute la requete suivante le résultat est conforme à mes attentes :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
update T_MATRICULE_PIECE set BOOL_VIERGE_1 ='T',DATE_VIERGE_1 = CURRENT_TIMESTAMP  where NUM_PIECE_M in 
 
(select mat.NUM_PIECE_M,mat.DATE_VIERGE_1
from t_mvt mvt
	inner join t_piece piece on mvt.CLE_PIECE = piece.CLE_PIECE
	inner join t_ligne_bt lbt on lbt.NUM_LIGNE_BT = mvt.CLE_LIEN
	inner join t_bt bt on bt.NUM_BT = lbt.CLE_BT
	inner join t_ui ui on ui.NUM_UI = bt.CLE_UI
	inner join T_MATRICULE_PIECE mat on mat.NUM_PIECE_M = lbt.CLE_ELEMENT
 
where mvt.DATE_CREATION BETWEEN DATEADD(week,-1,CURRENT_TIMESTAMP) AND CURRENT_TIMESTAMp
and lbt.TYPE_LIGNE_BT = 'M')
Lorsque j'ajoute la clause suivante à mon where
Code : Sélectionner tout - Visualiser dans une fenêtre à part
And mat.DATE_VIERGE_1 is NULL
Le problème suivant apparaît
Msg 116, Level 16, State 1, Line 16
Only one expression can be specified in the select list when the subquery is not introduced with EXISTS
.
Je ne comprend pas en quoi le fait de rajouter une clause supplémentaire modifie le renvoit de la sous requête...?

Cordialement,