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

(Resolvido) Update with inner join


Gabriel Jardim

Pergunta

Preciso fazer um update com inner join:

Está dando o erro:

Server: Msg 116, Level 16, State 1, Line 1

Only one expression can be specified in the select list when the subquery is not introduced with EXISTS.

Está aí o código:

UPDATE TBD_REL_PRODUTOS_SERVICOS_1010 SET 
CP_NUM = (select e.campaign,p.shortname from altitude.dbo.cp_general_cfg as e 
INNER JOIN altitude.dbo.campaign as p ON e.campaign = p.code 
WHERE SHORTNAME LIKE 'ENSINO_GARANT%1010')

O que está errado? :blink:

Editado por Jonathan Queiroz
Remover caixa alta do título e conteúdo conforme regra 3.7 e adicionar tag's (Jonathan)
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Boa tarde Gabriel,

No seu subselect é retornado dois valores "e.campaign, p.shortname". No resultado você tenta atribuir os valores à variável CP_NUM. Isto que está errado. O resultado do subselect só poderá retornar um valor, que será updatado no campo CP_NUM.

Outra coisa: como não tem cláusula where do update, todos os campos CP_NUM receberão o valor de retorno do subselect.

Link para o comentário
Compartilhar em outros sites

  • 0
Boa tarde Gabriel,

No seu subselect é retornado dois valores "e.campaign, p.shortname". No resultado você tenta atribuir os valores à variável CP_NUM. Isto que está errado. O resultado do subselect só poderá retornar um valor, que será updatado no campo CP_NUM.

Outra coisa: como não tem cláusula where do update, todos os campos CP_NUM receberão o valor de retorno do subselect.

Essa sua informação foi essencial, vlw mesmo

Ficou assim:

UPDATE TBD_REL_PRODUTOS_SERVICOS_1010 SET
CP_NUM = (select e.campaign from altitude.dbo.cp_general_cfg as e INNER JOIN altitude.dbo.campaign as p " ON e.campaign = p.code 
WHERE SHORTNAME LIKE '" & N_CAMP & "_" & MES_ANO & "')

*N_CAMP --> É a variável usada para receber informações da tabela

* NES_ANO (MMYY) --> É a variável usada para receber mês e ano na formatação (mmyy)

Muito obrigado :D

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,1k
    • Posts
      651,9k
×
×
  • Criar Novo...