Re: [pgbr-geral] Trocar separador de campos de um RECORD
No dia 20 de julho de 2016 às 18:24, Heloisa Fernanda < helois...@yahoo.com.br> escreveu: > Olá Pessoal! > > Estou trazendo o resultado de uma consulta em um record, ex: > > SELECT > exame::TEXT > FROM > exame; > > Retorna algo assim: (ZIKAG,"ZIKA VÍRUS ANTICORPOS IGG","Para descartar > infecção recente, realizar ensaio de IgM ou soroconversão em IgG no > intervalo de 3 a 4 semanas.",1) > > > Tentou regex? SELECT regexp_replace(exame::text, ',([^ ])', ';\1', 'g' ) FROM exame; - Glauco Torres ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Trocar separador de campos de um RECORD
Em Quarta-feira, 20 de Julho de 2016 19:40, Tiago José Adamiescreveu: Em 20 de julho de 2016 18:24, Heloisa Fernanda > escreveu: > Olá Pessoal! > > Estou trazendo o resultado de uma consulta em um record, ex: > > SELECT > exame::TEXT > FROM > exame; > > Retorna algo assim: (ZIKAG,"ZIKA VÍRUS ANTICORPOS IGG","Para descartar > infecção recente, realizar ensaio de IgM ou soroconversão em IgG no > intervalo de 3 a 4 semanas.",1) > > Mas preciso trocar o separador de campos de vírgula para alguma outra coisa, > alguém tem ideia de como fazer isso? > Olá, Heloisa. Tente isso: SELECT REPLACE(exame::TEXT, ',', ';') as exame FROM exame; O primeiro parâmetro da função REPLACE [1] é a entrada, o texto principal. O segundo é o caractere que você quer substituir e o terceiro o novo substituto. Neste caso troquei as vírgulas por ponto-e-vírgula. [1] https://www.postgresql.org/docs/9.5/static/functions-string.html Oi Tiago! Quem dera fosse simples assim!!! :) O problema é que não posso substituir a vírgula dentro dos campos, perceba que existe uma vírgula aqui: "Para descartar infecção recente, realizar ensaio de IgM ou soroconversão em IgG no intervalo de 3 a 4 semanas." Eu preciso substituir o separador sem alterar o conteúdo dos campos ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral Olá Heloisa, Você pode tentar algo como: SELECT '('||campo1||';"'||campo2||'";"'||campo3||'";'||campo4||')'::TEXT as exame FROM exame Para poucos campos, resolveria. -- Luís R. Weck ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Trocar separador de campos de um RECORD
Em Quarta-feira, 20 de Julho de 2016 19:40, Tiago José Adamiescreveu: Em 20 de julho de 2016 18:24, Heloisa Fernanda escreveu: > Olá Pessoal! > > Estou trazendo o resultado de uma consulta em um record, ex: > > SELECT > exame::TEXT > FROM > exame; > > Retorna algo assim: (ZIKAG,"ZIKA VÍRUS ANTICORPOS IGG","Para descartar > infecção recente, realizar ensaio de IgM ou soroconversão em IgG no > intervalo de 3 a 4 semanas.",1) > > Mas preciso trocar o separador de campos de vírgula para alguma outra coisa, > alguém tem ideia de como fazer isso? > Olá, Heloisa. Tente isso: SELECT REPLACE(exame::TEXT, ',', ';') as exame FROM exame; O primeiro parâmetro da função REPLACE [1] é a entrada, o texto principal. O segundo é o caractere que você quer substituir e o terceiro o novo substituto. Neste caso troquei as vírgulas por ponto-e-vírgula. [1] https://www.postgresql.org/docs/9.5/static/functions-string.html Oi Tiago!Quem dera fosse simples assim!!! :) O problema é que não posso substituir a vírgula dentro dos campos, perceba que existe uma vírgula aqui: "Para descartar infecção recente, realizar ensaio de IgM ou soroconversão em IgG no intervalo de 3 a 4 semanas."Eu preciso substituir o separador sem alterar o conteúdo dos campos ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Trocar separador de campos de um RECORD
Em 20 de julho de 2016 18:24, Heloisa Fernandaescreveu: > Olá Pessoal! > > Estou trazendo o resultado de uma consulta em um record, ex: > > SELECT > exame::TEXT > FROM > exame; > > Retorna algo assim: (ZIKAG,"ZIKA VÍRUS ANTICORPOS IGG","Para descartar > infecção recente, realizar ensaio de IgM ou soroconversão em IgG no > intervalo de 3 a 4 semanas.",1) > > Mas preciso trocar o separador de campos de vírgula para alguma outra coisa, > alguém tem ideia de como fazer isso? > Olá, Heloisa. Tente isso: SELECT REPLACE(exame::TEXT, ',', ';') as exame FROM exame; O primeiro parâmetro da função REPLACE [1] é a entrada, o texto principal. O segundo é o caractere que você quer substituir e o terceiro o novo substituto. Neste caso troquei as vírgulas por ponto-e-vírgula. [1] https://www.postgresql.org/docs/9.5/static/functions-string.html TIAGO J. ADAMI http://www.adamiworks.com http://www.clouddba.com.br ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral