|
ActiveDelphi .: O site do programador Delphi! :.
|
Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
kleberibm Membro Junior
Registrado: Quinta-Feira, 9 de Setembro de 2010 Mensagens: 355 Localização: Santo Anotnio de Jesus-BA
|
Enviada: Sex Jun 17, 2011 10:17 pm Assunto: Consulta SQL com UNION - Não consigo ajuden por favor! |
|
|
Pessoal Boa noite a Todos!
Bom, para quem não sabe sou iniciante no mundo da programação Delphi SQL.
Bom Estou com sérios problemas com SQL. O prolema é o seguinte faço uma consulta em uma tabela e da tudo certo. Mais quando uso o Comando UNION para Consultar uma outra tabela aí vem o erro..
A consulta sem o Union:
SELECT
C000042.DATA,
C000042.PLANO_CONTAS,
C000042.HISTORICO,
C000042.TIPO,
C000042.VALOR,
C000035.CLASSIFICACAO,
C000042.CODCONTA,
C000035.CONTA,
C000035.TIPO
FROM
C000035
INNER JOIN C000042 ON (C000035.CODIGO = C000042.CODCONTA)
Bom, até funciona perfeitamente. Mas quando adiciono o Comando UNION aí que vem o Erro.
o Scritp está assim:
SELECT
C000042.DATA,
C000042.PLANO_CONTAS,
C000042.HISTORICO,
C000042.TIPO,
C000042.VALOR,
C000035.CLASSIFICACAO,
C000042.CODCONTA,
C000035.CONTA,
C000035.TIPO
FROM
C000035
INNER JOIN C000042 ON (C000035.CODIGO = C000042.CODCONTA)
UNION ALL
SELECT
C000044.VALOR,
C000035.CLASSIFICACAO,
C000035.TIPO,
C000035.CONTA
FROM
C000035
INNER JOIN C000044 ON (C000035.CONTA = C000044.CODCONTA)
Aí ja não funciona mais nada depois que acrescento o UNION.
Pessoal quem conseguir identificar onde está o erro, por favor me ajudem. desde já aobrigado! |
|
Voltar ao Topo |
|
|
adriano_servitec Colaborador
Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
Enviada: Sex Jun 17, 2011 10:50 pm Assunto: Re: Consulta SQL com UNION - Não consigo ajuden por favor! |
|
|
kleberibm escreveu: | Pessoal Boa noite a Todos!
Bom, para quem não sabe sou iniciante no mundo da programação Delphi SQL.
Bom Estou com sérios problemas com SQL. O prolema é o seguinte faço uma consulta em uma tabela e da tudo certo. Mais quando uso o Comando UNION para Consultar uma outra tabela aí vem o erro..
A consulta sem o Union:
SELECT
C000042.DATA,
C000042.PLANO_CONTAS,
C000042.HISTORICO,
C000042.TIPO,
C000042.VALOR,
C000035.CLASSIFICACAO,
C000042.CODCONTA,
C000035.CONTA,
C000035.TIPO
FROM
C000035
INNER JOIN C000042 ON (C000035.CODIGO = C000042.CODCONTA)
Bom, até funciona perfeitamente. Mas quando adiciono o Comando UNION aí que vem o Erro.
o Scritp está assim:
SELECT
C000042.DATA,
C000042.PLANO_CONTAS,
C000042.HISTORICO,
C000042.TIPO,
C000042.VALOR,
C000035.CLASSIFICACAO,
C000042.CODCONTA,
C000035.CONTA,
C000035.TIPO
FROM
C000035
INNER JOIN C000042 ON (C000035.CODIGO = C000042.CODCONTA)
UNION ALL
SELECT
C000044.VALOR,
C000035.CLASSIFICACAO,
C000035.TIPO,
C000035.CONTA
FROM
C000035
INNER JOIN C000044 ON (C000035.CONTA = C000044.CODCONTA)
Aí ja não funciona mais nada depois que acrescento o UNION.
Pessoal quem conseguir identificar onde está o erro, por favor me ajudem. desde já aobrigado! | Se o erro for por causa de ausencia das colunas no segundo select vc precisa preencher com algo ai no segundo select para igualar ao primeiro que contem nove campos contra 4 campos do segundo select
Código: | SELECT
C000042.DATA,
C000042.PLANO_CONTAS,
C000042.HISTORICO,
C000042.TIPO,
C000042.VALOR,
C000035.CLASSIFICACAO,
C000042.CODCONTA,
C000035.CONTA,
C000035.TIPO
FROM
C000035
INNER JOIN C000042 ON (C000035.CODIGO = C000042.CODCONTA)
UNION ALL
SELECT
C000044.VALOR,
C000035.CLASSIFICACAO,
C000035.TIPO,
C000035.CONTA,
null,
null,
null,
null,
null
FROM
C000035
INNER JOIN C000044 ON (C000035.CONTA = C000044.CODCONTA) |
Não sei se vai funcionar pq não testei, vej ai, qualquer coisa volte a postar. _________________ Jogo seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.rockdrum
https://play.google.com/store/apps/details?id=br.com.couldsys.drumsetfree |
|
Voltar ao Topo |
|
|
kleberibm Membro Junior
Registrado: Quinta-Feira, 9 de Setembro de 2010 Mensagens: 355 Localização: Santo Anotnio de Jesus-BA
|
Enviada: Sex Jun 17, 2011 11:29 pm Assunto: Re: Consulta SQL com UNION - Não consigo ajuden por favor! |
|
|
adriano_servitec escreveu: | kleberibm escreveu: | Pessoal Boa noite a Todos!
Bom, para quem não sabe sou iniciante no mundo da programação Delphi SQL.
Bom Estou com sérios problemas com SQL. O prolema é o seguinte faço uma consulta em uma tabela e da tudo certo. Mais quando uso o Comando UNION para Consultar uma outra tabela aí vem o erro..
A consulta sem o Union:
SELECT
C000042.DATA,
C000042.PLANO_CONTAS,
C000042.HISTORICO,
C000042.TIPO,
C000042.VALOR,
C000035.CLASSIFICACAO,
C000042.CODCONTA,
C000035.CONTA,
C000035.TIPO
FROM
C000035
INNER JOIN C000042 ON (C000035.CODIGO = C000042.CODCONTA)
Bom, até funciona perfeitamente. Mas quando adiciono o Comando UNION aí que vem o Erro.
o Scritp está assim:
SELECT
C000042.DATA,
C000042.PLANO_CONTAS,
C000042.HISTORICO,
C000042.TIPO,
C000042.VALOR,
C000035.CLASSIFICACAO,
C000042.CODCONTA,
C000035.CONTA,
C000035.TIPO
FROM
C000035
INNER JOIN C000042 ON (C000035.CODIGO = C000042.CODCONTA)
UNION ALL
SELECT
C000044.VALOR,
C000035.CLASSIFICACAO,
C000035.TIPO,
C000035.CONTA
FROM
C000035
INNER JOIN C000044 ON (C000035.CONTA = C000044.CODCONTA)
Aí ja não funciona mais nada depois que acrescento o UNION.
Pessoal quem conseguir identificar onde está o erro, por favor me ajudem. desde já aobrigado! | Se o erro for por causa de ausencia das colunas no segundo select vc precisa preencher com algo ai no segundo select para igualar ao primeiro que contem nove campos contra 4 campos do segundo select
Código: | SELECT
C000042.DATA,
C000042.PLANO_CONTAS,
C000042.HISTORICO,
C000042.TIPO,
C000042.VALOR,
C000035.CLASSIFICACAO,
C000042.CODCONTA,
C000035.CONTA,
C000035.TIPO
FROM
C000035
INNER JOIN C000042 ON (C000035.CODIGO = C000042.CODCONTA)
UNION ALL
SELECT
C000044.VALOR,
C000035.CLASSIFICACAO,
C000035.TIPO,
C000035.CONTA,
null,
null,
null,
null,
null
FROM
C000035
INNER JOIN C000044 ON (C000035.CONTA = C000044.CODCONTA) |
Não sei se vai funcionar pq não testei, vej ai, qualquer coisa volte a postar. | ~
Amigo funcionou deu certo ficou ótimo, mas não sei como faço para ordernar essa essa pesquisa, normalmente numa simples pesquisa eu coloco sempre no final da pesquisa um Order BY:
Script Ficou assim:
SELECT
C000042.DATA,
C000042.PLANO_CONTAS,
C000042.HISTORICO,
C000042.TIPO,
C000042.VALOR,
C000035.CLASSIFICACAO,
C000042.CODCONTA
FROM
C000035
INNER JOIN C000042 ON (C000035.CODIGO = C000042.CODCONTA)
UNION
SELECT
C000044.DATA,
C000044.VALOR,
C000035.CLASSIFICACAO,
C000035.TIPO,
C000035.CONTA,
C000044.CODCONTA,
C000044.HISTORICO
FROM
C000035
INNER JOIN C000044 ON (C000035.CONTA = C000044.CODCONTA)
============================================
Agora como faço para aordenar essa consulta? |
|
Voltar ao Topo |
|
|
adriano_servitec Colaborador
Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
Enviada: Sáb Jun 18, 2011 9:45 am Assunto: Re: Consulta SQL com UNION - Não consigo ajuden por favor! |
|
|
kleberibm escreveu: | adriano_servitec escreveu: | kleberibm escreveu: | Pessoal Boa noite a Todos!
Bom, para quem não sabe sou iniciante no mundo da programação Delphi SQL.
Bom Estou com sérios problemas com SQL. O prolema é o seguinte faço uma consulta em uma tabela e da tudo certo. Mais quando uso o Comando UNION para Consultar uma outra tabela aí vem o erro..
A consulta sem o Union:
SELECT
C000042.DATA,
C000042.PLANO_CONTAS,
C000042.HISTORICO,
C000042.TIPO,
C000042.VALOR,
C000035.CLASSIFICACAO,
C000042.CODCONTA,
C000035.CONTA,
C000035.TIPO
FROM
C000035
INNER JOIN C000042 ON (C000035.CODIGO = C000042.CODCONTA)
Bom, até funciona perfeitamente. Mas quando adiciono o Comando UNION aí que vem o Erro.
o Scritp está assim:
SELECT
C000042.DATA,
C000042.PLANO_CONTAS,
C000042.HISTORICO,
C000042.TIPO,
C000042.VALOR,
C000035.CLASSIFICACAO,
C000042.CODCONTA,
C000035.CONTA,
C000035.TIPO
FROM
C000035
INNER JOIN C000042 ON (C000035.CODIGO = C000042.CODCONTA)
UNION ALL
SELECT
C000044.VALOR,
C000035.CLASSIFICACAO,
C000035.TIPO,
C000035.CONTA
FROM
C000035
INNER JOIN C000044 ON (C000035.CONTA = C000044.CODCONTA)
Aí ja não funciona mais nada depois que acrescento o UNION.
Pessoal quem conseguir identificar onde está o erro, por favor me ajudem. desde já aobrigado! | Se o erro for por causa de ausencia das colunas no segundo select vc precisa preencher com algo ai no segundo select para igualar ao primeiro que contem nove campos contra 4 campos do segundo select
Código: | SELECT
C000042.DATA,
C000042.PLANO_CONTAS,
C000042.HISTORICO,
C000042.TIPO,
C000042.VALOR,
C000035.CLASSIFICACAO,
C000042.CODCONTA,
C000035.CONTA,
C000035.TIPO
FROM
C000035
INNER JOIN C000042 ON (C000035.CODIGO = C000042.CODCONTA)
UNION ALL
SELECT
C000044.VALOR,
C000035.CLASSIFICACAO,
C000035.TIPO,
C000035.CONTA,
null,
null,
null,
null,
null
FROM
C000035
INNER JOIN C000044 ON (C000035.CONTA = C000044.CODCONTA) |
Não sei se vai funcionar pq não testei, vej ai, qualquer coisa volte a postar. | ~
Amigo funcionou deu certo ficou ótimo, mas não sei como faço para ordernar essa essa pesquisa, normalmente numa simples pesquisa eu coloco sempre no final da pesquisa um Order BY:
Script Ficou assim:
SELECT
C000042.DATA,
C000042.PLANO_CONTAS,
C000042.HISTORICO,
C000042.TIPO,
C000042.VALOR,
C000035.CLASSIFICACAO,
C000042.CODCONTA
FROM
C000035
INNER JOIN C000042 ON (C000035.CODIGO = C000042.CODCONTA)
UNION
SELECT
C000044.DATA,
C000044.VALOR,
C000035.CLASSIFICACAO,
C000035.TIPO,
C000035.CONTA,
C000044.CODCONTA,
C000044.HISTORICO
FROM
C000035
INNER JOIN C000044 ON (C000035.CONTA = C000044.CODCONTA)
============================================
Agora como faço para aordenar essa consulta? |
No firebird (outros bancos eu não sei) vc faz no segundo select utilizando o numero da coluna do primeiro select que vc quer ordenar
exemplo
ORDER BY 4, irá ordenar por este campo C000042.TIPO _________________ Jogo seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.rockdrum
https://play.google.com/store/apps/details?id=br.com.couldsys.drumsetfree |
|
Voltar ao Topo |
|
|
|
|
Enviar Mensagens Novas: Proibido. Responder Tópicos Proibido Editar Mensagens: Proibido. Excluir Mensagens: Proibido. Votar em Enquetes: Proibido.
|
|