Buscar

Descreva o objetivo do procedure: # Criar procedimento que exibe a soma da quantidade de gatos , utilizando duas raças.  DELIMITER $$ CREATE PROCED...

Descreva o objetivo do procedure: # Criar procedimento que exibe a soma da quantidade de gatos , utilizando duas raças. 

DELIMITER $$

CREATE PROCEDURE sp_quantidade_animais_por_raca(var_raca1 VARCHAR(30), var_raca2 VARCHAR(30))

BEGIN

  DECLARE quantidade INT;

  DECLARE var_raca VARCHAR(30);

  DECLARE qnt_animais_raca1, qnt_animais_raca2 INT DEFAULT 0;

   

  DECLARE animais_cursor CURSOR FOR

    SELECT raca

    FROM animais;

     

  OPEN animais_cursor;

   

  SELECT COUNT(*) INTO quantidade FROM animais;

   

  WHILE (quantidade > 0) DO

    FETCH animais_cursor INTO var_raca;

    IF (var_raca = var_raca1) THEN

      SET qnt_animais_raca1 = qnt_animais_raca1 + 1;

    ELSEIF (var_raca = var_raca2) THEN

      SET qnt_animais_raca2 = qnt_animais_raca2 + 1;

    END IF;

    SET quantidade = quantidade - 1;

  END WHILE;

   

  SELECT (qnt_animais_raca1 + qnt_animais_raca2) AS total_animais;

   

  CLOSE animais_cursor;

END $$

DELIMITER ;


CALL sp_quantidade_animais_por_raca('Persa', 'Siames');

CALL sp_quantidade_animais_por_raca('Persa', 'Persa');

CALL sp_quantidade_animais_por_raca('Siames', 'Siames');



💡 1 Resposta

User badge image

Ed Verified user icon

O objetivo do procedimento descrito é exibir a soma da quantidade de gatos de duas raças específicas. O procedimento recebe como parâmetros as duas raças (var_raca1 e var_raca2) e utiliza um cursor para percorrer a tabela "animais" e contar quantos gatos pertencem a cada uma das raças. Em seguida, o procedimento retorna a soma das quantidades de gatos das duas raças.

0
Dislike0

✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Outros materiais