Você está na página 1de 3

Barcelos - Cursos

SQL - BÁSICO
18 de abril de 2022 Edição nº 1

A linguagem de Banco de dados

MARCOS BARCELOS

1 – INTRODUÇÃO A chave primária é a identificação global, o CPF do dado, a partir dela você
conseguirá linkar tabelas, já a chave secundária é aquela que irá identificar o
A Tradução de SQL, Standard Query Language, significa linguagem padrão para dado localmente. Parabéns, não entendi nada Marcos, calma eu tenho um plano
realizar queries, então precisa-se definir “que negócio é esse de query meu pai”. e voltarei nesses conceitos com exemplos já já.

Uma query é um pedido de uma informação ou de um dado, pode ser entendido como Da mesma forma temos 2 tipos de tabelas a tabelas fontes e as tabelas de
uma consulta, uma solicitação ou, ainda, uma requisição. No nosso caso é uma informações. A tabela fonte é aquela que informa todas as chaves primarias e
requisição ao banco de dados. secundárias do dado. A tabela de informação é aquela que terá toda a
especificidade do dado. Vamos para o exercício? Irá consolidar mais esse monte
A linguagem SQL tem sido essencial e indispensável para quem quer seguir carreira de texto. (pergunta retórica, pois você deveria responder sim, hahahah)
em áreas relacionadas a banco de dados. Os programas mais conhecidos que utilizam
para programar em SQL são: MySQL, SQLserver. Então ao saber a linguagem SQL, Para criar um banco de dados podemos usar a função CREATE DATABASE, mas
também pode ser criado pela interface do software que você está usando.
saberá mexer em todas essas ferramentas. Para isso, desenvolverei apostilas em níveis
diferentes. Essa apostila é para aprender o básico, caso se sinta mais confortável
aprender por um material escrito.

OK! Chega de introdução e vamos aprender esse negócio rápido que eu tenho vídeo
do TikTok para fazer.

2 – CRIANDO BANCO DE DADOS E TABELAS


Em azul é o ícone para rodar a programação*. Em Vermelho, quem é essa
Normalmente, não há necessidade de criarmos um banco de dados do zero. Nesse menina de vermelho eu vim pro baile só pra ver.., você pode criar um banco de
capítulo iremos ver como fazer isso, caso queira começar a ver como as consultas são dados clicando nesse ícone. Após criar lembre de clicar onde está a seta amarela
feitas pode passar para o próximo capítulo. para aparecer o schema, database, ou o seu banco de dados.

2.1 – CRIANDO BANCO DE DADOS E TABELAS


OBS: O raio com o 1 roda apenas a linha que
O Programa utilizado nesse curso será o MySQL, mas lembre-se que a linguagem é a você está. Que lindo não?
mesma, apenas o canal é diferente. Primeiro precisamos definir os conceitos de chave
primária e secundária.
2.4– EXERCICIOS

Para criar uma tabela podemos usar a função CREATE TABLE, mas também pode ser Inserir os seguintes dados na planilha Organização:
criado pela interface do software que você está usando.
1 - (Udemy,5578998564521, 12.222.325/0001-22,45520,26/04/2022, (Rua das
flores, taberna, 225)); 2 - (Youtube,5578998564521, 12.245.325/0001-
22,46000,27/04/2022, (Rua das dores, taberva, 455)); 3 -
(FACEBOOK,557899878521, 12.245.325/0001-22,(44789,89),24/04/2022,
Avenida Brasil, Clero, 25);

4 - (Microsoft,5578998564521, 12.282.325/0001-22,45520,26/04/2022, Rua das


Novidades, Fauna, 5); 5 -(Udemy,5578998564521, 12.222.325/0001-
22,45520,26/04/2022, Rua das flores, taberna, 225); 6 - (TikTok,+55(27)99877-
Cada item é de um tipo, segue tabela referente aos tipos e o que eles permitem guardar: 4411, 18222325000122,50000,30/04/2022, Rua do Joga de ladin, Desenrola, 60);

7 -(Metaverso, 279856652333, ,35500,23/04/2022, Rua Online, Colheita Feliz, 10);


Campos
Inserir os seguintes dados na planilha Pessoas:
Nome Descrição
TINYINT Um número muito pequeno ocupa 1 byte 1 - (José,5578998564521, 111.111.111-11 ,H); 2 - (João,5578962364521, 122.111.111-11,H); 3
SMALLINT Um número pequeno ocupa 2 bytes - (Joana,5559998454521, 122222.111-11, M);
MEDIUMINT Um número que ocupa 3 bytes
4 - (Lana,5576668564521,22222222222, M); 5 - (Leticia,5577777764521,
INT Campo comum de número, ocupa 4 bytes 33333333333, M); 6 - (Vinicius,557858544521, 11555444785, H); 7 -
BIGINT Um inteiro grande, ocupa 8 bytes (Marcos,5578112454521, 78456214598, H);
Um número decimal pode definir quantas casas depois da
DECIMAL 8 - (Leila,557668964521, 44566522315, M); 9 - (Louise,557122564521,
vírgula
65234789654, M); 10 - (Wagner,5578332164521, 19987755412, H);
DATE Data no formato ‘AAAA-MM-DD’
Inserir os seguintes dados na planilha Fonte:
DATETIME Combinação de data e hora no formato ‘AAAA-MM-DD HH:MM:SS’.
1 - (1,1); 2 - (2,2); 3 - (3,3); 4 - (4,4); 5 - (1,5); 6 - (6,6); 7 - (6,7); 8 - (4,8); 9 - (2,9); 10
TIME Hora no formato ‘HH:MM:SS’ - (3,10);
YEAR Ano com 2 ou 4 dígitos
VARCHAR String com tamanho entre 1 e 255 caracteres. Resolução no vídeo.
TEXT String com até 65535 bytes ou 64KB.
3 – O COMANDO SELECT

O ID nesse caso será uma chave primaria nessa tabela, mas essa tabela é uma tabela O comando mais importante para quem quer seguir carreira em áreas
informação. Quando construirmos uma tabela fonte esse ID estará presente na tabela relacionadas a banco de dados. O SELECT é utilizado para fazer diversas
fonte e será uma chave secundária. O comando auto_increment faz com que não conferências, abaixo mostrarei como é a forma e o significado, vamos lá!
precisamos incrementar o ID, isso será feito automaticamente.
SELECT (Colunas) FROM (banco de dados.tabela);
2.2 – EXERCICIOS
A partir disso poderemos conferir colunas e visualizar itens desejados.
Criar um banco de dados para o Barcelos Cursos, com as Tabelas de informação
Empresas, que contrataram o curso, e Pessoas, funcionários que farão o curso, e uma OBS: Ao colocar * em SELECT * FROM (banco de dados.tabela); o comando
tabela fonte. Segue descrição das colunas de cada tabela. irá puxar todas as colunas.

3.1 – EXERCICIOS
Tabela Pessoa
Vamos visualizar algumas coisas:
ID Chave primaria
Nome Nome da pessoa a) Mostrar todas as colunas da tabela Pessoas.
Telefone Telefone* b) Mostrar Nome e CNPJ das empresas.
CPF CPF*
3.2 – DISTINCT, LIMIT E ORDER BY
Sexo Sexo
Tabela Empresa São comandos para aprimorar a busca. O DISTINCT pega apenas os valores
diferentes, o LIMIT mostra os dados até determinada linha e o ORDER BY
ID Chave primaria ordena pela coluna escolhida

Nome Nome da Empresa SELECT DISTINCT (coluna) FROM (Banco de dados.tabela);

Telefone Telefone* SELECT * FROM (Banco de dados.tabela) LIMIT 2;


CNPJ CNPJ* SELECT (coluna1, Coluna2) FROM (Banco de dados.tabela) ORDER BY
Valor Pago R$ (Coluna2);
Data de entrada na
Data
empresa 3.3 – EXERCICIOS
Endereço Endereço completo
Vamos visualizar algumas coisas:
Tabela FONTE
ID Chave primaria a) Selecionar Apenas a coluna Valor Pago da tabela Empresa
ID - Empresa Chave secundária b) Selecionar apenas os valores diferentes da coluna Valor Pago da
ID - Pessoa Chave secundária tabela Empresa e ordenar.
c) Selecionar Apenas as 5 primeiras pessoas.

*Não recomenda colocar o tipo inteiro para telefone, CPF, pois os dados poderão vir
com (), -, +, /. O que poderá gerar perda de informações.
3.4 – WHERE E FUNÇÕES LÓGICAS
2.3 – INSERINDO DADOS
Com o WHERE conseguimos fazer buscas mais interessantes como mostrar
apenas os valores maiores que 1800, iguais a x, posterior a tal data. Podemos
Se prepara que eu vou inserir. Depois dessa piadinha de tio, irei ensinar como fazer a
usar em conjunto com funções lógicas AND(E), OR(Ou).
inserção de dados. Caso tenha feito a criação do banco de dados pela interface você
poderia já adicionar os dados.
SELECT (coluna1, Coluna2) FROM (Banco de dados.tabela) WHERE coluna2 =
“Miller” AND coluna1=3 ;
Para inserir você pode importar um arquivo csv / json ou usar a função INSERT INTO
(tabela) VALUES (dados nas ordens das colunas);
Para o exemplo que estamos construindo como ficaria? Vamos fazer!
3.5 – EXERCICIOS 4.2 – EXERCÍCIOS

Vamos visualizar algumas coisas: Vamos visualizar algumas coisas:

h) Selecionar todos os dados de pessoas que colocaram sexo Masculino. a) Contar quantas empresas pagaram mais de 46000.
i) Selecionar todos os dados de pessoas que colocaram sexo Masculino e de ID b) Contar quantas pessoas de cada sexo tem.
maior que 4. c) O faturamento total
d) Qual é o valor médio recebido
e) Qual é o valor mínimo recebido
f) Qual é o valor máximo recebido
4 – AGRUPAMENTOS E AGREGAÇÕES g) Tabela com a soma do valor pago, média, mínimo e máximo.

Com agrupamentos conseguimos fazer melhores insights (hmm bilingue ele), como
soma, média deixando as nossas buscas mais completas. E até aqui que vamos nesse
curso básico. Agora você consegue fazer filtros, fazer procura de dados e nunca se 5 – O QUE VIU NO CURSO
esqueça de que essas informações estão disponíveis para nós, eu apenas juntei .
Então, se não souber algo procure rapidamente que você encontrará a solução. Com esse curso você conseguirá fazer pesquisar e incluir itens e ter o primeiro
VAMOS LÁ SQLres. Tomei muito café... contato com o software. Ele é bem intuitivo e a partir disso conseguirá seguir
em busca de mais conhecimento.
Códigos
Nome Descrição Formato
Conta quantos itens especificados tem na
COUNT SELECT COUNT(coluna1) FROM x;
coluna.
Soma os valores dos itens especificados
SUM SELECT SUM(coluna1) FROM x;
da coluna.
Faz a média dos valores dos itens
AVG SELECT AVG(coluna1) FROM x;
especificados da coluna.
MIN Acha o valor mínimo da coluna. SELECT MIN(coluna1) FROM x;
MAX Acha o valor máximo da coluna. SELECT MAX(coluna1) FROM x;
GROUP SELECT (Coluna1,Coluna2) FROM x
Agrupa por alguma característica comum.
BY GROUP BY Coluna1;

VAMOS AOS EXEMPLOS:

Aqui estamos dizendo “Conte quantos números de telefone existem no banco de


dados lyraloja na tabela pessoas e nomeie essa coluna como Qtd Telefone”. Como
selecionaríamos apenas os telefones diferentes?

OBS: Ao selecionar duas colunas teremos que dizer pelo que iremos agrupar. Se por
acaso queremos ver qual telefone está repetido usando o COUNT. Sem o GROUP BY
ficaria:

Foi agrupado pelo COUNT e nos gerou uma informação errada, pois o telefone
27996324565 não aparece 4 vezes. Apenas pegou o primeiro dado de telefone e
colocou a quantidade de telefone na outra coluna. Por isso precisamos dizer pelo que
ele precisa agrupar.

Agora sim temos o valor correto. Vamos Brincar mais com essas funções:

Você também pode gostar