chave tripla
17/01/2005
0
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.
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.
Eduardo.padilha
Curtir tópico
+ 0
Responder
Posts
17/01/2005
Marcus.magalhaes
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,
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,
Responder
18/01/2005
Eduardo.padilha
Era quase isso.... mas em cima do teu exemplo consegui matar
o meu problema .....
Obrigado....
Valeu....
o meu problema .....
Obrigado....
Valeu....
Responder
Clique aqui para fazer login e interagir na Comunidade :)