Consulta Right Outer Join para Nível de Usuário

MySQLBeginner
Pratique Agora

Introdução

Neste projeto, você aprenderá como criar um banco de dados, tabelas e executar uma consulta de right outer join para recuperar o nível de todos os usuários com base em suas pontuações.

👀 Pré-visualização

Imagem de pré-visualização do projeto de banco de dados

🎯 Tarefas

Neste projeto, você aprenderá:

  • Como acessar o MySQL usando o comando sudo sem senha
  • Como criar um banco de dados e tabelas
  • Como inserir dados nas tabelas
  • Como executar uma consulta de right outer join para recuperar o nível de todos os usuários

🏆 Conquistas

Após concluir este projeto, você será capaz de:

  • Compreender os fundamentos da gestão de banco de dados MySQL
  • Criar e manipular tabelas em um banco de dados
  • Executar consultas SQL complexas, como right outer joins, para recuperar dados
  • Aplicar seus conhecimentos de SQL a cenários do mundo real, como gerenciamento de usuários em um aplicativo de vídeo ou áudio

Acessar o MySQL e Criar o Banco de Dados

Nesta etapa, você aprenderá como acessar o MySQL usando o comando sudo sem nenhuma senha e criar o banco de dados vip.

  1. Inicie o serviço MySQL:
sudo service mysql start
  1. Acesse o MySQL:
sudo mysql
  1. Crie o banco de dados vip:
CREATE SCHEMA vip CHARSET UTF8;
USE vip;

Agora você criou com sucesso o banco de dados vip.

✨ Verificar Solução e Praticar

Criar as Tabelas e Inserir Dados

Nesta etapa, você criará as tabelas level e user e inserirá dados nelas.

  1. Crie a tabela level:
CREATE TABLE level (
name VARCHAR(64) NOT NULL,
low INT NOT NULL,
high INT NOT NULL
);
  1. Insira dados na tabela level:
INSERT INTO level VALUES
('L1', 0, 9),
('L2', 10, 99),
('L3', 100, 499),
('L4', 500, 999);
  1. Crie a tabela user:
CREATE TABLE user (
name VARCHAR(32) NOT NULL,
score INT NOT NULL
);
  1. Insira dados na tabela user:
INSERT INTO user VALUES
('Jane', 5),
('John', 15),
('Mary', 155),
('David', 9999);

Agora você criou com sucesso as tabelas e inseriu dados nelas.

✨ Verificar Solução e Praticar

Executar a Consulta Right Outer Join

Nesta etapa, você executará uma consulta right outer join para recuperar o nível de todos os usuários.

  1. Abra o arquivo getLevel.sql e adicione a seguinte consulta:
SELECT u.name AS `User`, l.name AS `Level`
FROM `level` l
RIGHT JOIN `user` u ON u.score BETWEEN l.low AND l.high;

Esta consulta executa um right outer join entre as tabelas level e user e recupera o nome do usuário e o nome do nível correspondente.

  1. Salve o arquivo getLevel.sql.
✨ Verificar Solução e Praticar

Executar a Consulta

Nesta etapa, você executará o script getLevel.sql no MySQL.

  1. Execute o script:
SOURCE /home/labex/project/getLevel.sql;

Você deverá ver a seguinte saída:

MariaDB [vip]> SOURCE /home/labex/project/getLevel.sql;
+-------+-------+
| User  | Level |
+-------+-------+
| Jane  | L1    |
| John  | L2    |
| Mary  | L3    |
| David | NULL  |
+-------+-------+
4 rows in set (0.000 sec)

A saída mostra o nome do usuário e o nome do nível correspondente para cada usuário. Se a pontuação de um usuário não estiver dentro de nenhuma das faixas de nível, o nível será exibido como NULL.

Parabéns! Você concluiu com sucesso o projeto, criando o banco de dados, as tabelas, inserindo dados e executando uma consulta right outer join para recuperar o nível de todos os usuários.

✨ Verificar Solução e Praticar

Resumo

Parabéns! Você concluiu este projeto. Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.