Inicial > Não categorizado > Cuidado com o IF Exists 2

Cuidado com o IF Exists 2

Pessoal parei para pensar um pouco e aquele loop, virou isso,

CREATE TABLE CONCRAUX (ID Int,
                       CONSTRAINT XPKCONCRAUX PRIMARY KEY(ID))
GO
DECLARE @I Int
SET @I = 1
WHILE @I < 1000
BEGIN
  INSERT INTO CONCRAUX(ID) VALUES(@I);
  SET @I = @I + 1
END

GO

SELECT @ID_Grupo,
       @CD_Grupo,
       CONCRAUX.ID AS CD_Cota,
       ISNULL(CONVE046.SN_Utilizada,’N’) AS ST_Reserva
  FROM CONCRAUX
  LEFT OUTER JOIN CONVE002
    ON CONCRAUX.ID = CONVE002.CD_Cota
   AND CONVE002.ID_Grupo = @ID_Grupo
   AND CONVE002.Versao   = 0
  LEFT OUTER JOIN CONVE046
    ON CONVE046.ID_Grupo     = @ID_Grupo
   AND CONVE046.CD_Cota      = CONCRAUX.ID
   AND CONVE046.DT_Validade >= @DT_Base
   AND CONVE046.SN_Utilizada = ‘N’
WHERE CONCRAUX.ID <= @NO_Maximo_Cota
   AND CONVE002.ID_Cota IS NULL
   AND (@ST_Reserva = ‘T’ OR ISNULL(CONVE046.SN_Utilizada,’N’) = @ST_Reserva)

Ou seja, criei uma tabela sequencial, e fiz o join com ela.

Categorias:Não categorizado
  1. Nenhum comentário ainda.
  1. No trackbacks yet.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s

%d blogueiros gostam disto: