Folha de referências do SQL (atualização de 2021)

Nesta folha de dicas do SQL Query, você aprenderá

Criar banco de dados e comandos de tabela

Comando Descrição
CREATE DATABASE DATABASE; Criar banco de dados
CREATE DATABASE NOT EXISTS database1; IF NOT EXISTS permite que você instrua o servidor MySQL a verificar a existência de um banco de dados com um nome semelhante antes de criar o banco de dados.
CRIAR BANCO DE DADOS SE NÃO EXISTIR database1 CHARACTER SET latin1 COLLATE latin1_swedish_ci o conjunto de caracteres Latin1 usa o agrupamento latin1_swedish_ci que é a ordem sueca insensível a maiúsculas e minúsculas.
MOSTRAR BASES DE DADOS Você pode ver a lista de bancos de dados existentes executando o seguinte comando SQL.
CREATE TABLE [IF NOT EXISTS] TableName (fieldname dataType [parâmetros opcionais]) ENGINE = storage Engine; Criar sintaxe de tabela

TIPOS DE DADOS

Tipos de dados numéricos

Comando Descrição
TINYINT () -128 a 127 normal 0 a 255 NÃO ASSINADO.
SMALLINT () -32768 a 32767 normal 0 a 65535 NÃO ASSINADO.
MEDIUMINT () -8388608 a 8388607 normal 0 a 16777215 NÃO ASSINADO.
INT () -2147483648 a 2147483647 normal 0 a 4294967295 NÃO ASSINADO.
BIGINT () -9223372036854775808 a 9223372036854775807 normal 0 a 18446744073709551615 NÃO ASSINADO.
FLUTUADOR Um pequeno número aproximado com um ponto decimal flutuante.
EM DOBRO( , ) Um grande número com um ponto decimal flutuante.
DECIMAL( , ) UM DOUBLE armazenado como uma string, permitindo um ponto decimal fixo. Opção para armazenar valores monetários.

Tipos de dados de texto

Comando Descrição
CARACTERES( ) Uma seção fixa de 0 a 255 caracteres.
VARCHAR () Uma seção variável de 0 a 255 caracteres.
TINYTEXT Uma string com comprimento máximo de 255 caracteres.
TEXTO Uma string com comprimento máximo de 65535 caracteres.
BLOB Uma string com comprimento máximo de 65535 caracteres.
MEDIUMTEXT Uma string com comprimento máximo de 16777215 caracteres.
MEDIUMBLOB Uma string com comprimento máximo de 16777215 caracteres.
LONGTEXT Uma string com comprimento máximo de 4294967295 caracteres.
LONGBLOB Uma string com comprimento máximo de 4294967295 caracteres.

Tipos de dados de data / hora

Comando Descrição
ENCONTRO AAAA-MM-DD
DATA HORA AAAA-MM-DD HH: MM: SS
TIMESTAMP AAAAMMDDHHMMSS
TEMPO HH: MM: SS

Outros tipos de dados

Comando Descrição
ENUM Para armazenar o valor do texto escolhido em uma lista de valores de texto predefinidos.
DEFINIR Isso também é usado para armazenar valores de texto escolhidos em uma lista de valores de texto predefinidos. Ele pode ter vários valores.
BOOL Sinônimo de TINYINT (1), usado para armazenar valores booleanos
BINÁRIO Semelhante ao CHAR, a diferença é que os textos são armazenados em formato binário.
VARBINÁRIO Semelhante ao VARCHAR, a diferença é que os textos são armazenados em formato binário.

Comando da instrução MySQL SELECT

Comando Descrição
SELECIONE [DISTINTO | TODOS] {* | [fieldExpression [AS newName]} FROM tableName [alias] [WHERE condição] [GROUP BY fieldName (s)] [HAVING condition] ORDER BY fieldName (s) Sintaxe da instrução SQL SELECT
SELECT * FROM table1; selecione a mesa
SELECIONE t1, t2, t3, t4 DA tabela1; estamos interessados ​​apenas em obter apenas os campos t1, t2, t3 e t4.
SELECT Concat (t1, (, t3,)), t4 DA tabela2; Obtendo a lista da tabela 2
SELECT nome_da_coluna | valor | expressão [AS] nome_alias; Sintaxe de nomes de campo de alias

Cláusula WHERE do MySQL com comandos AND, OR, IN, NOT IN

Comando Descrição
SELECT * FROM tableName WHERE condição; Sintaxe da cláusula WHERE
SELECT * FROM table1 WHERE t1 = 2 AND t2 = 2008; Cláusula WHERE combinada com - E Operador LÓGICO
SELECT * FROM table1 WHERE t1 = 1 OU t1 = 2; Cláusula WHERE combinada com - OR Operador LÓGICO
SELECT * FROM table2 WHERE t1 IN (1,2,3); Cláusula WHERE combinada com - palavra-chave IN
SELECT * FROM table2 WHERE t1 NOT IN (1,2,3); Cláusula WHERE combinada com - palavra-chave NOT IN
SELECT * FROM table2 WHERE t3 = Female; Cláusula WHERE combinada com Equal (=) para COMPARISON OPERATORS
SELECT * FROM table3 WHERE t3> 2000; Cláusula WHERE combinada com maior que (>) para COMPARISON OPERATORS
SELECT * FROM table1 WHERE t1 <> 1; Cláusula WHERE combinada com Diferente de (<>) OPERADORES DE COMPARAÇÃO

Tabela INSERT INTO do comando MySQL

Comando Descrição
INSERT INTO nome_tabela (coluna_1, coluna_2,…) VALORES (valor_1, valor_2,…); sintaxe básica do comando SQL INSERT
INSERIR NA tabela1 (t1, t2, t3, t4) VALORES (X1, X2, X3, X4); INSERIR dados na tabela
INSERT INTO table_1 SELECT * FROM table_2; Inserindo em uma mesa de outra mesa

Comando MySQL DELETE

Comando Descrição
DELETE FROM nome_tabela [condição WHERE]; Exclua uma linha no MySQL

Exemplo: - DELETE FROM table1 WHERE table1_id = 18;

(excluir a entrada de 18 números de id da tabela1.) DELETE FROM tabela1 WHERE tabela1_id IN (20,21); (excluir a entrada da tabela 1 do formulário de identificação de número 20 e 21)

Comando de atualização do MySQL

Comando Descrição
UPDATE nome_tabela SET nome_da_coluna = novo_valor [condição WHERE]; atualizar a sintaxe do comando

Exemplo: - SELECT * FROM table1 WHERE t1 = 1;

(recuperar o registro para t1 = 1) ATUALIZAR tabela1 SET t4 = X1 WHERE t1 = 1; (atualize o valor t4 na tabela)

ORDER BY no MySQL: comando DESC e ASC

Comando Descrição
Instrução SELECT… [condição WHERE | GROUP BY field_name (s) TENDO condição] ORDER BY field_name (s) [ASC | DESC]; Sintaxe básica de ordem por cláusula
SELECIONE {nome (s) do (s) campo (s) | *} FROM tableName (s) [WHERE condição] ORDER BY fieldname (s) ASC / DESC [LIMIT N] Sintaxe DESC e ASC

Exemplo: - Para DESC (decrescente)

SELECT * FROM table1 ORDER BY t3 DESC; Para ASC (crescente) SELECT * FROM table1 ORDER BY t3 ASC;

MySQL GROUP BY e comando da cláusula HAVING

Grupo por

Comando Descrição
SELECT instruções… GROUP BY nome_coluna1 [, nome_coluna2,…] [HAVING condição]; Sintaxe de GROUP BY

Exemplo de agrupamento de uma única coluna: - SELECT t4 FROM table1;

SELECT t4 FROM table1 GROUP BY t4; (suponha que queremos obter os valores únicos para t4.)

Exemplo para agrupar várias colunas: - SELECT t1_id, t4 FROM table2;

SELECT t1_id, t4 FROM table2 GROUP BY t1_id, t4; (usando grupo por método)

Funções de agrupamento e agregação

Comando Descrição
SELECT t2, COUNT (t1) FROM table1 GROUP BY t2; Suponha que queremos o número total de valores de coluna t2 em nosso banco de dados.

Cláusula HAVING

Comando Descrição
SELECT * FROM table2 GROUP BY t1_id, t4 HAVING t1_id = x1; todo o t4 para a tabela2 t1 id x1. Usaríamos o seguinte script para alcançar nossos resultados.

Comandos curingas do MySQL para Like, NOT Like, Escape, (%), (_)

% a porcentagem do comando de curingas no MySQL

Comando Descrição
Instruções SELECT… WHERE nomedocampo LIKE xxx%; sintaxe básica para% porcentagem de curinga

Exemplo: - usaríamos o caractere curinga de porcentagem para realizar uma correspondência de padrão em ambos os lados da palavra "X1" como parte t2 da tabela1 SELECT * FROM tabela1 WHERE t2 LIKE% X1%;

SELECT * FROM table1 WHERE t2 LIKE% X1; (somente o caractere curinga de porcentagem no início dos critérios de pesquisa) SELECT * FROM table1 WHERE t2 LIKE X1%; (o caractere curinga de porcentagem até o final do padrão especificado a ser correspondido.)

_ sublinhado comando curinga

Comando Descrição
SELECT * FROM table1 WHERE t3 LIKE x2_; todos os table1 que foram t3 no ano "x2"

NÃO gosta do comando curinga

Comando Descrição
SELECT * FROM table1 WHERE t3 NOT LIKE X2_; Suponha que queremos obter a tabela1 que não era t3 no ano X2_

Comando de escape de palavra-chave curinga

Comando Descrição
LIKE 67 # %% ESCAPE #; queremos verificar a string "67%"

Expressões regulares MYSQL (REGEXP)

Comando Descrição
Instruções SELECT… WHERE nomedocampo padrão REGEXP; sintaxe básica da expressão regular

Exemplo: - todas as table1 t1 que contêm a palavra X1. Não importa se o "X1" está no início, meio ou final do título. SELECT * FROM table1 WHERE t1 REGEXP X1;

Metacaracteres de expressão regular

Comando Descrição
* O metacaractere asterisco (*) é usado para corresponder a zero (0) ou mais instâncias das strings que o precedem
+ O metacaractere mais (+) é usado para corresponder a uma ou mais instâncias de strings que o precedem.
? O metacaractere question (?) É usado para corresponder a zero (0) ou uma instância das strings que o precedem.
. O metacaractere ponto (.) É usado para corresponder a qualquer caractere único, exceto para uma nova linha.
[abc] A charlist [abc] é usada para corresponder a qualquer um dos caracteres incluídos.
[^abc] A charlist [abc] é usada para corresponder a quaisquer caracteres, exceto os incluídos.
[A-Z] O [AZ] é usado para corresponder a qualquer letra maiúscula
[a-z] O [az] é usado para corresponder a qualquer letra minúscula
[0-9] O [0-9] é usado para corresponder a qualquer dígito de 0 a 9.
^ O circunflexo (^) é usado para iniciar a correspondência no início.
| A barra vertical (|) é usada para isolar alternativas.
[[:<:]] O [[: <:]] corresponde ao início das palavras.
[[:>:]] O [[:>:]] corresponde ao final das palavras.
[:class:] O [: class:] corresponde a uma classe de caractere, ou seja, [: alpha:] para corresponder às letras, [: space:] para corresponder ao espaço em branco, [: punct:] corresponde a pontuações e [: upper:] para letras de classe superior.

Comandos de funções SQL

Funções de string

Comando Descrição
SELECIONE t1_id, t2, UCASE (t2) DA tabela1; a função "UCASE" para fazer isso. Ele recebe uma string como parâmetro e converte todas as letras em maiúsculas.

Funções numéricas

Comando Descrição Exemplo
DIV Divisão inteira SELECIONE 23 DIV 6;
/ Divisão SELECIONE 23/6;
- Subtração SELECIONE 23 - 6;
+ Adição SELECIONE 23 + 6;
* Multiplicação SELECT 23 * 6 AS multiplication_result;
% or MOD Módulo SELECT 23% 6; ou SELECIONE 23 MOD 6;
Floor esta função remove casas decimais de um número e o arredonda para o menor número mais próximo. SELECIONE PISO (23/6) AS floor_result;
Round esta função arredonda um número com casas decimais para o número inteiro mais próximo. SELECIONE A RODADA (23/6) AS round_result;

Funções armazenadas

Comando Descrição
CREATE FUNCTION sf_name ([parameter (s)]) RETURNS data type DETERMINISTIC STATEMENTS sintaxe básica para criar uma função armazenada
CRIAR FUNÇÃO sf_name ([parâmetro (s)]) Obrigatório e diz ao servidor MySQL para criar uma função chamada `sf_name 'com parâmetros opcionais definidos entre parênteses.
Tipo de dados RETURNS Obrigatório e especifica o tipo de dados que a função deve retornar.
DETERMINISTICO A função retornará os mesmos valores se os mesmos argumentos forem fornecidos a ela.
DECLARAÇÕES O código procedural que a função executa.

Comandos de função do MySQL Aggregate

Comando Descrição
SELECT COUNT (t1_id) FROM table1 WHERE t1_id = 2; Função COUNT
SELECIONE MIN (t3) DA tabela2; Função MIN
SELECT MAX (t3) DA tabela2; Função MAX
SELECT SUM (t4) FROM table3; Função SUM
SELECIONE AVG (t4) DA tabela3; Função AVG

Comandos MySQL IS NULL e IS NOT NULL

Comando Descrição
SELECT COUNT (t3) FROM table1; (se t3 tem um valor nulo presente que não conta) Nulo como um valor
CREATE TABLE table2 (t1_number int NOT NULL, t2_names varchar (255), t3 varchar (6)); Valores NOT NULL
comlumn_name IS NULL comlumn_name NÃO NULL Sintaxe básica de palavras-chave NULL
SELECT * FROM table1 WHERE t2_number IS NULL; Exemplo de IS NULL
SELECT * FROM table1 WHERE t2_number IS NOT NULL; Exemplo de IS NOT NULL

Comandos MySQL AUTO_INCREMENT

Comando Descrição
CREATE TABLE table1 (t1_id int (11) AUTO_INCREMENT, t2_name varchar (150) DEFAULT NULL, t3 varchar (500) DEFAULT NULL, PRIMARY KEY (t1_id)); Sintaxe de incremento automático

MYSQL - ALTER, DROP, RENAME, MODIFY

Comando Descrição
ALTER TABLE nome_da_tabela ADD COLUMN nome_da_coluna tipo_de_dados; Alter- sintaxe
DROP TABLE sample_table; Sintaxe DROP TABLE
RENAME TABLE current_table_name TO new_table_name; Sintaxe RENAME COMMAND
ALTER TABLE table1 CHANGE COLUMN t1_names t1name char (250) NOT NULL; ALTERAR PALAVRA-CHAVE
ALTER TABLE table1MODIFY t1name char (50) NOT NULL; MODIFICAR PALAVRA-CHAVE
ALTER TABLE tabela1 ADD t4 data NULL APÓS t3; APÓS A PALAVRA-CHAVE

Limite e compensação do MySQL

Comando Descrição
SELECIONE {nome (s) de campo | *} FROM tableName (s) [condição WHERE] LIMIT N; LIMIT sintaxe de palavra-chave
SELECT * FROM table1 LIMIT 1, 2; OFF SET na consulta LIMIT

Comandos MySQL SubQuery:

Comando Descrição
SELECT t1_name FROM table1 WHERE category_id = (SELECT MIN (t1_id) from table2); sub consultas

Comandos MySQL JOINS

Comando Descrição
SELECT * FROM tabela1 CROSS JOIN tabela2 Cross JOIN
SELECT table1.t1, table1.t2, table2.t1 FROM table1, table2 WHERE table2.id = table1.table2_id JUNÇÃO INTERNA
SELECIONE A.t1, B.t2, B.t3 DA tabela2 AS A LEFT JOIN tabela1 AS B ON B.table2_id = A.id ASSOCIAÇÃO À ESQUERDA
SELECIONE A.t1, A.t2, B.t3 DA tabela1 AS A RIGHT JOIN tabela2 AS B ON B.id = A.table2_id JUNTAR À DIREITA
SELECIONE A.t1, B.t2, B.t3 DA tabela2 AS A LEFT JOIN table1 AS B USING (table2_id) Cláusulas "ON" e "USING"

Comandos MySQL UNION

Comando Descrição
SELECT coluna1, coluna2 FROM tabela1 Sintaxe UNION
SELECT coluna1, coluna2 FROM tabela2; UNION DISTINCT

Comandos MySQL no Views

Comando Descrição
Instrução CREATE VIEW view_name AS SELECT; Sintaxe de visualizações
DROP VIEW general_v_movie_rentals; Descartando visualizações

Comandos do índice MySQL

Comando Descrição
CRIAR ÍNDICE id_index ON nome_tabela (nome_coluna); Adicionar sintaxe básica de índice
DROP INDEX id_de_índice ON nome_tabela; Sintaxe básica do índice de eliminação

Artigos interessantes...