[firebase-br] Update com Join
Jancarlos Martins
jancarlos.martins em gmail.com
Sex Jul 25 16:51:18 -03 2008
Blz
Tenta isso
UPDATE TB_CPJ SET CPJ.SCL_CDOBSI003 = 6 FROM TB_CPJ CPJ
WHERE <CHAVE ID DA TB_CPJ> IN
(SELECT <CAMPO> FROM CRE
WHERE CRE.CRE_SERIEA003 = 'UNI'
AND CRE.EMP_CDEMPA003 = '001'
AND CPJ.CPJ_CDCLII006 <> '85'
AND CRE.CRE_SITUAA001 <> 6
AND CRE.CRE_DTVEND000 < '10.07.2008'
AND CPJ.SCL_CDOBSI003 = 0
INNER JOIN TB_CRE CRE ON (CPJ.CPJ_CDCLII006 = CRE.CPJ_CDCLII006)
INNER JOIN TB_CPF CPF ON (CPJ.CPJ_CDCLII006 = CPF.CPJ_CDCLII006) )
t+
Jancarlos Martins
DEFENCE INFORMATICA
CIANORTE-PR
2008/7/25 Cleber Zulian <cleber em agrosoftrs.com.br>:
> Desculpe mas que eu saiba a sintaxe para update no firebird não é esta.
> Até onde sei seria :
> UPDATE <NOME_TABELA> SET
> <NOME_CAMPO> = 1,
> <NOME_CAMPO> = 3
> WHERE <CONDIÇÃO>
>
> Se precisar buscar dados em outras tabelas uso um subselect. mas com o
> inner join sempre acreditei que não fosse possível.
>
> Abraço
>
> Daniel Reis escreveu:
> > O update abaixo está dando erro. De acordo com a mensagem de erro
> apresentada o problema está no uso do FROM. Poderiam me ajudar, por favor.
> Desde já agradeço.
> >
> >
> > UPDATE TB_CPJ SET CPJ.SCL_CDOBSI003 = 6 FROM TB_CPJ CPJ INNER JOIN TB_CRE
> CRE ON (CPJ.CPJ_CDCLII006 = CRE.CPJ_CDCLII006)
> > INNER JOIN TB_CPF CPF ON (CPJ.CPJ_CDCLII006 =
> CPF.CPJ_CDCLII006)
> > WHERE
> > CRE.CRE_SERIEA003 = 'UNI'
> > AND CRE.EMP_CDEMPA003 = '001'
> > AND CPJ.CPJ_CDCLII006 <> '85'
> > AND CRE.CRE_SITUAA001 <> 6
> > AND CRE.CRE_DTVEND000 < '10.07.2008'
> > AND CPJ.SCL_CDOBSI003 = 0
> > GROUP BY CPJ.CPJ_CDCLII006, CPJ.CPJ_RZSOCA060, CPJ.CPJ_ENDERA035,
> CPJ.CPJ_BAIRRA020, CPJ.CEP_CDCEPI005, CPJ.CEP_DGCEPI003, CPJ.CPJ_CIDADA020,
> CPJ.CPJ_CDUFEA030, CPF.CPF_EMCONA050
> > ORDER BY CPJ.CPJ_CDCLII006
> >
> > ____________________________________________________
> >
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
Mais detalhes sobre a lista de discussão lista