Desculpe, DUTRA, não quero me prolongar, apenas esclarecer e pedir
desculpas se fui mal interpretado.
Esclarecendo minha pergunta inicial:
Começando pelo título: Retornar records concatenados.
Seria fazer algo como select 'carlos ' || 'antonio', se estivesse
trabalhando com tipo string.
...dependendo de condições específicas...
Avaliando parâmetros e decidindo de onde busca (justamente para evitar
junções, onde todas as tabelas relacionadas são processadas.
...uma função de única linha...
Logo, (e ao contrário da dedução do colega Matheus), estou querendo uma
unica linha, não é mesmo?
Para os que detém o conhecimento, quando falamos em uma função de única
linha, seria como falar de funções agregadas.
SELECT TRUE, 1 as um, 2 as dois, 3 as tres INTO ret; //única
linha
SELECT FALSE as boleano, 4 as quatro INTO ret1; //única linha
RETURN ret + ret1;
Aqui eu pergunto se ha um operador como || dos tipos string, mas para
tipos record
... Estou deduzindo que queiras retornar várias linhas...
Mesmo depois de eu ter dito que seria uma função de única linha?
Faltou interpretação do meu texto, certo?
sentido:
SELECT 1 + 2 as soma
Isso faz sentido? Minha opinião, sim. Principalmente quando estou em um
objeto de estudo e aprendizado.
...Não, meu caro.
Significa: Não, meu colega, meu companheiro... Outra pessoa com algo em
comum...
...uma função DE UNICA LINHA...
Peço desculpas pela maiúscula, mas a intenção era de destacar o texto.
A questão é a seguinte:
tendo varias tabelas, como mencionei anteriormente, quero retornar um
unico registro:
record1 : SELECT sintomatologia, orientacao INTO record1 from triagem
where servico = p_servico;
record2 : SELECT diagnostico, cid INTO record2 from cid10 where servico
= p_servico;
depois de todas as seleções, retornar todos os records em um unico
registro.
return record1.sintomatologia, record1.orientacao, record2.diagnostico,
record2.cid;
Onde está a repetição da primeira pergunta?
Finalmente, a resposta do Matheus (continuando com a interpretação
errada)
SELECT ret.boleano1, ret.um, ret.dois, ret.tres, ret1.boleano,
ret1.quatro INTO ret_final;
Alguém chegou a ver isso na minha resposta ao Matheus? Se não viram,
vejam:
record1.sintomatologia, record1.orientacao, record2.diagnostico,
record2.cid;
Então, assumo ter errado em escrever maiúsculas. Peço desculpas não
somente para o Matheus, mas para toda a lista.
Finalmente, o rapaz veio com algo (não somente uma vez) que não deveria
ser comum nesta lista, mas é.
Paciência, né?
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral