deathcon4 0 Denunciar post Postado Julho 25, 2014 Estou com dúvidas no uso das clausulas on e where no inner join. As vezes aparece somente on e as vezes somente o where.para fazer a comparação entre as tabelas do banco, isso está deixando-me confuso. Quando usar o on e quando usar o where. Também vi que dá para usar os dois juntos. Em inner join eu vi on sem where, com right join e left join com os dois. Posso usar select tabela.campo from tabela inner join where tabelaA.campo = tabelaB.campo where condição. Condição, por exemplo, cidade que seja Rio de Janeiro. em vez de select tabela.campo from tabela inner join on tabelaA.campo = tabelaB.campo where condição. Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Julho 25, 2014 No join explícito ON select * from USER_TABLES inner join user_tab_columns on user_tables.table_name = USER_TAB_COLUMNS.TABLE_NAME No join implicito WHERE select * from USER_TABLES , USER_TAB_COLUMNS where USER_TABLES.TABLE_NAME = USER_TAB_COLUMNS.TABLE_NAME Compartilhar este post Link para o post Compartilhar em outros sites
KhaosDoctor 242 Denunciar post Postado Agosto 13, 2014 Eu tinha um problema parecido quando eu aprendi os joins, mas acho que a ideia é basicamente a seguinte, um jeito mais "comum" de explicar. O on é obrigatório no caso de joins, ele identifica as chaves que são iguais em duas tabelas distintas, por exemplo, em uma tabela de usuário e outra tabela de grupos de usuário, se você quiser mostrar todos os usuários e seus devidos grupos, então você poderia fazer um Inner Join na tabela Grupos de Usuário onde a chave que ligaria os dados em ambas as tabelas seria o ID do usuário. O where é a filtragem geral, ela é aplicada depois do join, ou seja, ela vale para quando os usuários e os grupos já estão unidos em uma unica tabela, então imagine que agora você queira filtrar os grupos para "Admin", ai depois do join você usar um WHERE na tabela grupo que estará disponível para uso. Espero que você tenha entendido :D Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Agosto 13, 2014 Já fiz planos de execução para queries com joins implícitos e explícitos em Oracle e estes foram iguais. Compartilhar este post Link para o post Compartilhar em outros sites