SQL (Structured Query Language) Flashcards
O que é o SQL? Pra que ele funciona?
• É uma linguagem universal pra “conversar” com o banco de dados.
• É uma linguagem declarativa, o usuário pede uma coisa “X” e o sistema se vira para achar esses dados.
• Esse pedido ou pergunta tem que ser feito de uma forma que o banco de dados entenda, por isso a SQL é utilizada ela é a linguagem que o computador entende.
Ex: - Select * from Curso -
Em quais grandes grupos o SQL é dividido?
• DML = Manipulação
- Interagem diretamente com as LINHAS de uma tabela.
- É usado para inserir (inssert), deletar (delete), selecionar (select), atualizar (update)
• DDL = Definição
- Interage com a TABELA como um todo.
- Parte que cria o “esqueleto do banco de dados” - CREATE (criar), ALTER (alterar), DROP’S (excluir)
• DCL = Controle
- Controla a parte de segurança do banco de dados.
- Parte responsável por dar ou tirar autorização dos usuários. - Grant / Revoke
• DTL = Transacional
- Responsabilidade por gerir a transação, fazendo com que ela se realize e se der erro em alguma parte volte ao estado de origem. COMMIT, ROLLBACK (voltar)
Quem é responsável por fazer a definição dos dados no SQL?
DDL - Linguagem de Definição de Dados
- DDL é um subconjunto dos comandos SQL que podem ser utilizados para definir ou descrever um esquema de um banco de dados, permitindo criar ou modificar a estrutura de objetos de uma base de dados relacional.
COMANDOS DO DDL:
• CREATE - Comando utilizado para criar tabelas (e outros objetos) de um banco de dados.
• DROP - Comando utilizado para deletar uma tabela (e outros objetos) de um banco de dados.
• TRUNCATE - Comando utilizado para apagar os dados de uma tabela de um banco de dados.
•ALTER - Comando utilizado para manipular colunas ou restrições de um banco de dados.
• RENAME - Comando utilizado para renomear uma tabela de um banco de dados.
Quem é responsável por fazer a manipulação do banco de dados em um SQL?
DML - Linguagem de Manipulação de Dados
• Essa linguagem possui um conjunto de comandos que podem ser utilizados para
realizar transações em um banco de dados (inserir, excluir, deletar ou consultar)
COMANDOS DO DML:
• SELECT - Comando utilizado para realizar consultas a dados de uma ou mais tabelas do banco de dados.
• INSERT- Comando utilizado para inserir um registro em uma tabela do banco de dados.
• UPDATE - Comando utilizado para mudar (atualizar) valores de dados de registros de uma tabela do banco de dados.
• DELETE - Comando utilizado para remover registros de uma tabela do banco de dados.
Quais são as principais cláusulas utilizadas na linguagem SQL?
• FROM - Diz onde selecionar, modificar os dados.
• JOIN - Combina linhas e registros de duas ou mais tabelas.
• WHERE - (Onde) - Permite a filtragem dos registros de uma tabela por meio de uma ou mais condições.
• GROUP BY - Essa cláusula buscará registros de uma tabela que possuem um valor em comum para um ou mais atributos e os agrupará baseado em algum critério de agrupamento (soma, média, quantidade, etc).
• HAVING - Trabalha junto com a Cláusula GROUP BY, filtrando os agrupamentos mostrando os itens que satisfaçam a condição.
• ORDER BY - Serve para ordenar os dados apresentados, em crescente (ASC) ou decrescente (DESC).
• LIMIT - Comando utilizado para limitar a quantidade de resultados.
Quais os tipos de combinações possíveis dentro da cláusula JOIN da linguagem SQL?
A Cláusula JOIN, serve para combinar linhas e registros de duas ou mais tabelas, podemos combiná-las de formas diferentes.
• INNER JOIN - Reteoena (seleciona) registros que possuem valores iguais em ambas as tabelas.
• LEFT/RIGTH JOIN - Retorna os registros da tabela da direita/esquerda e seus correspondentes do outro lado.
• FULL OUTER JOIN - Retorna todos os registros.
• SELF JOIN - Retorna registros de si mesmo, uma tabela relacionando seus próprios registros.
•
Qual o comando utilizado para indicar de onde os dados devem ser selecionados?
Cláusula: FROM.
Comando utilizado para indicar de onde os dados devem ser selecionados.
Qual o comando, utilizado para combinar linhas tabelas, com base em uma coluna em comum entre elas?
Cláusula JOIN
• Comando utilizado para combinar linhas tabelas, com base em uma coluna em comum entre elas.
Pode ser:
• INNER JOIN
• LEFT/RIGTH JOIN
• FULL OUTER JOIN
• SELF JOIN
Qua, o comando utilizado para filtrar dados?
• Comando : WHERE = Onde
Comando utilizado para filtrar os dados.
Diz de onde quer que os dados sejam selecionados, filtrados.
• Se for utilizada com os comandos UPDATE ou DELECT vai trazer uma expressão booleana que retornará com valor TRUE or FALSE.
Qual Comando é utilizado para ordenar os dados recuperados?
Comando: ORDER BY
Por meio dela, é possível ordenar registros/linhas de uma tabela em ordem crescente (ASC) ou decrescente (DESC).
O que o comando DISTINCT ordena?
Ele solicita que sejam selecionados os dados de umabtabela onde os registros duplicados serão eliminados.
Normalmente gera um produto carteziano quando pede mais de uma linha (pra isso separa por vigula) linhas coluna
exemplo:
select distinct from JOGO, CLUBE
Tabela jogo tem 3 linhas e a clube tem 6 (3x6=18)
Aí é necessário ver quantas são similares para serem excluídas.
☆ CUIDADO - PODE TER OUTRO COMANDO JUNTO PEDINDO UMA COLUAN ESPECIFICA, AI NESSE CASO NÃO VAI SER CALCULADO TUDO.
O que é esse comando?
- select distinct A
from R1
where A not in
(select B from R1)
Esse comando busca valores da coluna A que não constam na coluna B.
O que é esse comando?
SELECT DISTINCT * FROM A, B
Trata-se de um produto cartesiano, logo teremos (linhas de A) X (linhas de B)
O que o comando …WHERE NOME LIKE ‘A%’ faz?
Retorna valores que comecem com “A”.
O que i comando …WHERE NOME LIKE ‘%A’ faz?
Retorna valores que terminem com “A”.