Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Bianka__As

Querys implicitas

Recommended Posts

Existem querys implicitas que possam substituir funções explicitas?

 

Encontrei apenas para inner join, gostaria de saber como seriam funções implicitas para: right join, left join, full outer join, right excluding join,left excluding join,outer excluding join,cross join.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bianka,

Faz um bom tempo que tinha pesquisado sobre isso e me lembro bem que as joins implícitas não são mais tão usadas assim. Sem considerar que causam muitos mais problemas. Porquê quer substituir funções explicitas por implícitas? Gostaria de entender o que te levou a isso :)

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bianka,

 

Faz um bom tempo que tinha pesquisado sobre isso e me lembro bem que as joins implícitas não são mais tão usadas assim. Sem considerar que causam muitos mais problemas. Porquê quer substituir funções explicitas por implícitas? Gostaria de entender o que te levou a isso :)

 

Abraços!

 

É um trabalho da faculdade na verdade, quase um desafio na disciplina de Banco de Dados I.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bianka,

Se eu não me engano, existia um método que você poderia usar que era um símbolo de soma, ele identificava se era RIGHT ou LEFT JOIN.

Vamos ver como é o INNER primeiro.

 

Explicito:

SELECT dado FROM
TABLE info1 INNER JOIN TABLE info2
ON info1.id = info2.id;

Implícito:

SELECT info1.dado, info2.dado
FROM TABLE info1, TABLE info2
WHERE info1.id = info2.id

Agora vamos aos respectivos RIGHT e LEFT.

LEFT OUTER JOIN:

SELECT dado
FROM info1, info2
WHERE info1.column = info2.column(+)

RIGHT OUTER JOIN:

SELECT dado
FROM info1, info2
WHERE info2.column(+) = info1.column

Esse símbolo positivo é normalmente usado com o Oracle, não sei se vai servir no MySQL (nunca testei até então), mas vale o estudo e a pesquisa.

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por janir.matheus
      Boa tarde, peço ajuda dos membros desse fórum pois confesso estar completamente perdido.
      Tomando como base o diagrama (em anexo), preciso de uma query que retorne as empresas, seus produtos e as categorias de cada produto, sendo que cada produto pode pertencer a uma ou mais categorias.
       
      select tbl_produtos.Empresa, tbl_empresas.Nome, tbl_catprod.Categoria, tbl_classproduto.Classe, tbl_produtos.Id, tbl_produtos.Produto from tbl_produtos inner join tbl_empresas on tbl_produtos.Empresa = tbl_empresas.Id left join tbl_catprod on tbl_produtos.Id = tbl_catprod.Categoria left join tbl_classproduto on tbl_catprod.Categoria = tbl_classproduto.Id; Tentei a consulta mostrada acima mas o resultado não foi o que eu esperava.
      Agradeço antecipadamente pela ajuda.

    • Por FabianoSouza
      Pessoal, por que essa query com COLLATE  não funciona?
      declare @strPesquisa varchar(30) SET @strPesquisa = 'naicle' SET @sql = 'SELECT ' SET @sql = @sql + 'ML.nome ' SET @sql = @sql + 'FROM ' SET @sql = @sql + 'dbo.minhaTab AS ML ' SET @sql = @sql + ' WHERE ' SET @sql = @sql + ' nome LIKE ' SET @sql = @sql + '''%' + @strPesquisa COLLATE Latin1_General_CI_AI + '%''' EXEC (@sql) Não acusa erro ao rodar.
      Mas não traz os registro porque está gravado como "naiclê" (com acento), o que significa que não está aplicando a COLLATE.
       
      Montando essa mesma query mas da forma tradicional, o COLLATE funciona.
       
      SELECT ML.nome FROM dbo.minhaTab AS ML WHERE nome LIKE '%'+ @strPesquisa COLLATE Latin1_General_CI_AI+'%'  
       
    • Por peterstefan
      Olá, estou com uma query aqui e preciso pegar de 2 campos diferentes os dados diferente de 0,  mais quanto tento no AND ele somente traz um resultado, o OR ele traz um dos campos com o valor 0, teria alguma forma de pegar os dados diferente de 0 dos dois campus?
      preciso pegar o idOrganizador diferente de 0 e o idPiloto diferente de 0 
       
      SELECT * FROM boletos WHERE proc = 0 AND idOrganizador !='0' AND idPiloto ='0';  
    • Por TeixeiraRamos
      Olá pessoal,
      Por favor, tem que ser feita alguma mudança no código depois que se muda para a versão Wampserver64?
      Estou tentando abrir as minhas páginas e mostra erro. Um exemplo:
       
       
      No exemplo a linha 62:
      $result = $PDO->query($sql); No phpMyAdmin fiz o teste com a sql é funcionou corretamente.
       
      Obrigado
       
       
       
    • Por william_droops
      Olá, tenho uma tabela com esta estrutura

      Quero montar uma Query que dê este resultado. 

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.