Amigão, você deve usuar o JOIN.
De uma lida no site http://www.w3schools.com/sql/sql_join.asp para
saber a respeito.

Vou tentar te ajudar com o SQL abaixo:

SELECT triagem.sintomatologia, triagem.orientacao, cid10.diagnostico, cid10.cid
INTO record1
FROM triagem
INNER JOIN cid10 ON triagem.triagemid = cid10.triagemid AND
cid10.servico  = p_servico
WHERE triagem.servico  = p_servico;


Vou explicar o contexto do negócio e o sistema:

É uma empresa de emergência médica móvel. O sistema está sendo desenvolvido em EXTJS.

Então, para um serviço temos:
Tabela para registro dos serviços: classificacao, nome do paciente, idade, endereco...

A classificação do serviço pode ser: Remoção ou Atendimento pré-hospitalar.
Sendo remoção, teria o registro pertinente à remoção em uma tabela: dtagenda, destino1, destino2, etc...

Ainda numa outra tabela observacao, tenho:
tipo e descricao da observaçao, mais a fk do servico:

num_servico, tipo, descricao

Nesta tabela mantenho os registros de tipo text:

Exemplo
num_servico, tipo, descricao
100                1        ORIENTACAO AO PACIENTE
100                2        QUADRO CLINICO DO PACIENTE
100                3        SINTOMATOLOGIA DO PACIENTE
100                4        OBSERVACOES SOBRE O SERVICO
100                5        OBSERVACOES SOBRE A REMOCAO


Quando eu fizer uma seleção para mostrar o registro, faira assim assim:

SELECT  * FROM servico WHERE num_servico = 100;
SELECT  * FROM servico_remocao WHERE num_servico = 100;
SELECT descricao as orientacao FROM observacao WHERE num_servico = 100 AND tipo = 1; SELECT descricao as quadro_clinico FROM observacao WHERE num_servico = 100 AND tipo = 2; SELECT descricao as obs_servico FROM observacao WHERE num_servico = 100 AND tipo = 4; SELECT descricao as obs_remocao FROM observacao WHERE num_servico = 100 AND tipo = 5;

Lembrando que:
nem todo serviço tem registro de remoção, nem todo serviço tem registro de orientacao, quadro_clinico, obs_servico, obs_remocao.

Então, no lugar de enviar varias consultas de um cliente para o servidor, pensei em buscar tudo com uma funcao.





_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a