Array
(
)

chave tripla

Eduardo.padilha
   - 17 jan 2005

Ola caro(a) s Amigo(a)s ....

Tenho uma rotina que preciso escrever em SQL server 2000 porem nao estou sabendo como, creio que nao seja dificil porem esta faltando conhecimento da minha parte em sintaxes SQL, o que gostaria de fazer eh o seguinte.

Tenho 2 Tabelas :

1 - Arquivo Pai. NOTA A

A.COD_CED A.COD_SAC_NF A.NUM_NOTA_FISCAL A.STS_DEV
81 33927 10

2 - Arquivo Filho. DUP B

B.COD_CED B.COD_SAC_NF B.NUM_NOTA_FISCAL B.DAT_PGTO
81 33927 10 1753-01-01
81 33927 10 2005-01-01
81 33927 10 1753-01-01

Onde as tabelas sao ligadas por 3 chaves COD_CED COD_SAC_NF NUM_NOTA_FISCAL, ou seja nesse exemplo tenho 1 para 3.
O problema eh o seguinte após ter achado os 3 registros vou testar a B.dat_pagto, se dentro desses 3 registros pelo menos 1 a dat_pgto = 01/01/1753, eu coloco no arquivo Pai no campo A.STS_DEV = ´N´ Senao ´S´, o detalhe eh o suponhamos q tem 1000 registros filho se na busca encontrar a dat_pgto = 01/01/1753 no segundo registro, nao tenho que procurar o restante dos registros referente a essa chave irei para a proxima.

Gostaria de saber como montar essa rotina.

Marcus.magalhaes
   - 17 jan 2005

Boa noite.

Se entendi bem, vc quer algo assim :

Update pai
Set pai.sts_dev = ´N´
From NOTA pai Inner Join Dup filho On pai.cod_ced = filho.cod_ced
And pai.cod_sac_nf = filho.cod_sac_nf
And pai.num_nota_fiscal = filho.num_nota_fical
And filho.dat_pagto = ´01/01/1753´
GO

Espero ter ajudado.

Att,

Eduardo.padilha
   - 18 jan 2005

Era quase isso.... mas em cima do teu exemplo consegui matar
o meu problema .....

Obrigado....

Valeu....