fazer SQL

Delphi

18/02/2004

olá galera, eu tenho um bd em access, e tenho dentre outras as seguintes tabelas: AGENDA, CONSULTA, MÉDICO e PACIENTE, com os seguintes campos

AGENDA
- COD_AGENDA, COD_MEDICO, DATA_ATENDIMENTO, etc..

CONSULTA
- COD_CONSULTA, CODPACIENTE, COD_AGENDA, etc..

MEDICO
- CODMEDICO, NOME_MEDICO, ETC..

PACIENTE
- CODPACIENTE, NOME_PACIENTE, ETC...

as tabelas estão devidamente relacionadas, e o que eu quero é fazer uma consulta de modo que fique em uma grid, a seguinte estrutura

Codigo_consulta |Médico | Data de atendimento|

ou seja juntar as tabelas, sendo que essas informações serão retornada apartir do código do paciente, ou seja, a pessoa digita o codigo do paciente e aí aparece consulta acima.

obrigado
jaigeral@yahoo.com.br


Manon

Manon

Curtidas 0

Respostas

Sremulador

Sremulador

18/02/2004

tente usar o inner join no query


GOSTEI 0
Uhligmichael

Uhligmichael

18/02/2004

Oi Manon.

A SQL deve ser a seguinte:

SELECT
CONSULTA.COD_CONSULTA,
MEDICO.NOME_MEDICO,
AGENDA.DATA_ATENDIMENTO
FROM
CONSULTA, AGENDA, MEDICO
WHERE
AGENDA.COD_MEDICO = MEDICO.CODMEDICO AND
AGENDA.COD_AGENDA = CONSULTA.COD_AGENDA AND
CONSULTA.CODPACIENTE = 0000;

Até mais.
Michael


GOSTEI 0
Pedro Bugim

Pedro Bugim

18/02/2004

Aponte o DbGrid para a query linkada às tabelas.
Dê um clique duplo no dbgrid e adicione 3 colunas (Add New). Na propriedade ´FieldName´ de cada nova coluna, coloque o campo desejado.
Aki, dei um exemplo, sendo o campo em que o usuário coloca o código do paciente, um edit simples.
para realizar a busca, adicione um button e no seu evento ´OnClick´, coloque o código abaixo:

With query do
begin
  Close;
  Sql.Clear;
  Sql.Add(´select * from Agenda A, Consulta B, Medico C, Paciente D where a.cod_medico = c.cod_medico and a.cod_agenda=b.cod_agenda and b.cod-paciente=d.cod_paciente and d.codpaciente=´+Quotedstr(Edit.text)+´´);
  Open;
end;


Creio que isso funcione. Caso não funcione, me diga!
Abraços,


GOSTEI 0
POSTAR