AJUDA CONSULTA SQL SERVER

SQL Server

SQL

Banco de Dados

SELECT

14/05/2022

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
Christian Costa

Christian Costa

Curtidas 0

Respostas

Raffael

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!
GOSTEI 0
POSTAR