Vou analisar amanha. Obrigado.
2015-12-29 16:53 GMT-02:00 Marcos Thomaz <marcosthom...@gmail.com>: > > > Em 29 de dezembro de 2015 12:48, Thiago H. Barreto < > thi...@sedcontabilidade.com.br> escreveu: > >> Eu utilizei como exemplo as tabelas >> >> Create CREATE TABLE wfiscal.di00800 na verdade seria wfiscal.di00358 >> CREATE TABLE wfiscal.cd00000 e wfiscal.cd00358 >> >> 2015-12-29 15:46 GMT-02:00 Thiago H. Barreto < >> thi...@sedcontabilidade.com.br>: >> >>> Boa tarde caros colegas. >>> >>> Estou precisando da ajuda, pois estou quebrando a cabeça e não esta >>> saindo nada... >>> >>> Preciso atualizar um campo em uma tabela na minha base de dados. >>> >>> A estrutura é a seguinte das tabelas: >>> >>> CREATE TABLE wfiscal.di00800 >>> ( >>> iddipi character varying(40) NOT NULL, >>> idnota character varying(40), >>> idclassificacao integer, >>> desccomplementar character varying(20), >>> CONSTRAINT di00800_idxprimario PRIMARY KEY (iddipi)); >>> >>> CREATE TABLE wfiscal.cd00000 >>> ( >>> idcodigo character varying(40) NOT NULL, >>> dtinicial timestamp without time zone, >>> dtfinal timestamp without time zone, >>> cdcodigo integer, >>> cdclassificacao character varying(20), >>> nmdescricao character varying(53), >>> CONSTRAINT cd00000_idxprimario PRIMARY KEY (idcodigo)); >>> >>> Preciso atualizar o campo d*esccomplementar* da tabela *di00358* com o >>> valor do campo *nmdescricao *da tabela *cd00358*, ressaltando que o >>> tamanho do campo *nmdescricao *da tabela *cd00358* tem 53 caracteres e >>> o campo desccomplentar tem apenas 20, então tenho que utilizar a função >>> *substr*, porem ai que vem o problema, como vou fazer para realizar >>> esta atualização? >>> >>> Eu utilizei o comando para atualizar os produtos com o valor XXX, porem >>> quero saber como faço para atualizar os valores com os valores do campo de >>> outra tabela e ainda pegar apenas os 20 primeiros caracteres, eu li que a >>> função SELECT SUBSTR (Campo_tabela,1,20) ela pega o valor do campo da >>> posição inicial 1 até a 20, porem utilizar este comando pegando os dados de >>> uma outra tabela.... >>> >>> Segue script. >>> >>> update wfiscal.di00800 set desccomplementar = 'XXX' where >>> idclassificacao in(select distinct(DI.idclassificacao) from wfiscal.di00800 >>> as DI, wfiscal.cd00800 as CD where DI.idclassificacao = CD.cdcodigo >>> and DI.data_movimento = '01-11-2015') >>> >>> Desde já, muito obrigado. >>> >>> >>> >>> >>> >>> >>> >>> >>> *Lembre-se de que ao evitar o desperdício, além de economizar dinheiro >>> com papel e tinta, você também ajuda o nosso planeta. Bom para seu bolso, >>> melhor para o mundo!* >>> >> >> >> >> >> >> >> >> >> >> >> *Lembre-se de que ao evitar o desperdício, além de economizar dinheiro >> com papel e tinta, você também ajuda o nosso planeta. Bom para seu bolso, >> melhor para o mundo!* >> >> _______________________________________________ >> pgbr-geral mailing list >> pgbr-geral@listas.postgresql.org.br >> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >> > > > Tentou algo assim??: > > update wfiscal.di00800 set desccomplementar = > substr(wfiscal.*cd00358.**nmdescricao, > 1, 20) * > from wfiscal.*cd00358 * > *where* wfiscal.di00800.cdcodigo = wfiscal.*cd00358*.idclassificacao and > wfiscal.di00800.data_movimento = '2015-11-01' > > Qualquer coisa, dá uma olhada em > http://www.postgresql.org/docs/9.4/static/sql-update.html > > -- > > > Marcos Thomaz da Silva > Analista de Tecnologia da Informação > > <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> > Este > e-mail foi enviado por um computador sem vírus e protegido pelo Avast. > www.avast.com > <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> > <#151ef165c27249d2_DDB4FAA8-2DD7-40BB-A1B8-4E2AA1F9FDF2> > > _______________________________________________ > pgbr-geral mailing list > pgbr-geral@listas.postgresql.org.br > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > -- Thiago H. Barreto Sed Contabilidade S/S Ltda (34) - 3662-1124 thi...@sedcontabilidade.com.br *Lembre-se de que ao evitar o desperdício, além de economizar dinheiro com papel e tinta, você também ajuda o nosso planeta. Bom para seu bolso, melhor para o mundo!*
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral