No mercado de hoje, onde cerca de 2,5 Quintilhões de bytes de dados são gerados todos os dias, é muito importante entender como lidar com uma quantidade enorme de dados. Bem, é aqui que entra em cena a Structured Query Language ou SQL. Portanto, neste artigo sobre o Tutorial de SQL, discutirei os seguintes conceitos importantes, que são essenciais para a jornada de se tornar um .
- Introdução ao SQL
- Principais comandos SQL
- Chaves no banco de dados
- Restrições SQL
- Normalização
- SQL Joins
- Visualizações
Tutorial de SQL: Introdução ao SQL
O que é SQL?
Desenvolvido por Donald D.Chamberlin na década de 1970, Structured Query Language ou mais comumente conhecido como SQL é uma das linguagens mais populares usadas para manipular, armazenar, atualizar e recuperar dados de um banco de dados relacional. SQL consiste em vários comandos segregados em 4 categorias, ou seja, DDL, DML, DCL e TCL para brincar com dados em bancos de dados. Além disso, bancos de dados relacionais como Bancos de dados MySQL , , MS SQL Server, Sybase etc usam SQL para modificar dados.
Aplicações de SQL
As aplicações do SQL são as seguintes:
- Com SQL, você pode criar e eliminar tabelas e bancos de dados.
- Permite aos usuários definir e manipular dados em bancos de dados.
- O SQL permite que os usuários acessem, modifiquem e descrevam dados no RDBMS.
- Com o SQL, você pode definir permissões em tabelas, visualizações e procedimentos e conceder permissões específicas a diferentes usuários.
- O SQL permite que você integre em outras linguagens usando bibliotecas e módulos SQL.
Agora que você conhece o noções básicas de SQL , a seguir neste tutorial de SQL, vamos entender quais são os diferentes tipos de dados SQL.
Tipos de dados SQL
Os tipos de dados SQL são divididos nas seguintes categorias:
- Numérico - O numéricoos tipos de dados permitem inteiros assinados e não assinados. Eles podem ser divididos em tipos de dados exatos e aproximados, onde exatos permitem os inteiros na forma de números inteiros e aproximados permitem inteiros flutuantes.
- Cadeia de caracteres -Este tipo de dados permite caracteres de comprimento fixo e variável. Este tipo de dados também pode ser categorizado em caracteres Unicode, que permitem comprimento fixo e variável de caracteres Unicode.
- Binário -Os tipos de dados binários permitem que os dados sejam armazenados no formato de valores binários, para comprimento fixo e variável.
- Data hora - Tseu tipo de dados permite que os dados sejam armazenados em diferentes formatos de data e hora.
- De outros - Esta seção de tipos de dados tem tipos de dados como tabela, XML, cursor,Uniqueidentifier e sql_variant.
Se você deseja obter uma compreensão detalhada dos diferentes tipos de dados SQL, você pode consultar o guia detalhado sobre Tipos de dados SQL.
Operadores SQL
Operadores são as construções que podem manipular os valores dos operandos. Considere a expressão 4 + 6 = 10, aqui 4 e 6 são operandos e + é chamado de operador.
O SQL oferece suporte aos seguintes tipos de operadores:
- Operadores aritméticos
- Operadores bit a bit
- Operadores de comparação
- Operadores compostos
- Operadores lógicos
Para conhecer os diferentes operadores suportados pelo SQL, de forma elaborada, você pode . Então, agora que você sabe o que é SQL e seus fundamentos, vamos entender os principais comandos ou instruções em SQL.
Tutorial de SQL: Principais comandos SQL
SQL consiste em vários comandos ou instruções para adicionar, modificar, excluir ou atualizar dados no banco de dados. Neste artigo sobre tutorial de SQL, vamos discutir as seguintes instruções:
Neste tutorial de SQL, vou considerar o banco de dados abaixo comoum exemplo, para mostrar como escreverconsultas usando esses comandos SQL.
Identificação do Cliente | Nome do cliente | Número de telefone | Endereço | Cidade | País |
1 | Simon | 9876543210 | Donald Street 52 | Hyderabad | Índia |
2 | Akash | 9955449922 | Queens Road 74 | Mumbai | Índia |
3 | Patrick | 9955888220 | Silk Board 82 | Délhi | Índia |
4 | Sameer | 9647974327 | IG Road 19 | Hyderabad | Índia |
5 | John | 9674325689 | Brigada Road Block 9 | Bangalore | Índia |
CRIO
o Declaração CREATE é usado para criar uma tabela, visão ou banco de dados da seguinte maneira:
CRIAR BASE DE DADOS
Usado para criar um banco de dados.
Sintaxe
CRIAR DATABASE DatabaseName
Exemplo
CRIAR BANCO DE DADOS CustomerInfo
CRIAR A TABELA
Esta declaração é usada para criar uma tabela.
Sintaxe
CREATE TABLE TableName (tipo de dados Coluna1, tipo de dados Coluna2, .... tipo de dados ColunaN)
Exemplo
CREATE TABLE Clientes (CustomerID int, CustomerName varchar (255), PhoneNumber int, Address varchar (255), City varchar (255), Country varchar (255))
CRIAR VISUALIZAÇÃO
Usado para criar uma visualização.
Sintaxe
CREATE VIEW OU REPLACE ViewName AS SELECT Column1, Column2, ..., ColumnN FROM TableName WHERE Condição
Exemplo
CRIAR VISUALIZAR OU SUBSTITUIR HydCustomers COMO SELECIONE CustomerName, PhoneNumber FROM Customers WHERE City = 'Hyderabad'
Nota: Antes de começar a criar uma tabela e inserir valores, você deve usar o banco de dados, usando a instrução USE como [ USE CustomerInfo ]
SOLTA
A instrução DROP é usada para eliminar uma tabela, visão ou banco de dados existente.
DROP DATABASE
Usado para descartar o banco de dados.Ao usar esta instrução, as informações completas presentes no banco de dados serão perdidas.
c ++ classificando uma matriz
Sintaxe
DROP DATABASE DatabaseName
Exemplo
DROP DATABASE CustomerInfo
DROP TABLE
Usado para largar a mesa.Ao usar esta instrução, as informações completas presentes na tabela serão perdidas.
Sintaxe
DROP TABLE TableName
Exemplo
Clientes DROP TABLE
DROP VIEW
Usado para remover a visualização.Quando você usa esta instrução, as informações completas presentes na exibição serão perdidas.
Sintaxe
DROP VIEW ViewName
Exemplo
DROP VIEW HydCustomers
ERA
A instrução ALTER é usada para adicionar, excluir ou modificar restrições ou colunas em uma tabela existente.
ALTERAR A TABELA
o Declaração ALTER é usado para excluir, adicionar e modificar colunas em uma tabela existente. Você pode usar ALTER TABLE com a coluna ADD / DROP para adicionar ou descartar uma coluna na tabela. Além disso, você também pode ALTER / MODIFICAR uma coluna específica.
Sintaxe
ALTER TABLE Nome da tabela ADD Nome da coluna Tipo de dados ALTER TABLE Nome da tabela DROP COLUMN Nome da coluna ALTER TABLE Nome da tabela ALTER COLUMN Nome da coluna Tipo de dados
Exemplo
--ADD Coluna Gênero: ALTER TABLE Clientes ADD Gênero varchar (255) --DROP Coluna Gênero: ALTER TABLE Clientes DROP COLUMN Sexo --Adiciona uma coluna DOB e altera o tipo de dados de Data para Ano. ALTER TABLE DOB ADD DOB data ALTER TABLE DOB ALTER DOB ano
TRUNCAR
A instrução TRUNCATE é usada para excluir as informações presentes na tabela, mas não a própria tabela. Portanto, ao usar este comando, suas informações serão perdidas, mas a tabela ainda não estará presente no banco de dados.
Sintaxe
TRUNCATE TABLE TableName
Exemplo
Clientes da mesa TRUNCATE
EXPLICAR
As instruções EXPLAIN e DESCRIBE são sinônimos usados para obter um plano de execução de consulta e as informações sobre a estrutura de uma tabela, respectivamente. Esta instrução pode ser usada com as instruções INSERT, DELETE, SELECT, UPDATE e REPLACE.
Sintaxe
--Sintaxe para DESCRIBE DESCRIBE TableName - Sintaxe de amostra para EXPLAIN EXPLAIN ANALYZE SELECT * FROM TableName1 JOIN TableName2 ON (TableName1.ColumnName1 = TableName2.ColumnName2)
Exemplo
DESCRIBE Customers EXPLAIN ANALYZE SELECT * FROM Customers1 JOIN Orders ON (Customers.CustomerID = Orders.CustomerID)
INSIRA DENTRO DE
o Instrução INSERT INTO é usado para inserir novos registros em uma tabela.
Sintaxe
INSERT INTO TableName (Coluna1, Coluna2, Coluna3, ..., ColunaN) VALORES (valor1, valor2, valor3, ...) --Se você não deseja mencionar os nomes das colunas, use a sintaxe abaixo, mas a ordem de os valores inseridos devem corresponder aos tipos de dados da coluna: INSERT INTO TableName VALUES (Value1, Value2, Value3, ...)
Exemplo
INSERT INTO Customers (CustomerID, CustomerName, PhoneNumber, Address, City, Country) VALUES ('06', 'Sanjana', '9654323491', 'Oxford Street House No 10', 'Bengaluru', 'India') INSERT INTO Customers VALUES ('07', 'Himani', '9858018368', 'Nice Road 42', 'Kolkata', 'Índia')
ATUALIZAR
A instrução UPDATE é usada para modificar os registros já presentes na tabela.
Sintaxe
UPDATE TableName SET Coluna1 = Valor1, Coluna2 = Valor2, ... WHERE Condição
Exemplo
ATUALIZAR clientes SET CustomerName = 'Aisha', City = 'Kolkata' ONDE EmployeeID = 2
SELECIONE
A instrução SELECT é usada para selecionar dados de um banco de dados e armazená-los em uma tabela de resultados, chamada de conjunto de resultados .
Sintaxe
SELECT Coluna1, Coluna2, ... ColunaN FROM TableName - (*) é usado para selecionar todos da tabela SELECT * FROM table_name - Para selecionar o número de registros a serem retornados use: SELECT TOP 3 * FROM TableName
Exemplo
SELECT CustomerID, CustomerName FROM Customers - (*) é usado para selecionar todos da tabela SELECT * FROM Customers - Para selecionar o número de registros a serem retornados, use: SELECT TOP 3 * FROM Customers
Além disso, você pode usar a palavra-chave SELECT com , ORDENAR POR , , e .
GOSTAR
Este operador é usado com uma cláusula WHERE para pesquisar um padrão especificado em uma coluna de uma tabela. Existem principalmente dois curingas que são usados em conjunto com o Operador LIKE :
- % - Corresponde a 0 ou mais caracteres.
- _ - Corresponde exatamente a um caractere.
Sintaxe
SELECT ColumnName (s) FROM TableName WHERE ColumnName LIKE padrão
Exemplo
SELECT * FROM Customers WHERE CustomerName LIKE 'S%'
CONCEDER
O comando GRANT é usado para fornecer privilégios ou acesso ao banco de dados e seus objetos aos usuários.
Sintaxe
GRANT PrivilegeName ON ObjectName TO UserName [WITH GRANT OPTION]
Onde,
- PrivilegeName - Os privilégios / direitos / acesso concedidos ao usuário.
- ObjectName - Nome de um objeto de banco de dados como TABLE / VIEW / STORED PROC.
- Nome do usuário - Nome do usuário que tem acesso / direitos / privilégios.
- PÚBLICO - Para conceder direitos de acesso a todos os usuários.
- Nome do papel - O nome de um conjunto de privilégios agrupados.
- COM OPÇÃO DE GRANT - Para dar ao usuário acesso para conceder direitos a outros usuários.
Exemplo
- Para conceder permissão SELECT à tabela de clientes para o administrador GRANT SELECT ON Customers TO admin
Agora que você conhece o , vamos entender quais são os diferentes tipos de chaves usadas no banco de dados. Bem, este conceito ajudará você a entender como cada tabela está relacionada à outra tabela em um sistema de gerenciamento de banco de dados relacional.
Tutorial de SQL: Chaves
A seguir estão os 7 tipos de chaves, que podem ser considerados em um banco de dados:
- Chave candidata - Um conjunto de atributos que podem identificar exclusivamente uma tabela pode ser denominado como uma chave candidata. Uma tabela pode ter mais de uma chave candidata e, dentre as chaves candidatas escolhidas, uma chave pode ser escolhida como Chave Primária.
- Super Key - O conjunto de atributos que podem identificar exclusivamente uma tupla é conhecido como Super Key. Portanto, uma chave candidata, uma chave primária e uma chave única são uma superchave, mas vice-versa, não é verdade.
- Chave primária - Um conjunto de atributos usados para identificar exclusivamente cada tupla também é uma chave primária.
- Chave alternativa - Chaves alternativas são as chaves candidatas, que não são escolhidas como chave primária.
- Chave única- A chave exclusiva é semelhante à chave primária, mas permite um valor NULL na coluna.
- Chave Estrangeira - Um atributo que só pode assumir os valores presentes como os valores de algum outro atributo é a chave estrangeira para o atributo ao qual se refere.
- Chave composta- Uma chave composta é uma combinação de duas ou mais colunas que identificam cada tupla de maneira única.
Espero que você tenha entendido os diferentes tipos de chaves no banco de dados, a seguir, neste artigo sobre o tutorial SQL, vamos discutir as restrições no banco de dados. Bem, as restrições SQL são usadas paraaumentar a precisão e confiabilidade dos dados que vão para o banco de dados por meio de uma tabela.
Tutorial de SQL: Restrições
As restrições SQL garantem que não haja violação em termos de uma transação de dados, se encontrada, a ação será encerrada. O principal uso das seguintes restrições é limitaro tipo de dados que pode entrar em uma tabela.
- NÃO NULO -Essa restrição é usada para garantir que uma coluna não possa armazenar um valor NULL.
- ÚNICO - A restrição UNIQUE é usada para garantir que todos os valores inseridos em uma coluna ou tabela sejam únicos.
- VERIFICA - Essa restrição é usada para garantir que uma coluna ou várias colunas satisfaçam uma condição específica.
- PADRÃO - A restrição DEFAULT é usada para definir um valor padrão para uma coluna se nenhum valor for especificado.
- ÍNDICE - Esta restrição é usada paraíndices na tabela, por meio dos quais você pode criar e recuperar dados do banco de dados muito rapidamente.
Se você quiser saber mais sobre as seguintes restrições com sintaxe e exemplos, você pode consultar outros .Então, agora que você fala sobre chaves e restrições no banco de dados, a seguir neste artigo sobre o tutorial SQL, vamos dar uma olhada em um conceito interessante de Normalização.
Tutorial de SQL: Normalização
Normalização é o processo de organização de dados para evitar duplicação e redundância. Existem muitos níveis sucessivos de normalização e são chamados formas normais . Além disso, cada forma normal consecutiva depende da anterior. A seguir estão as formas normais presentes:
Para entender as formas normais acima, vamos considerar a seguinte tabela:
Observando a tabela acima, você pode ver claramente a redundância e duplicação de dados. Então, vamos normalizar esta tabela. Para começar a normalizar os bancos de dados, você deve sempre começar com a forma normal mais baixa, ou seja, 1NF e, em seguida, ir para as formas normais mais altas eventualmente.
Agora, vamos ver como podemos executar a primeira forma normal, para a tabela acima.
Primeira forma normal (1NF)
Para ter certeza de que o banco de dados deve estar 1NF , cada célula da tabela deve ter um único valor. Então, basicamente todos os os registros devem ser únicos . A tabela acima será normalizada em 1NF conforme abaixo:
Se você observar na tabela acima, todos os registros são únicos. Porém, ainda há muita redundância e duplicação de dados. Então, para evitar isso, vamos normalizar o banco de dados na segunda forma normal.
Segunda forma normal (2NF)
Para ter certeza de que o banco de dados deve estar 2NF , a banco de dados deve ser 1NF e também deveria tem uma chave primária de coluna única . A tabela acima será normalizada em 2NF conforme abaixo:
Se você observar as tabelas acima, cada tabela possui uma chave primária de coluna única. Mas há muita redundância de dados e duplicação de algumas colunas. Então, para evitar isso, vamos normalizar o banco de dados na terceira forma normal.
Terceira forma normal (3NF)
Para ter certeza de que o banco de dados deve estar 3NF , a banco de dados deve estar em 2NF e não deve ter nenhuma dependência funcional transitiva . As tabelas acima serão normalizadas em 3NF conforme abaixo:
Se você observar as tabelas acima, o banco de dados não possui nenhuma dependência transitiva. Portanto, após esta etapa, não precisamos mais normalizar nosso banco de dados. Mas, se você vir qualquer anomalia presente ou mais de uma única chave candidata, você pode prosseguir com a próxima forma normal superior, ou seja, BCNF.
Forma normal de Boyce-Codd (BCNF)
Para ter certeza de que o banco de dados deve estar em BCNF, o banco de dados deve estar presente em 3NF e as tabelas devem ser divididas posteriormente, para garantir que apenas uma chave candidata esteja presente.
Com isso, chegamos ao fim da normalização. Agora, a seguir neste tutorial de SQL, vamos discutir um conceito importante em SQL, que é Joins.
Tutorial de SQL: junções
As junções são usadas para combinar linhas de duas ou mais tabelas, com base em uma coluna relacionada entre essas tabelas e também em algumas condições. Existem principalmente quatro tipos de junções:
- JUNÇÃO INTERNA: Esta junção retorna os registros que possuem valores correspondentes em ambas as tabelas.
- FULL JOIN: O FULL JOIN retorna todos os registros que possuem uma correspondência na tabela da esquerda ou da direita.
- ASSOCIAÇÃO À ESQUERDA: Esta junção retorna registros da tabela da esquerda e também aqueles registros que satisfazem a condição da tabela da direita.
- JUNTAR À DIREITA: Esta junção retorna registros da tabela da direita e também aqueles registros que satisfazem a condição da tabela da esquerda.
Portanto, esta foi uma breve descrição sobre JOINS, mas se você quiser uma descrição detalhada sobre JOINS com um exemplo detalhado, pode consultar meu artigo sobre . A seguir, neste tutorial de SQL, vamos discutir o último conceito deste artigo, ou seja, Visualizações.
Tutorial de SQL: visualizações
Uma visão em SQL é uma única tabela, derivada de outras tabelas. Uma visão contém linhas e colunas semelhantes a uma tabela real e possui campos de uma ou mais tabelas. Consulte a imagem abaixo:
Para entender como criar e eliminar uma visualização, você pode consultar as instruções CREATE e DROP mencionadas acima. Com isso, encerramos este artigo sobre tutorial de SQL. Espero que você tenha achado este artigo informativo. Além disso, se você está se preparando para entrevistas com o administrador do banco de dados e está procurando uma lista abrangente de perguntas, você pode consultar nosso artigo sobre
Se você deseja aprender mais sobre MySQL e conheça este banco de dados relacional de código aberto e, em seguida, verifique nosso que vem com treinamento ao vivo conduzido por instrutor e experiência em projetos da vida real. Este treinamento o ajudará a entender o MySQL em profundidade e a obter domínio sobre o assunto.
Tem alguma questão para nós? Mencione isso na seção de comentários deste tutorial SQL e entraremos em contato com você.