UNION COM 3 TABELAS
Ola colégas.
Estou fazendo um select com 3 tabelas utilizando a cláusula UNION. Acontece que na terceira UNION eu não tenho dois campos que tenhos nos dois UNIONs anteriores. Como faço para realizar esta consulta?
Segue a consulta.
São estes campos que não estão na última consulta: tbRecebimentos.DataNeg, tbRecebimentos.DataCred
Se alguém puder me ajudar serei muito grato.
Estou fazendo um select com 3 tabelas utilizando a cláusula UNION. Acontece que na terceira UNION eu não tenho dois campos que tenhos nos dois UNIONs anteriores. Como faço para realizar esta consulta?
Segue a consulta.
SELECT tbDuplicatas.NumeroDoc, tbDuplicatas.DataEmissao, tbClientes.Nome, tbDuplicatas.Valor, tbDuplicatas.DataVencimento, tbEnderecos.NumLoja, tbEnderecos.Bairro, tbEnderecos.Cidade, tbEnderecos.UF, tbDuplicatas.Observacao, tbDuplicatas.Recebido, tbDuplicatas.Descontado, tbRecebimentos.DataNeg, tbRecebimentos.DataCred
FROM (((tbDuplicatas INNER JOIN tbClientes ON tbDuplicatas.CodCliente = tbClientes.Codigo) INNER JOIN tbDet_Rec_Normal ON tbDuplicatas.Codigo = tbDet_Rec_Normal.CodDupl) INNER JOIN (tbRecebimentos INNER JOIN tbRecebimento_Normal ON tbRecebimentos.Codigo = tbRecebimento_Normal.CodRecebimento) ON tbDet_Rec_Normal.CodRecNormal = tbRecebimento_Normal.Codigo) INNER JOIN tbEnderecos ON (tbClientes.Codigo = tbEnderecos.CodCli) AND (tbDuplicatas.CodEnd = tbEnderecos.Codigo)
UNION
SELECT tbDuplicatas.NumeroDoc, tbDuplicatas.DataEmissao, tbClientes.Nome, tbDuplicatas.Valor, tbDuplicatas.DataVencimento, tbEnderecos.NumLoja, tbEnderecos.Bairro, tbEnderecos.Cidade, tbEnderecos.UF, tbDuplicatas.Observacao, tbDuplicatas.Recebido, tbDuplicatas.Descontado, tbRecebimentos.DataNeg, tbRecebimentos.DataCred
FROM (tbRecebimentos INNER JOIN (tbDesc_Dupl INNER JOIN ((tbClientes INNER JOIN tbDuplicatas ON tbClientes.Codigo = tbDuplicatas.CodCliente) INNER JOIN tbDet_Desc_Dupl ON tbDuplicatas.Codigo = tbDet_Desc_Dupl.CodDupl) ON tbDesc_Dupl.Codigo = tbDet_Desc_Dupl.CodDescDupl) ON tbRecebimentos.Codigo = tbDesc_Dupl.CodRecbmto) INNER JOIN tbEnderecos ON (tbClientes.Codigo = tbEnderecos.CodCli) AND (tbDuplicatas.CodEnd = tbEnderecos.Codigo)
UNION
SELECT tbDuplicatas.NumeroDoc, tbDuplicatas.DataEmissao, tbClientes.Nome, tbDuplicatas.Valor, tbDuplicatas.DataVencimento, tbEnderecos.NumLoja, tbEnderecos.Bairro, tbEnderecos.Cidade, tbEnderecos.UF, tbDuplicatas.Observacao, tbDuplicatas.Recebido, tbDuplicatas.Descontado
FROM (tbClientes INNER JOIN tbDuplicatas ON tbClientes.Codigo = tbDuplicatas.CodCliente) INNER JOIN tbEnderecos ON (tbDuplicatas.CodEnd = tbEnderecos.Codigo) AND (tbClientes.Codigo = tbEnderecos.CodCli);
São estes campos que não estão na última consulta: tbRecebimentos.DataNeg, tbRecebimentos.DataCred
Se alguém puder me ajudar serei muito grato.
usa null
exemplo
select campo1, campo2, campo3 from tabela1
union
select campo1, campo2, NULL from tabela2
o NULL vai tomar a forma de uma coluna ficticia, e nao vai retornar erro de tipo de coluna invalido..
exemplo
select campo1, campo2, campo3 from tabela1
union
select campo1, campo2, NULL from tabela2
o NULL vai tomar a forma de uma coluna ficticia, e nao vai retornar erro de tipo de coluna invalido..
Tópico encerrado , respostas não são mais permitidas