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 |