none
Dúvida conceitual: View ou Inner Join RRS feed

  • Pergunta

  • Turma,

    Tenho vários bancos de dados sql (no mesmo servidor) e eles fazem join entre si.
    Qual é o mais rápido: criar uma view da tabela ou utilizar join dentro de uma stored procedure.

    Valeu !!!
    terça-feira, 20 de março de 2007 18:01

Todas as Respostas

  •  

     view particionada e mais rapido, com indices.

     

    mais se vc. puder filtrar bem o result set entre os bancos carga de transferecia pode ser reduzida fazendo com que procedures fiquem melhor. depende so seu cenario, por exemplo se os servidores forem ligados por um wan eu faria storeprocedure, caso contrario uma view particionada com indices ( usando linked servers ) ficaria muito bom.

     

    Abs;

    terça-feira, 20 de março de 2007 18:06
  • Boa tarde Pablício

    Concordo com o Marcelo, vale a velha frase "Tudo é lícito, porém, nem tudo convém". Ou seja tudo depende realmente do cenário.

     

     

    Abs

    Espero ter ajudado

    terça-feira, 20 de março de 2007 18:08
  • Marcelo,
    Deixa eu melhorar o exemplo.

    Tenho em um mesmo servidor os bancos: bancoa e bancob. A todo momento as sp´s que estão no bancoa estão fazendo inner join com tabelas que estão no bancob. Então a dúvida é se vale a pena criar views das tabelas que estão no bancob dentro do bancoa, pois dessa forma o join seria com a view e não com a tabela que estava no bancob.

    Exemplo:
    Situação atual
    select * from tabela inner join bancob.dbo.tabelab on a.id = b.id

    Situação proposta
    criar uma view da tabela bancob.dbo.tabelab dentro do bancoa
    então ficaria
    select * from tabelaa inner join tabelab on a.id = b.id

    Desta forma a tabelab que está dentro do bancoa na realidade é uma view da tabelab que está no bancob.

    Valeu !!!



    terça-feira, 20 de março de 2007 18:12
  • Neste caso Pablício acho que você deva criar Views.Pois fica muito mais fácil escalonabilizar sua aplicação.

     

     

    Abs

    terça-feira, 20 de março de 2007 18:22
  • se for tudo no mesmo server, uma view seria boa ideia, mais assim mesmo cogite a ideia de indexar.

     

    Abs;

    terça-feira, 20 de março de 2007 18:29