2010-01-26 3 views
1

Comment écrire si existe pas dans la déclaration SQL Server 2005 pour la condition suivanteSi existe pas dans la déclaration SQL Server 2005

Si @MeasurementId dites valeurs (1,2,3) ce sont les valeurs existantes de la déclaration ci-dessous travailler mais quand @ MeasurementId = 0, il ne semble semble pas fonctionner ...

If not exists(select Mat_Id,MeasurementId from MaterialQuantity where 
[email protected] and [email protected]) 

Cependant, la déclaration ci-dessus ne pas fonctionner si les valeurs ont NULL dans MeasurementId colonne. Rappelez-vous MeasurementId est pas un ForeignKey ici ...

Comment attribuer NULL si @MeasurementId est 0 ou utiliser @MeasurementId comme dans la déclaration where ...

Ceci est mon MaterialQuantity table

Répondre

3

À moins Je l'ai mal compris, je pense que vous êtes après la syntaxe ISNULL:

If not exists(select Mat_Id,MeasurementId from MaterialQuantity where 
[email protected] and ISNULL(MeasurementId, 0) [email protected]) 
+0

@AdaTheDev qui a travaillé ... –