- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Auxilio com declaração no slqserver + in
×
Linguagem de Programação ADVPL
Perguntas Auxilio com declaração no slqserver + in
- hbaldin
- Autor do Tópico
- Desconectado
- Membro Dourado
Menos
Mais
- Postagens: 266
- Obrigados Recebidos: 0
10 anos 4 meses atrás #23637
por hbaldin
Auxilio com declaração no slqserver + in foi criado por hbaldin
Bom dia Galera, estou com um duvida, se é possivel usar um In com uma variavel ...
oque acontece eh que em cada consulta haverá uma quantidade diferente de clientes assim nao podendo criar uma variável para cada.
DECLARE @cod nvarchar(50);
SET @cod = ('123622','123623','166100');
Select * from SD2010
Where D2_FILIAL ='02'
AND D2_EMISSAO ='20140602'
AND D2_CLIENTE in @cod -- --> aqui o problema ...
Vlw =D
oque acontece eh que em cada consulta haverá uma quantidade diferente de clientes assim nao podendo criar uma variável para cada.
DECLARE @cod nvarchar(50);
SET @cod = ('123622','123623','166100');
Select * from SD2010
Where D2_FILIAL ='02'
AND D2_EMISSAO ='20140602'
AND D2_CLIENTE in @cod -- --> aqui o problema ...
Vlw =D
Por favor Acessar ou Registrar para participar da conversa.
- hbaldin
- Autor do Tópico
- Desconectado
- Membro Dourado
Menos
Mais
- Postagens: 266
- Obrigados Recebidos: 0
10 anos 4 meses atrás #23638
por hbaldin
Respondido por hbaldin no tópico Auxilio com declaração no slqserver + in
em oracle é assim :
DEFINE cod= "('123622','123623','166100')"
Select * from SD2010
Where D2_FILIAL ='02'
AND D2_EMISSAO ='20140602'
AND D2_CLIENTE in &cod
DEFINE cod= "('123622','123623','166100')"
Select * from SD2010
Where D2_FILIAL ='02'
AND D2_EMISSAO ='20140602'
AND D2_CLIENTE in &cod
Por favor Acessar ou Registrar para participar da conversa.
- kanaamlrr
- Desconectado
- Membro Platina
Menos
Mais
- Postagens: 1576
- Obrigados Recebidos: 4
10 anos 4 meses atrás #23639
por kanaamlrr
Respondido por kanaamlrr no tópico Auxilio com declaração no slqserver + in
Henrique,
Dessa forma acho que não é possível, porém você pode criar uma variável com seu SQL Statement e depois dar um exec nela.
Por exemplo:
Acho que é isso.
Faz um teste ae!
Dessa forma acho que não é possível, porém você pode criar uma variável com seu SQL Statement e depois dar um exec nela.
Por exemplo:
DECLARE @SQL NVARCHAR(MAX);
DECLARE @COD nvarchar(50);
SET @COD = '(''123622'',''123623'',''166100'')';
SET @SQL = 'Select * from SD2010 Where D2_FILIAL =''02'' AND D2_EMISSAO =''20140602'' AND D2_CLIENTE IN '+@COD
EXEC(@SQL)
Acho que é isso.
Faz um teste ae!
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Auxilio com declaração no slqserver + in
Tempo para a criação da página:0.121 segundos