Emerson, Não há vantagem alguma.
Aprenda a analisar um plano de execução que você verá que o que estou falando é verdade. Segue abaixo o link de um artigo meu sobre o básico de como gerar e analisar um plano de execução: http://www.fabioprado.net/2011/03/analisando-o-plano-de-execucao-para.html []s Em 22 de julho de 2013 19:52, Emerson Sanches <emerson.sanc...@gmail.com>escreveu: > ** > > > Boa noite pessoal..............desculpe a demora em dar a resposta,mas > estava "viajando" do trabalho ate em casa.......rs. Fabio, é exatamente > isso que eu vi, pensei que fazer isso trouxesse alguma vantagem pois > poderia fazer o join com a segunda tabela já "filtrada" da coisas que nao > quero, achei que assim poderia ficar mais rapido. Só vou conseguir testar a > sintaxe amanha, testo e coloco um posição na lista. > > Obrigado pela atenção de todos, > > Emerson Sanches > Analista de Sistemas > > Em 22 de julho de 2013 18:47, Fabio Prado <fbifa...@gmail.com> escreveu: > > > Chiappa, > > > > É possível sim fazer o filtro na cláusula ON do JOIN (veja exemplo abaixo > > no schema HR), porém ninguém recomenda fazer isso. Uma das vantagens do > > padrão ANSI é justamente separar o que é filtro e o que é relacionamento. > > Fazer filtro no JOIN bagunça tudo de novo o código! > > > > select e.first_name, d.department_name > > from hr.employees e > > inner join hr.departments d > > on e.department_id = d.department_id > > and e.department_id = 10; > > > > Para aqueles que quiserem pesquisar mais sobre a diferença do padrão > ANSI e > > o padrão ou dialeto Oracle, consulte: > > > > http://www.fabioprado.net/2012/05/sql-padrao-ansi-x-padrao-oracle.html > > > > > > []s > > > > Fábio Prado > > > > > > Em 22 de julho de 2013 17:48, J. Laurindo Chiappa > > <jlchia...@yahoo.com.br>escreveu: > > > > > ** > > > > > > > > > Vc quer dizer que, na seção de JOIN da cláusula de FROM (usando sintaxe > > > ANSI, portanto), ao invés de comparação entre colunas tipo : > > > > > > SELECT colunasquequero > > > FROM tabela1 JOIN tabela2 ON colunatal = colunaqual; > > > > > > vc viu algo tipo, digamos : > > > > > > SELECT colunasquequero > > > FROM tabela1 JOIN tabela2 ON colunatal = colunaqual AND coluna > 45; > > > > > > ou seja, tinha Filtragem mesmo na cláusula FROM ???? Se sim, vc Tem > > > certeza que viu isso no RDBMS Oracle ???? Pois eu nunca vi isso não, e > em > > > toda documentação/referência que conheço é citada comparação entre > > colunas > > > para indicar a chave do JOIN, com valores eu nunca ouvi falar.... > > > > > > []s > > > > > > Chiappa > > > > > > --- Em oracle_br@yahoogrupos.com.br, Emerson Sanches <emerson.sanches@ > > ...> > > > escreveu > > > > > > > > Na realidade achei que dava pra fazer uma condição na recuperação de > > > dados > > > > mesmo.......................lembro de ter visto isso em um > > > > join....................... > > > > > > > > > > > > > > > > Emerson Sanches > > > > Analista de Sistemas > > > > > > > > > > > > Em 22 de julho de 2013 17:29, J. Laurindo Chiappa > > > > <jlchiappa@...>escreveu: > > > > > > > > > ** > > > > > > > > > > > > > > > Miltão, acho que podemos dar por ** muito muito Provável** , se não > > > > > garantido, que o colega lá usou uma terminologia meio inapropriada, > > pra > > > > > dizer o mínimo.... > > > > > > > > > > Emerson, normalmente por "FILTRO" em colunas no contexto de > > databases a > > > > > gente entende que vc quer aplicar uma CONDIÇÃO na recuperação de > > dados > > > (ie, > > > > > receber apenas os registros/linhas aonde uma comparação - de > > igualdade, > > > > > desigualdade, maior/menor, membro de sub-conjunto, etc - seja > > > verdadeira > > > > > para uma dada coluna), e isso COM CERTEZA não se faz em cláusula > FROM > > > de um > > > > > SQL.... > > > > > TALVEZ o que vc queira na verdade é restringir um dado SQL para que > > > EXIBA > > > > > apenas algumas colunas dentro de uma lista maior, aí sim vc usaria > > uma > > > > > cláusula FROM, no estilo : > > > > > > > > > > SELECT colunaqueeuqueroexibir > > > > > FROM (SELECT listadecolunasmuitomaior FROM nomedatabela...); > > > > > > > > > > ok ? É isso que vc quis dizer com "filtro" ?? Se não é, plz Explica > > > melhor > > > > > .... > > > > > > > > > > []s > > > > > > > > > > Chiappa > > > > > > > > > > --- Em oracle_br@yahoogrupos.com.br, "Milton Bastos Henriquis Jr." > > > > > <miltonbastos@> escreveu > > > > > > > > > > > > > > > > > Rapaz... melhor vc perguntar lá no Posto Ipiranga... rs... > > > > > > > > > > > > Filtro na clausula FROM eu particularmente desconheço! Não me > > lembro > > > de > > > > > ter > > > > > > visto isso! > > > > > > > > > > > > Alguém conhece??? > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > 2013/7/22 emerson_sanches <emerson.sanches@> > > > > > > > > > > > > > > > > > > ** > > > > > > > > > > > > > > > > > > > > > Boa tarde pessoal da lista, sei que dá pra fazer isso, mas to > > > apanhando > > > > > > > pra achar na net. Gostaria de fazer o filtro de um campo na > > > clausula > > > > > from e > > > > > > > nao na where. Sera que alguem poderia me a lembrar a sintaxe. > > > > > > > > > > > > > > Obrigado. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram > removidas] > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > > > > > > > > > > > > > > -- > > Fábio Prado > > www.fabioprado.net > > "Compartilhando conhecimentos e treinando profissionais em Bancos de > Dados > > Oracle" > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > ------------------------------------ > > > > > > ---------------------------------------------------------- > > >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de > > inteira responsabilidade de seus remetentes. > > Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ > > > > ---------------------------------------------------------- > > >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » > > Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO > ESPAÇO! > > VISITE: http://www.oraclebr.com.br/ > > ---------------------------------------------------------- > > Links do Yahoo! Grupos > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > -- Fábio Prado www.fabioprado.net "Compartilhando conhecimentos e treinando profissionais em Bancos de Dados Oracle" [As partes desta mensagem que não continham texto foram removidas] ------------------------------------ -------------------------------------------------------------------------------------------------------------------------- >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira >responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -------------------------------------------------------------------------------------------------------------------------- >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » >Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: >http://www.oraclebr.com.br/ ------------------------------------------------------------------------------------------------------------------------ Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ <*> Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html