2010-03-25 6 views
3

C'est ce que je pensais être une simple clause de sélection, mais ce qui suit me donne du chagrin! J'utilise SQL Server 2008.SQL Server - Comparer les valeurs int dans une clause select

Fondamentalement, je veux comparer deux valeurs entières et retourner le résultat booléen dans la clause select. Voici un exemple simple:

DECLARE @A INT 
DECLARE @B INT 
SET @A = 1 
SET @B = 2 

SELECT @A = @B 

Actuellement, la seule sortie est "Command (s) completed successfully." Où je crois raisonnablement que j'attribue @A à @B. Je pensais que ce serait simple, mais je n'ai pas réussi à atteindre cet objectif.

Toute aide serait géniale! Merci

Répondre

4

essayer

SELECT CASE WHEN @A = @B THEN 1 ELSE 0 END 

au lieu

4
Select Case When @A = @B Then 1 Else 0 End 
0

Là où je crois raisonnablement qu'il est l'attribution @A à @B.

Non ... il est assignant B à A.

Vous devez ceci:

SELECT case when @A - @B = 0 then 1 else 0 end 
Questions connexes