AJUDA CONSULTA SQL SERVER
Bom dia, gostaria da ajuda para fazer um select com join em 3 tabelas que me tragam o resultado da 1 tabela completo, 2 tabela somente 1 coluna e 3 tabela somente 1 coluna, porém o que tem na 2 e 3 tabela a coluna tem que ser unida, eu consegui fazer o select com join só que a coluna da 2 e 3 tabela não se uniram e criou 2 colunas diferentes, fiz assim o meu select
SELECT DISTINCT
T.id, T.chave, T.natop, T.CFOP, T.nome, T.n_NF, T.data_emissao_NF, T.total_NF, T.endereco, T.cidade, T.bairro, T.uf, T.cep, T.pais, T.cnpj, T.nome_transp, T.cnpj_transp, T.qtd_vol_transp, T.peso_l_transp, T.peso_b_transp, T.total_BC,
T.total_icms, T.total_prod, T.total_frete, T.total_ipi, T.total_pis, T.total_cofins, T.total_trib, T.tipo_emissao, T.tipo_frete, T.tipo_pgto, T2.N_Conta_Contabil AS CONTABIL, T3.Nome_Conta_Contabil AS CONTABIL
FROM NF_Completa AS T LEFT OUTER JOIN
Tabela_CP AS T2 ON T.chave = T2.Chave_Acesso FULL OUTER JOIN
LANÇAMENTO AS T3 ON T.chave = T3.Chave_Acesso
resultado
1 35220282743287003553550500011744281170843397 Venda merc.adq.receb.de terceiros 6102 FULANO 1174428 2022-02-17 12:07:35.000 9690,85 AVENIDA RIBEIRAO DOS CRISTAIS (G PRETO) Cajamar EMPRESARIAL PAINEIRA (JORDANESIA) SP 07775240 Brasil 82743287003553 TNT MERCURIO CARGAS E ENCOMENDAS EX PRESSAS SA 95591723003800 10 45.530 49.070 9135.66 365.42 9135.66 0.00 555.19 150.73 694.32 845.05 Entrada CIF Boleto FORNECEDORES DIVERSOS FORNECEDORES DIVERSOS
2 35220250255025000104550010002247191881202824 VENDA DE PRODUÇÃO DO ESTABELECIMENTO 6101 FULANO 224719 2022-02-16 15:38:41.000 25282,26 RUA ANTONIO G PACHECO BOITUVA VILA SÃO VICENTE DE PAULA SP 18550612 BRASIL 50255025000104 TRANSPORTADORA EXPRESSO PATURI LTDA 33617977000101 3 33.344 51.478 21984.58 2638.15 21984.58 0.00 3297.68 362.75 1670.83 Entrada CIF Boleto NULL FORNECEDORES DIVERSOS
SELECT DISTINCT
T.id, T.chave, T.natop, T.CFOP, T.nome, T.n_NF, T.data_emissao_NF, T.total_NF, T.endereco, T.cidade, T.bairro, T.uf, T.cep, T.pais, T.cnpj, T.nome_transp, T.cnpj_transp, T.qtd_vol_transp, T.peso_l_transp, T.peso_b_transp, T.total_BC,
T.total_icms, T.total_prod, T.total_frete, T.total_ipi, T.total_pis, T.total_cofins, T.total_trib, T.tipo_emissao, T.tipo_frete, T.tipo_pgto, T2.N_Conta_Contabil AS CONTABIL, T3.Nome_Conta_Contabil AS CONTABIL
FROM NF_Completa AS T LEFT OUTER JOIN
Tabela_CP AS T2 ON T.chave = T2.Chave_Acesso FULL OUTER JOIN
LANÇAMENTO AS T3 ON T.chave = T3.Chave_Acesso
resultado
1 35220282743287003553550500011744281170843397 Venda merc.adq.receb.de terceiros 6102 FULANO 1174428 2022-02-17 12:07:35.000 9690,85 AVENIDA RIBEIRAO DOS CRISTAIS (G PRETO) Cajamar EMPRESARIAL PAINEIRA (JORDANESIA) SP 07775240 Brasil 82743287003553 TNT MERCURIO CARGAS E ENCOMENDAS EX PRESSAS SA 95591723003800 10 45.530 49.070 9135.66 365.42 9135.66 0.00 555.19 150.73 694.32 845.05 Entrada CIF Boleto FORNECEDORES DIVERSOS FORNECEDORES DIVERSOS
2 35220250255025000104550010002247191881202824 VENDA DE PRODUÇÃO DO ESTABELECIMENTO 6101 FULANO 224719 2022-02-16 15:38:41.000 25282,26 RUA ANTONIO G PACHECO BOITUVA VILA SÃO VICENTE DE PAULA SP 18550612 BRASIL 50255025000104 TRANSPORTADORA EXPRESSO PATURI LTDA 33617977000101 3 33.344 51.478 21984.58 2638.15 21984.58 0.00 3297.68 362.75 1670.83 Entrada CIF Boleto NULL FORNECEDORES DIVERSOS
Christian Costa
Curtidas 0
Respostas
Raffael
14/05/2022
Boa noite.
Não sei se ainda quer ajuda com isso, mas caso sim veja se isso te serve:
SELECT DISTINCT
T.id, T.chave, T.natop, T.CFOP, T.nome, T.n_NF, T.data_emissao_NF, T.total_NF, T.endereco, T.cidade, T.bairro, T.uf, T.cep, T.pais, T.cnpj, T.nome_transp, T.cnpj_transp, T.qtd_vol_transp, T.peso_l_transp, T.peso_b_transp, T.total_BC,
T.total_icms, T.total_prod, T.total_frete, T.total_ipi, T.total_pis, T.total_cofins, T.total_trib, T.tipo_emissao, T.tipo_frete, T.tipo_pgto, (ISNULL(T2.N_Conta_Contabil,'') + ' ' + ISNULL(T3.Nome_Conta_Contabil,'')) AS CONTABIL
FROM NF_Completa AS T LEFT OUTER JOIN
Tabela_CP AS T2 ON T.chave = T2.Chave_Acesso FULL OUTER JOIN
LANÇAMENTO AS T3 ON T.chave = T3.Chave_Acesso
As vírgulas são o que separam as colunas na consulta, se você quer que valores de duas ou mais colunas fiquem numa mesma coluna, use + para concatenar (juntar) os valores em apenas uma coluna.
PS: Isso vale para campos de texto, se usar campos numéricos você estará apenas somando valores.
Abraços!
Não sei se ainda quer ajuda com isso, mas caso sim veja se isso te serve:
SELECT DISTINCT
T.id, T.chave, T.natop, T.CFOP, T.nome, T.n_NF, T.data_emissao_NF, T.total_NF, T.endereco, T.cidade, T.bairro, T.uf, T.cep, T.pais, T.cnpj, T.nome_transp, T.cnpj_transp, T.qtd_vol_transp, T.peso_l_transp, T.peso_b_transp, T.total_BC,
T.total_icms, T.total_prod, T.total_frete, T.total_ipi, T.total_pis, T.total_cofins, T.total_trib, T.tipo_emissao, T.tipo_frete, T.tipo_pgto, (ISNULL(T2.N_Conta_Contabil,'') + ' ' + ISNULL(T3.Nome_Conta_Contabil,'')) AS CONTABIL
FROM NF_Completa AS T LEFT OUTER JOIN
Tabela_CP AS T2 ON T.chave = T2.Chave_Acesso FULL OUTER JOIN
LANÇAMENTO AS T3 ON T.chave = T3.Chave_Acesso
As vírgulas são o que separam as colunas na consulta, se você quer que valores de duas ou mais colunas fiquem numa mesma coluna, use + para concatenar (juntar) os valores em apenas uma coluna.
PS: Isso vale para campos de texto, se usar campos numéricos você estará apenas somando valores.
Abraços!
GOSTEI 0