Em 27 de fevereiro de 2014 16:35, Carlos Antônio Pereira (VidaUTI) < [email protected]> escreveu:
> Então, como já foi dito antes, estude os diversos tipos de JOIN que, >> pela sua explicação, me parece que você desconhece, e faça uma única >> consulta. >> > > Osvaldo, > > Em um contexto de junção eu faria isso: > > SELECT > s.*, -- Registros do servico > r.*, -- Registros da Remocao > st.ocorrencia AS sintomatologia, -- sintomatologia > o.ocorrencia AS orientacao -- orientacao > > FROM servico s > > -- Liga remocao quando existir > LEFT JOIN servico_agenda_remocao r > ON (s.num_servico = r.num_servico) > > --Liga orientacao quando existir > LEFT JOIN servico_ocorrencias AS o > ON (s.num_servico = o.num_servico AND o.referencia = '00') > > > --Liga sintomatologia quando existir > LEFT JOIN servico_ocorrencias AS st > ON (s.num_servico = st.num_servico AND st.referencia = '01') > > > --Liga quadro clinico quando existir > LEFT JOIN servico_ocorrencias AS qc > ON (s.num_servico = qc.num_servico AND qc.referencia = '04') > > WHERE s.num_servico = 227571 > > > Isso resolve. > Minha intenção com uma função seria avaliar a classificação do serviço > (Atendimento ou Remoção) > e buscar apenas o que for pertinente: > > Atendimento: > Possui 1 registro em serviço, 1 registro de sintomatologia e 1 registro de > orientacao > Remocao: > Possui 1 registro em serviço, 1 registro em servico_remocao e 1 registro > de quadro clinico > > > Finalmente, o cerne da minha pergunta (vide título) seria da possibilidade > de concatenar variaveis do tipo record e retorná-las. > Nem entrei no contexto do negócio porque isso é irrelevante pelo texto que > submeti à lista. > > SELECT 1 as um, 2 as dois INTO rec1 // Um retorno de única linha > SELECT 3 as tres, 4 as quatro INTO rec2 // Um retorno de única linha > > concatenação rec1 X rec2: > > um dois tres quatro > 1 2 3 4 > > > Att Carlos > > > > > > > > > > > _______________________________________________ > pgbr-geral mailing list > [email protected] > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > Carlos vc tentou com o array_to_string que passei? utilizamos ele para trazer em uma unica linha todos os cupons de uma nota fiscal separados por ';' ponto e virgula. -- Douglas Fabiano Specht
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
