Pesquisar este blog

Livros Recomendados

Mostrando postagens com marcador 2996. Mostrar todas as postagens
Mostrando postagens com marcador 2996. Mostrar todas as postagens

sexta-feira, 10 de julho de 2020

URI (BEECROWD) - 2996 - Entrega de Pacotes - SQL - PostgreSQL

Outro exercício de SQL que soluciono e posto aqui. Veja a seguir.

Antes de resolver qualquer problema de SQL do URI, recomendamos seguir os seguintes passos:

  1. Ler todo enunciado do problema.
  2. Ler os tópicos do fórum em caso de dúvidas
  3. Preparar o esquema, conforme fornecido no problema. Obs.: muitas vezes o pessoal coloca o código de criação do esquema no fórum, então é só copiar!

Plataforma: URI (BEECROWD)

Problema2996

Solução:

Este exercício eu já considero um pouco mais complexo. Algumas partes são simples, tais como a criação das condições, mas ele exige um recurso um pouco mais avançado: é necessário fazer um join. Utilizou-se os alias u1 e u2 para indicar a tabela usuários, de forma a não tornar ambígua a consulta.

A quebra de linha foi feita por questões de legibilidade, mas você pode quebrar em quantas linhas quiser ou mesmo deixar tudo em uma linha só.

Observação: Note que nessa solução as palavras reservadas estão todas em letras minúsculas. Não faz diferença escrever select ou SELECT para o URI. Ambas estão corretas.

Conseguiu compreender a solução?

1
2
3
4
5
6
7
8
select packages.year, u1.name as sender, u2.name as receiver
from packages join
     users u1
     on packages.id_user_sender = u1.id join
     users u2
     on packages.id_user_receiver = u2.id
where (packages.year = 2015 or packages.color like 'blue')
     AND u2.address <> 'Taiwan' order by packages.year desc;

Postagem em destaque

URI (BEECROWD) - 2158 - Helping Uncle Cláudio (Ajudando o Tio Cláudio) - Matemática - C, C++ e Haskell

Buenas! Estou aqui mais uma vez para resolver um problema de Matemática! Agora tenho resolvido alguns dessa categoria, pra que vocês possam ...

Postagens mais visitadas