sql Plusieurs cas de Déclaration

Salut, je suis en train d'écrire plusieurs cas de déclarations de préréglage de la priorité d'un travail. Il y a quelques tables et ID s qui sont impliqués dans cette mais, fondamentalement, je veux vérifier si le poste existe que si elle ne si l'questionid relative à il est de 80 et a alors plusieurs cas statemnts de sorte que si les travaux mineurs de la catégorie est de 1, alors la réponse sera l'id de Haut. Le code que j'ai fait jusqu'à présent peut expliquer mieux...

 ALTER Procedure [dbo].[usp_CreatePresetPriority]
   @HelpdeskID int,
   @MinorCategoryID int
 As
 BEGIN

IF EXISTS(SELECT * FROM TicketInformation WHERE TicketID = @HelpdeskID AND QuestionID = 80)
    BEGIN
        UPDATE TicketInformation
        SET AnswerInput = Null, 
            AnswerID = CASE @MinorCategoryID WHEN 87 THEN 129 END
        WHERE TicketID = @HelpdeskID And QuestionID = 80

    END

ELSE
    BEGIN
        INSERT INTO TicketInformation (TicketID, QuestionID, AnswerID, AnswerInput)
        VALUES (@HelpdeskID, 80, CASE @MinorCategoryID WHEN 87 THEN 129 END, Null)
    END

Si cela fonctionne, mais seulement pour une option où @MinorCategoryID = 87 je veux avoir plus de 1 déclarations set @MinorCategoryID QUAND 91THEN 130 etc...

J'ai essayé...

    IF EXISTS(SELECT * FROM TicketInformation WHERE TicketID = @HelpdeskID AND QuestionID = 80)
 UPDATE TicketInformation SET AnswerInput = Null, AnswerID = CASE @MinorCategoryID WHEN 87 THEN 129 WHERE TicketID = @HelpdeskID And QuestionID = 80
ELSE INSERT INTO TicketInformation (TicketID, QuestionID, AnswerID, AnswerInput) VALUES (@HelpdeskID, 80, CASE @MinorCategoryID WHEN 87 THEN 129 END, Null)



     IF EXISTS(SELECT * FROM TicketInformation WHERE TicketID = @HelpdeskID AND QuestionID = 80)
 UPDATE TicketInformation SET AnswerInput = Null, AnswerID = CASE @MinorCategoryID WHEN 91 THEN 130 WHERE TicketID = @HelpdeskID And QuestionID = 80
ELSE INSERT INTO TicketInformation (TicketID, QuestionID, AnswerID, AnswerInput) VALUES (@HelpdeskID, 80, CASE @MinorCategoryID WHEN 91 THEN 130 END, Null)

Toute aide appréciée - désolé si il n'est pas clair, j'ai un vendredi floue tête!

OriginalL'auteur anna | 2011-08-19