none
Update caso atenda a condição RRS feed

  • Pergunta

  • Boa tarde pessoal ve se conseguem me ajudar 

    tenho três tabelas conv_detail que possui o campo no qual quero realizar o update campo saldo_devedor e conv_id como chave primária desta tabela

    tenho também as tabelas conveniados(id = conv_id) e empresas na tabela conveniados tenho o campo empres_id como chave estrangeira da tabela empresas 

    O lance é o seguinte quero fazer um update na tabela conv_detail alterando o campo saldo_devedor de null para 0 caso o conveniado pertença a uma determinada empresa. Eu tava indo mais ou menos por essa linha de raciocínio porém não consegui

    update CONV_DETAIL set SALDO_DEVEDOR = 0
    from CONV_DETAIL cd inner join CONVENIADOS c
    on cd.CONV_ID = c.CONV_ID 
    where 
    c.CONV_ID = (select c.CONV_ID from CONVENIADOS where EMPRES_ID = 45) and 
    cd.SALDO_DEVEDOR = null

    Desde já obrigado

    quarta-feira, 20 de agosto de 2014 19:23

Respostas

Todas as Respostas

  • Sidneiand1,

    Então você vai fazer um Update na Tabela Conv_Detail, até ai tudo certo.

    Se eu entendi bem você vai fazer o Join analisando se o Conveniado esta cadastrado em Convenios e ai passar no Where o valor do Conv_ID com base na Empres_ID = 45 e se o Saldo_Devedor for igual a Null.

    Se for isso, acredito que esteja correto.


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitário | SoroCódigos] @JuniorGalvaoMVP | pedrogalvaojunior.wordpress.com


    quarta-feira, 20 de agosto de 2014 19:28
  • Isso mesmo Junior, na verdade não possuo essa tabela convenios e sim a conveniados propriamente dita e quero atualizar o campo saldo devedor da tabela conv_detail caso atenda a tudo aquilo que você mencionou 
    quarta-feira, 20 de agosto de 2014 19:44
  • no caso quero atualizar todos onde o id da empresa no caso o empres_id seja 45
    quarta-feira, 20 de agosto de 2014 19:45
  • Boa tarde,

    Sidnei, acho que você pode tentar da seguinte forma:

    update cd 
    set cd.SALDO_DEVEDOR = 0
    from CONV_DETAIL cd 
    inner join CONVENIADOS c
        on cd.CONV_ID = c.CONV_ID 
    where 
        cd.SALDO_DEVEDOR is null and
        c.EMPRES_ID = 45

    Espero que ajude.


    Assinatura: http://www.imoveisemexposicao.com.br

    quarta-feira, 20 de agosto de 2014 19:48