Banco de dados Data Analytics SQL

Manipular Dados com SQL

manipular_dados_com_sql

Fala galera do mundo dos dados agora é hora de manipular dados com SQL. A missão é trabalhar com o CRUD (create, read, update e delete). Aqui você vai aprender comandos SQL para inserir dados nas tabelas. Comandos para leitura de dados, e também como alterar os dados no banco, seja para atualização ou deleção de registros.  

Para manipular dados com SQL, precisamos da estrutura básica de bases de dados e tabelas prontas para esta etapa. Com toda a estrutura pronta, conseguimos realizar as operações de manipulação de dados com SQL, por isso vamos criar uma tabela em um banco de dados já existente. Partiu prática com dados ao cubo!

CRUD com SQL

Para iniciar o nosso CRUD com SQL, iremos criar uma tabela de alunos conforme o código SQL a seguir e esta tabela irá precisar de uma sequência para preenchimento do código aluno de forma dinâmica caso não seja informado.

Primeiramente, vamos ao código SQL que cria uma sequência no banco, vamos usar o comando CREATE SEQUENCE, informar o nome (seq_cod_aluno) da sequência desejada e um valor de start para esta sequência. 

CREATE SEQUENCE seq_cod_aluno START 1001

Agora um CREATE TABLE, Para criar a tabela de alunos com algumas informações básicas para a manipulação dos dados. Confere o código SQL abaixo. 

CREATE TABLE alunos (
  cod_aluno INTEGER DEFAULT NEXTVAL('seq_cod_aluno'),
  nm_aluno_pri VARCHAR,
  nm_aluno_ult VARCHAR,
  id_aluno INTEGER,
  dt_aluno DATE
  )

Com a estrutura mínima criada, podemos partir para a função de inserir dados com SQL. 

INSERT: Inserir Dados com SQL

Para começar, imagine sua tabela de dados como uma folha em branco pronta para ser preenchida. Vamos aprender como adicionar novos registros. O comando SQL para inserir dados é o INSERT INTO e então informamos os valores desejados, veremos algumas opções para inserir dados com SQL no banco de dados. 

Insert de um registro

Para inserir apenas um registro por vez utilizamos o código SQL a seguir. 

INSERT INTO alunos VALUES (1001, 'Tiago', 'Dias', 33, '2022-01-01')

No código acima informamos os valores para todas as colunas, mas podemos ter algumas informações vazias,informando valores de apenas algumas colunas. 

Insert de registro especificando colunas

É possível especificar para quais colunas estamos informando os valores a serem inseridos, conforme o código SQL abaixo. 

INSERT INTO alunos (cod_aluno, nm_aluno_pri, nm_aluno_ult)
	   VALUES (1002, 'Joãozinho', 'da Silva')

Também podemos inserir mais de um registro de uma única vez. 

Insert de vários registros

Para inserir vários registros com um único comando SQL, informamos os valores separados por vírgula e assim conseguimos passar todos os registros a ser inserido de uma única vez. 

INSERT INTO alunos VALUES
	(1003, 'Maria', 'da Paz', 25, '2022-02-06'),
	(1004, 'Joana', 'Santos', 34, '2022-05-06'),
	(1005, 'Paulo', 'silva', 18, '2022-07-07'),
    (1006, 'Mariana', 'Oliveira', 25, '2022-02-16')

Em algum momento pode ser necessário criar um backup de uma tabela ou criar uma tabela derivada de outra. 

Insert de registros a partir e outra consulta

Dessa forma, conseguimos inserir registros em uma nova tabela a partir de uma outra já existente, confere o código SQL a seguir. 

CREATE TABLE alunos_new AS SELECT * FROM alunos

Agora que já temos os dados nas tabelas, podemos aprender a alterar os mesmos utilizando o famoso update. 

UPDATE: Alterar Dados com SQL

E se precisarmos fazer uma correção ou atualização? O SQL nos permite fazer isso com facilidade. Através do comando SQL UPDATE podemos fazer alterações nos registros já existentes no banco, confere aqui algumas formas de fazer atualizações nos dados. 

Update sem where

Alerta de perigo!!! Update sem a cláusula where pode ser perigoso, caso você não precise atualizar todos os registros de uma tabela. Por isso até o próprio DBeaver apresenta uma mensagem de confirmação para execução da query. 

UPDATE alunos_new SET id_aluno = 25

Confere a mensagem de confirmação apresentada pelo DBeaver. 

Então, vamos ver update com where. 

Update com where

Aqui, além de informar a tabela que vamos atualizar e o campo desejado, informamos uma condição para atualizar apenas o registro dessa condição. Confere código SQL a seguir. 

UPDATE alunos SET id_aluno = 25 WHERE id_aluno IS NULL

Podemos também, atualizar mais de uma coluna com apenas um comando SQL. 

Update várias colunas

Para atualizar mais de uma coluna com o único update, utilizamos o código SQL abaixo. 

UPDATE alunos SET id_aluno = 35 , dt_aluno = '2022-09-01'
	WHERE cod_aluno = 1006

Caso atualizar o registro não seja suficiente podemos também apagar ele. 

DELETE: Deletar Dados com SQL

Às vezes, precisamos nos livrar de informações que não são mais úteis. Com SQL, é simples dizer adeus. Com o comando SQL DELETE podemos apagar registros já existentes no banco, confere aqui algumas formas de fazer os dados sumirem. 

Delete sem where

Alerta de perigo dinovo!!! Deletar sem a cláusula where pode ser perigoso, caso você não precise apagar todos os registros de uma tabela. Até o próprio DBeaver apresenta uma mensagem de perigo para confirmar a execução da query. 

DELETE FROM alunos_new

Confere a mensagem de perigo apresentada pelo DBeaver para confirmação. 

Então, vamos ver o delete com where. 

Delete com where

Aqui, além de informar a tabela para deletar o registro, informamos uma condição para deletar apenas o registro dessa condição. Confere código SQL a seguir. 

DELETE FROM alunos WHERE dt_aluno IS NULL

Depois de inserir, atualizar e deletar os dados, iremos aprender como consultar, o famoso select do SQL.

SELECT: Consultar Dados com SQL

Agora, vamos explorar o lado mais legal. Como buscar informações específicas em nossos dados. Com o comando SELECT podemos visualizar os dados já existentes no banco, confere aqui algumas formas de fazer essa seleção dos dados.

Select todas as colunas

Aqui temos o famoso SELECT * FROM, onde o asterisco quer dizer todas as colunas. 

SELECT * FROM alunos

Confere o resultado da tabela alunos e todas as suas colunas. 

Mas, nem sempre iremos querer ver todas as colunas, sendo assim, podemos selecionar apenas algumas delas.

Select algumas as colunas

Aqui, substituímos o * pelos nomes das colunas que queremos exibir na consulta. 

SELECT
	cod_aluno,
	nm_aluno_pri,
	id_aluno
FROM alunos

E então temos o resultado da imagem abaixo. 

Para tabelas muito grandes ou que desconhecemos o seu tamanho podemos especificar a quantidade de linhas a ser exibida. 

Select com limite de linhas

Com o comando LIMIT, podemos especificar quantas linhas serão exibidas na consulta. 

SELECT * FROM alunos LIMIT 2

E então temos o resultado da imagem abaixo. 

Se podemos colocar condições no update e no delete, também podemos colocar no select. 

Select com where

O comando WHERE, vai fazer com que a seleção de dados seja filtrada de acordo com a condição especificada nele. 

SELECT *
FROM alunos
WHERE id_aluno IN (33, 35, 44)

E então temos o resultado da imagem abaixo. 

E assim, depois de conhecer todas as funções do CRUD (create, read, update e delete), concluímos a manipulação de dados com SQL. 

Manipular Dados com SQL ao Cubo

E então chegamos ao fim! Aprendemos a manipular dados com SQL, com este passo a passo bem detalhado. Assim podemos avançar na série SQL na prática! Na sequência você vai aprender a agrupar tabelas com SQL. Um abraço e até a próxima, não esquece de compartilhar o conteúdo para aquele amigo que quer aprender a linguagem SQL na prática.

Conteúdos ao Cubo

Então, se você curtiu o conteúdo, aqui no Dados ao Cubo tem muito mais. Então, deixo algumas sugestões de conteúdos que você pode encontrar. Sempre falando sobre o mundo dos dados!

Para finalizar, se torne também Parceiro de Publicação Dados ao Cubo. Escreva o próximo artigo e compartilhe conhecimento para toda a comunidade de dados.

Gostou? Compartilhe!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *