none
Consulta entre tabelas RRS feed

  • Pergunta

  • Olá Pessoal

    Gostaria de fazer uma consulta em sql com as seguintes tabelas.

    O critério seria um WHERE Referencia='xxxxxx'

    E a tabela ficaria assim.

    |Referencia | Peça | Desc_peça | Saldo_Liquido| Preço_uat|

    |Tab-Composição|     - |Tab-Cadastro|         - |Tab-Estoque|

    |Referencia|                -  |Peça|                     - |Peça|

    |Peça|                         - |Desc_peça|             - |Filial|

                                       - |Cla_Fiscal|               - |Saldo_Liquido|

                                       - |Preço_uat|

                                       - |Garantia_Pec|

                                       - |Cod_tributo|

                                       - |Saldo_estoque|

                                       - |Saldo_Reserva|

    Eu tentei utilizar o microsoft query para criar o relacionamento no designer, mais a consulta ficou muito lenta.

    Obs: as tabelas tem mais de 70.000 registros.

    Grato pela ajuda

    Paulo Roberto

    sexta-feira, 5 de julho de 2013 18:51

Todas as Respostas

  • SELECT TCO.REFERENCIA,
           TCA.PECA,
           TCA.DESC_PECA,
           TE.SALDO_LIQUIDO,
           TCA.PRECO_UAT
    FROM   TAB_CADASTRO TCA
           INNER JOIN TAB_COMPOSICAO TCO
                   ON ( TCA.PECA = TCO.PECA )
           INNER JOIN TAB_ESTOQUE TE
                   ON ( TCA.PECA = TCO.PECA )
    WHERE  TCO.REFERENCIA = 'xxxxxx' 
    Acho que é isso. Só uma coisa, verifique se tem índices nas suas tabelas, campo peca, referencia, pois pode ser que melhore o desempenho.
    sexta-feira, 5 de julho de 2013 19:26
  • Olá Meu amigo

    Muito obrigado por responder.

    O que seria índices ainda estou aprendendo SQL?

    Onde que eu vejo se existe os índices?

    Obrigado

    Paulo

    sexta-feira, 5 de julho de 2013 19:34
  • Sobre índices você pode ver aqui: Link

     Olha, se você criou essas tabelas sem chave primária, provavelmente elas não tem índices. Você pode criar índices com SQL ou usa um software pra te ajudar. Tem o SQL Server Management Studio, SQL Server Maestro, SQL Manager Lite que eu uso.

    sexta-feira, 5 de julho de 2013 19:50