ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Select com Inner ou Union

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Banco de Dados
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
renanbg
Colaborador
Colaborador


Registrado: Quinta-Feira, 12 de Abril de 2012
Mensagens: 1158

MensagemEnviada: Seg Ago 28, 2017 9:22 am    Assunto: Select com Inner ou Union Responder com Citação

Estou usando essa rotina para obter dados de uma tabela, para depois "colar" nela mesma.

Código:
    with qrCopiar do
    begin
      Close;
      SQL.Clear;
      SQL.Add('SELECT COD_PROCEDIMENTO, VALOR');
      SQL.Add('FROM PRODUCAO');
      SQL.Add('WHERE COD_AGENDAMENTO = :COD');
      ParamByName('COD').AsInteger:= CodAgenda;
      Open;
    end;


Preciso incrementar com os seguintes campos da tabela CONTAS_RECEBER

COD_CONVENIO
TOTAL

Nesse caso se usa Inner Join ou Union?
Detalhe importante: O select acima pode retornar mais que 1 registro, já o que vai trazer os dados da CONTAS_RECEBER, vai trazer apenas 1 registro.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
imex
Moderador
Moderador


Registrado: Sexta-Feira, 7 de Janeiro de 2011
Mensagens: 11666

MensagemEnviada: Seg Ago 28, 2017 10:55 am    Assunto: Responder com Citação

Bom dia,

Se você quer que esses campos fiquem no mesmo registro então deve utilizar o Join.
Se você quer que esses campos fiquem em um registro separado então deve utilizar o Union.

Espero que ajude


Editado pela última vez por imex em Dom Out 01, 2023 4:13 pm, num total de 1 vez
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
renanbg
Colaborador
Colaborador


Registrado: Quinta-Feira, 12 de Abril de 2012
Mensagens: 1158

MensagemEnviada: Ter Ago 29, 2017 8:36 am    Assunto: Responder com Citação

é, como na produção pode ter mais de um registro não vai dar certo.
Pensei numa outra possibilidade.

estrutura producao

Código:
CODIGO
COD_AGENDAMENTO
COD_PROCEDIMENTO
VALOR


estrutura contas_receber

Código:
CODIGO
COD_AGENDAMENTO
COD_CONVENIO
PAGO
TOTAL


Preciso obter o COD_PROCEDIMENTO, VALOR da PRODUCAO
e o TOTAL e COD_CONVENIO da CONTAS_RECEBER

Pensei em fazer isso em 2 queries, seria o mais indicado?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
imex
Moderador
Moderador


Registrado: Sexta-Feira, 7 de Janeiro de 2011
Mensagens: 11666

MensagemEnviada: Ter Ago 29, 2017 11:14 am    Assunto: Responder com Citação

Se você vai utilizar os dados em momentos diferentes e/ou para finalidades diferentes acredito que seja o caso de utilizar 2 querys.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
renanbg
Colaborador
Colaborador


Registrado: Quinta-Feira, 12 de Abril de 2012
Mensagens: 1158

MensagemEnviada: Ter Ago 29, 2017 1:37 pm    Assunto: Responder com Citação

Vou usar numa mesma rotina de inclusão, mas vou de 2 queries mesmo.

obrigado.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Banco de Dados Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB