Ir para conteúdo
Fórum Script Brasil
  • 0

Variável em consulta com parametro usando IN no where


Mackaulim

Pergunta

Olá !! preciso muito de um help de quem tem um pouco mais de experiência......

Preciso enviar esse valor dessa váriavel para o IN dentro do where do select porém já tentei de várias formas e não consegui 

o Original seria assim 

SELECT  max(aging_liberacao) as aging_lib 
FROM bd.gd_ob 

where projeto = '00003' and mrp in ('O08', 'OM2')

 

tentei assim 

SET @mrps =  '''O08'',''OM2''';   e assim  SET @mrps =  Concat(Concat('''O08''',','),'''OM2''');

SELECT  max(aging_liberacao) as aging_lib 
FROM bd.gd_ob 
where projeto = '00003' and mrp in (select @mrps)  -- Com select e sem também

sei que há possibilidade de realizar pela linguagem de programação, porém é uma consulta muito grande para carregar no processamento.

Pelo que entendi o problema é a passagem do parâmetro, pois quando envio apenas 1 elemento ('O08' por exemplo) ele funciona, mas é preciso passar mais, podendo ser 2,3,4,5 não é uma quantidade fixa por isso uso o IN.

Alguém poderia me ajudar ? 

Editado por Mackaulim
Erro de ortografia e coerência ortográfica
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Boa noite.

Você pode criar esta procedure

DELIMITER $$

CREATE PROCEDURE `bd`.`exemplo`(IN variavel VARCHAR(100))
BEGIN
   SET @preparable_stmt = CONCAT("SELECT  max(aging_liberacao) as aging_lib 
       FROM bd.gd_ob 
       WHERE projeto = '00003' AND mrp IN(", variavel, ")"); 
   PREPARE stmt FROM @preparable_stmt;
   EXECUTE stmt;
   -- DEALLOCATE PREPARE stmt;
END$$

DELIMITER ;

e executá-la assim:

CALL exemplo('"O08",'"OM2"');

 

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...