Set Variable valeur en existe condition sql server

 Declare @CategoryID as int
BEGIN  
    SELECT 
    (CASE 
        WHEN EXISTS(
            SELECT t0.Categoryid AS [EMPTY]
            FROM Categories AS [t0]
            WHERE [t0].Categoryname = @CategoryName
           ) THEN 1
        ELSE 0
     END) AS [value]

si je veux mettre ma variable à l'intérieur existe bloc avec t0.Categoryid comment pourrais-je le faire ?

ce que je veux, c'est de remplacer puis 1 à la id de la catégorie de valeur...

merci d'avance..

PUIS 1 devient ALORS SET @CategoryId = 1. Mieux... SÉLECTIONNEZ CategoryId = (affaire....)
je veux mettre @categoryid à la valeur de l'instruction select..
Vous certainement pas ont un SET de l'instruction à l'intérieur d'une CASE déclaration. SET @c = CASE WHEN x THEN y ELSE z END est valide, mais CASE WHEN x THEN SET @c = y ELSE SET @c = z END ne l'est certainement pas.
Oui, j'ai mis à jour mon commentaire avec SELECT @categoryId = (case...)

OriginalL'auteur Vishal Sharma | 2014-03-11