sql-basico

SQL básico: uma introdução ao SQL com Pokémon

Que tal aprender o básico sobre SQL de uma forma simples e descontraída com Pokémon? É a intenção deste artigo.

O que é a linguagem SQL?

A Structured Query Language, conhecida como SQL, é uma das ferramentas mais conhecidas por programadores, analistas, cientistas de dados e DBAs para a extração e execução de comandos em bancos de dados relacionais e estruturados.

Não só isso, mas segundo a ANSI (American National Standards Institute), SQL é a linguagem padrão para gestão de sistemas de bases de dados relacionais.

Essa linguagem permite, além da visualização de tabelas e a aplicação de diversos filtros nela, através de consultas, a criação de novas tabelas e colunas no mesmo banco de dados.

É relativamente fácil de aprender SQL e pode ser uma ótima porta de entrada para o mundo da programação. Possibilitando, por exemplo, uma comunicação fluída entre profissionais que lidam com dados e os devs de sua empresa.

Sabia que, segundo a Stack Overflow, SQL é a 3° linguagem mais popular para os devs?

Como começar a escrever em SQL?

Para ilustrar, iremos aplicar os comandos básicos do SQL num banco de dados que contém os 151 Pokémons originais, que irei chamar de “PokemonData”!

Sinta-se à vontade em baixar esse banco e utilizar algum leitor de SQL on-line, caso não tenha nenhum software baixado. Recomendo Sqlite!

Iremos abordar comandos básicos aqui, que podem ser entendidos como a “sintaxe” da linguagem.

A importância dos comandos “SELECT” e “FROM” em SQL

Os comandos “SELECT” e “FROM” são básicos de SQL porque executam a seleção de algum dado, select definindo o que você quer extrair, e o from dizendo de onde.

SELECT *
FROM PokemonData

Este comando retorna todos (*) os dados da tabela PokemonData

– Comando “COUNT” (Contagem em SQL)

É o comando que retorna uma contagem atrelada a alguma coluna:

SELECT COUNT (Number)
FROM PokemonData

O output deste comando é 151, confirmando que temos 151 pokémons no banco de dados.

– Comando DISTINCT (Distinção em SQL)

É o comando que retorna valores distintos de uma coluna:

SELECT DISTINCT (NAME)

O output deste comando são os nomes únicos de cada pokémon que, neste caso, são também 151 nomes.

Mas, se tivéssemos uma linha na tabela com os dados do Bulbasaur repetidos, por exemplo, o comando SELECT DISTINCT iria “excluir” uma dessas linhas.

– Comando WHERE

É um comando de SQL básico que serve como um filtro, restringindo os dados que contemplem a condição definida.

SELECT *
FROM PokemonData
WHERE Type1 = ‘fire’

O output desta query retornará todos os dados dos Pokémons que tem como “tipo” principal o elemento fogo.

Isso inclui Pokémons como Charizard, Ninetales e Moltres!

– Condições de comparação em SQL

O comando WHERE pode ser utilizado com diversas comparações, e não somente igual (=), por exemplo, maior que (>) e menor que (<), entre outros!

SELECT *
FROM PokemonData
Where Number > 132

O output desta query irá retornar todos os dados dos Pokémons que tem um “Number” (número utilizado para registrar eles no Pokedex) maior que 132, começando pelo Pokémon 133, o Eevee.

– Condições lógicas no SQL (and, or)

AND e OR são condições que podemos utilizar junto do meu WHERE para definir mais de um “filtro”.

SELECT *
FROM PokemonData
Where Type1 = ‘water’ AND Type2 = ‘fighting’

O output da query irá retornar somente 1 linha de dado, os dados do Poliwrath, único pokémon da nossa base que contém como tipo principal: água; e secundário: luta.

SELECT *
FROM PokemonData
Where Type1 = ‘water’ OR Type2 = ‘fighting’

Se aplicarmos um OR no lugar do AND, a query retorna todos os dados dos Pokémons que tem como tipo principal água OU luta, incluindo pokémons como Squirtle (água) e Machop (luta).

– Comando de ordenação de dados (ORDER BY)

O comando ORDER BY permite organizar, de forma crescente ou decrescente (adicionando um DESC após a coluna que você deseja usar como critério de ordenação) os resultados da sua query.

SELECT *
FROM PokemonData
ORDER BY Name DESC

Esta query retorna os nomes de todos os pokémons, ordenados de maneira decrescente, começando pelo Zubat e acabando pelo Abra.

Para finalizar sobre SQL básico, é muito importante cuidar com a ordem dos seus comandos! Se aplicássemos tudo o que foi citado anteriormente numa query só, poderíamos fazer o seguinte:

SELECT Name
FROM PokemonData
WHERE Type1 = ‘Water’ OR Type1= ‘Fire’
ORDER BY Name DESC

Esta query retorna o nome, ordenado de maneira decrescente, de pokémons que são de tipo água ou fogo.

Conclusão

Neste artigo vimos algumas operações de SQL básico, de maneira divertida.

Com a leitura dele, qualquer pessoa pode começar a aplicar esse conhecimento e tentar estressar ao máximo o banco de dados, tanto em projetos pessoais como na sua vida profissional.

SQL ensina de maneira menos complexa (como Python) lógicas para analisar dados, como agrupamentos e contagens. Além de ter se tornando um pré-requisito para diversas vagas no mercado de trabalho.

No entanto, a quantidade de material on-line e gratuito disponível já consegue capacitar qualquer desenvolvedor iniciante na ferramenta.

Recomendo sites como mode, sqlbolt, w3schools e hackerrank, para treinar sua escrita de queries!

Quer saber mais? SQL, NoSQL, NewSQL: Qual banco de dados usar?

Até a próxima! 😉

Compartilhar
You May Also Like