Dans cette feuille de triche SQL Query, vous apprendrez
Créer des commandes de base de données et de table
Commander | Description |
CRÉER UNE BASE DE DONNÉES DE BASE DE DONNÉES; | Créer une base de données |
CREATE DATABASE NOT EXISTS database1; | IF NOT EXISTS vous permet de demander au serveur MySQL de vérifier l'existence d'une base de données avec un nom similaire avant de créer la base de données. |
CREATE DATABASE IF NOT EXISTS database1 CHARACTER SET latin1 COLLATE latin1_swedish_ci | le jeu de caractères Latin1 utilise le classement latin1_swedish_ci qui est l'ordre suédois insensible à la casse. |
AFFICHER LES BASES DE DONNÉES | Vous pouvez voir la liste des bases de données existantes en exécutant la commande SQL suivante. |
CREATE TABLE [IF NOT EXISTS] TableName (fieldname dataType [paramètres facultatifs]) ENGINE = Storage Engine; | Créer une syntaxe de table |
TYPES DE DONNÉES
Types de données numériques
Commander | Description |
TINYINT () | -128 à 127 normal 0 à 255 UNSIGNED. |
PETITE INTELLIGENCE () | -32768 à 32767 normal 0 à 65535 UNSIGNED. |
MOYENNEINT () | -8388608 à 8388607 normal 0 à 16777215 NON SIGNÉ. |
INT () | -2147483648 à 2147483647 normal 0 à 4294967295 NON SIGNÉ. |
GRAND () | -9223372036854775808 à 9223372036854775807 normal 0 à 18446744073709551615 NON SIGNÉ. |
FLOTTER | Un petit nombre approximatif avec une virgule décimale flottante. |
DOUBLE( , ) | Un grand nombre avec une virgule décimale flottante. |
DÉCIMAL( , ) | Un DOUBLE stocké sous forme de chaîne, permettant un point décimal fixe. Choix pour stocker les valeurs monétaires. |
Types de données texte
Commander | Description |
CHAR () | Une section fixe de 0 à 255 caractères. |
VARCHAR () | Une section variable de 0 à 255 caractères. |
TINYTEXT | Une chaîne d'une longueur maximale de 255 caractères. |
TEXTE | Une chaîne d'une longueur maximale de 65 535 caractères. |
GOUTTE | Une chaîne d'une longueur maximale de 65 535 caractères. |
MEDIUMTEXT | Une chaîne d'une longueur maximale de 16777215 caractères. |
BLOB MOYEN | Une chaîne d'une longueur maximale de 16777215 caractères. |
LONGTEXTE | Une chaîne d'une longueur maximale de 4294967295 caractères. |
LONGBLOB | Une chaîne d'une longueur maximale de 4294967295 caractères. |
Types de données Date / Heure
Commander | Description |
DATE | AAAA-MM-JJ |
DATETIME | AAAA-MM-JJ HH: MM: SS |
HORAIRE | AAAAMMJJHHMMSS |
TEMPS | HH: MM: SS |
Autres types de données
Commander | Description |
ENUM | Pour stocker la valeur de texte choisie dans une liste de valeurs de texte prédéfinies. |
ENSEMBLE | Ceci est également utilisé pour stocker des valeurs de texte choisies dans une liste de valeurs de texte prédéfinies. Il peut avoir plusieurs valeurs. |
BOOL | Synonyme de TINYINT (1), utilisé pour stocker des valeurs booléennes |
BINAIRE | Semblable à CHAR, la différence est que les textes sont stockés au format binaire. |
VARBINAIRE | Semblable à VARCHAR, la différence est que les textes sont stockés au format binaire. |
Commande d'instruction MySQL SELECT
Commander | Description |
SELECT [DISTINCT | ALL] {* | [fieldExpression [AS newName]} FROM tableName [alias] [condition WHERE] [GROUP BY fieldName (s)] [HAVING condition] ORDER BY fieldName (s) | Syntaxe de l'instruction SQL SELECT |
SELECT * FROM table1; | sélectionnez la table |
SELECT t1, t2, t3, t4 FROM table1; | nous ne sommes intéressés qu'à obtenir uniquement les champs t1, t2, t3 et t4. |
SELECT Concat (t1, (, t3,)), t4 FROM table2; | Obtenir la liste de table2 |
SELECT nom_colonne | valeur | expression [AS] nom_alias; | Syntaxe des noms de champ d'alias |
Clause MySQL WHERE avec les commandes AND, OR, IN, NOT IN
Commander | Description |
SELECT * FROM tableName WHERE condition; | Syntaxe de la clause WHERE |
SELECT * FROM table1 O t1 = 2 ET t2 = 2008; | Clause WHERE combinée avec - AND LOGICAL Operator |
SELECT * FROM table1 WHERE t1 = 1 OU t1 = 2; | Clause WHERE combinée avec - Opérateur OR LOGICAL |
SELECT * FROM table2 WHERE t1 IN (1,2,3); | Clause WHERE combinée avec le mot-clé - IN |
SELECT * FROM table2 WHERE t1 NOT IN (1,2,3); | Clause WHERE combinée avec le mot clé - NOT IN |
SELECT * FROM table2 WHERE t3 = Femelle; | Clause WHERE combinée avec Equal (=) à COMPARISON OPERATORS |
SELECT * FROM table3 WHERE t3> 2000; | Clause WHERE combinée avec supérieur à (>) à COMPARISON OPERATORS |
SELECT * FROM table1 WHERE t1 <> 1; | Clause WHERE combinée avec Not Equal to (<>) COMPARISON OPERATORS |
Table de commande MySQL INSERT INTO
Commander | Description |
INSERT INTO nom_table (colonne_1, colonne_2,…) VALEURS (valeur_1, valeur_2,…); | syntaxe de base de la commande SQL INSERT |
INSÉRER DANS table1 (t1, t2, t3, t4) VALEURS (X1, X2, X3, X4); | INSÉRER les données dans la table |
INSERT INTO table_1 SELECT * FROM table_2; | Insertion dans une table à partir d'une autre table |
Commande MySQL DELETE
Commander | Description |
DELETE FROM nom_table [condition WHERE]; | Supprimer une ligne dans MySQL |
Exemple: - DELETE FROM table1 WHERE table1_id = 18;
(effacez l'entrée de la table1 de forme d'id de 18 nombres.) DELETE FROM table1 WHERE table1_id IN (20,21); (supprimer l'entrée du tableau de formulaire d'identification des numéros 20 et 211)
Commande de mise à jour MySQL
Commander | Description |
UPDATE nom_table SET nom_colonne = nouvelle_valeur [condition WHERE]; | syntaxe de la commande de mise à jour |
Exemple: - SELECT * FROM table1 WHERE t1 = 1;
(récupérer l'enregistrement pour t1 = 1) UPDATE table1 SET t4 = X1 WHERE t1 = 1; (mettre à jour la valeur t4 dans le tableau)
ORDER BY dans MySQL: commande DESC & ASC
Commander | Description |
Instruction SELECT… [condition WHERE | GROUP BY nom (s) champ (s) HAVING condition] ORDER BY nom (s) champ [ASC | DESC]; | Trier par la syntaxe de base de la clause |
SELECT {fieldName (s) | *} FROM nom (s) table (s) [condition WHERE] ORDER BY nom (s) de champ ASC / DESC [LIMIT N] | Syntaxe DESC et ASC |
Exemple: - Pour DESC (décroissant)
SELECT * FROM table1 ORDER BY t3 DESC; Pour ASC (croissant) SELECT * FROM table1 ORDER BY t3 ASC;
Commande MySQL GROUP BY et HAVING Clause
Par groupe
Commander | Description |
Instructions SELECT… GROUP BY nom_colonne1 [, nom_colonne2,…] [HAVING condition]; | GROUP BY Syntaxe |
Exemple de regroupement d'une seule colonne: - SELECT t4 FROM table1;
SELECT t4 FROM table1 GROUP BY t4; (supposons que nous voulons obtenir les valeurs uniques pour t4.)
Exemple de regroupement de plusieurs colonnes: - SELECT t1_id, t4 FROM table2;
SELECT t1_id, t4 FROM table2 GROUP BY t1_id, t4; (en utilisant la méthode group by)
Fonctions de regroupement et d'agrégation
Commander | Description |
SELECT t2, COUNT (t1) FROM table1 GROUP BY t2; | Supposons que nous voulions le nombre total de valeurs de colonne t2 dans notre base de données. |
Clause HAVING
Commander | Description |
SELECT * FROM table2 GROUP BY t1_id, t4 HAVING t1_id = x1; | tous les t4 pour table2 t1 id x1. Nous utiliserions le script suivant pour obtenir nos résultats. |
Commandes MySQL Wildcards pour Like, NOT Like, Escape, (%), (_)
% le pourcentage de caractères génériques commandés dans MySQL
Commander | Description |
Instructions SELECT… WHERE fieldname LIKE xxx%; | syntaxe de base pour le caractère générique% pourcentage |
Exemple: - nous utiliserions le caractère générique de pourcentage pour effectuer une correspondance de modèle des deux côtés du mot "X1" dans la partie t2 de la table1 SELECT * FROM table1 WHERE t2 LIKE% X1%;
SELECT * FROM table1 O t2 COMME% X1; (le caractère générique de pourcentage au début des critères de recherche uniquement) SELECT * FROM table1 WHERE t2 LIKE X1%; (le pourcentage générique à la fin du modèle spécifié à mettre en correspondance.)
_ commande de caractère générique de soulignement
Commander | Description |
SELECT * FROM table1 WHERE t3 LIKE x2_; | tous les tableaux1 qui étaient t3 dans l'année "x2" |
PAS comme la commande générique
Commander | Description |
SELECT * FROM table1 WHERE t3 PAS COMME X2_; | Supposons que nous voulions obtenir la table1 qui n'était pas t3 dans l'année X2_ |
Commande de caractères génériques de mot-clé d'échappement
Commander | Description |
COMME 67 # %% ESCAPE #; | nous voulons vérifier la chaîne "67%" |
Expressions régulières MYSQL (REGEXP)
Commander | Description |
Instructions SELECT… WHERE fieldname REGEXP pattern; | syntaxe de base de l'expression régulière |
Exemple: - toutes les tables1 t1 contenant le mot X1. Peu importe que le "X1" soit au début, au milieu ou à la fin du titre. SELECT * FROM table1 WHERE t1 REGEXP X1;
Métacaractères d'expression régulière
Commander | Description |
* | Le métacaractère astérisque (*) est utilisé pour correspondre à zéro (0) ou plusieurs instances des chaînes qui le précèdent |
+ | Le métacaractère plus (+) est utilisé pour faire correspondre une ou plusieurs instances de chaînes le précédant. |
? | Le métacaractère question (?) Est utilisé pour correspondre à zéro (0) ou à une instance des chaînes qui le précèdent. |
. | Le métacaractère point (.) Est utilisé pour faire correspondre n'importe quel caractère unique à l'exception d'une nouvelle ligne. |
[abc] | La charlist [abc] est utilisée pour correspondre à l'un des caractères inclus. |
[^abc] | La charlist [abc] est utilisée pour faire correspondre tous les caractères à l'exception de ceux inclus. |
[A-Z] | Le [AZ] est utilisé pour correspondre à n'importe quelle lettre majuscule |
[a-z] | Le [az] est utilisé pour correspondre à n'importe quelle lettre minuscule |
[0-9] | Le [0-9] est utilisé pour faire correspondre n'importe quel chiffre de 0 à 9. |
^ | Le signe caret (^) est utilisé pour démarrer le match au début. |
| | La barre verticale (|) est utilisée pour isoler les alternatives. |
[[:<:]] | Le [[: <:]] correspond au début des mots. |
[[:>:]] | Le [[:>:]] correspond à la fin des mots. |
[:class:] | [: Class:] correspond à une classe de caractères, c'est-à-dire [: alpha:] pour faire correspondre les lettres, [: space:] pour faire correspondre les espaces blancs, [: punct:] correspond aux ponctuations et [: upper:] pour les lettres de classe supérieure. |
Commandes des fonctions SQL
Fonctions de chaîne
Commander | Description |
SELECT t1_id, t2, UCASE (t2) FROM table1; | la fonction "UCASE" pour ce faire. Il prend une chaîne comme paramètre et convertit toutes les lettres en majuscules. |
Fonctions numériques
Commander | Description | Exemple |
DIV | Division entière | SELECT 23 DIV 6; |
/ | Division | SÉLECTIONNER 23/6; |
- | Soustraction | SÉLECTIONNER 23 - 6; |
+ | Une addition | SÉLECTIONNEZ 23 + 6; |
* | Multiplication | SELECT 23 * 6 AS multiplication_result; |
% or MOD | Module | SÉLECTIONNER 23% 6; ou SELECT 23 MOD 6; |
Floor | cette fonction supprime les décimales d'un nombre et l'arrondit au nombre le plus bas le plus proche. | SELECT FLOOR (23/6) AS floor_result; |
Round | cette fonction arrondit un nombre avec des décimales au nombre entier le plus proche. | SELECT ROUND (23/6) AS round_result; |
Fonctions mémorisées
Commander | Description |
CREATE FUNCTION sf_name ([paramètre (s)]) RETURNS type de données DÉTERMINISTIC STATEMENTS | syntaxe de base pour créer une fonction stockée |
CREATE FUNCTION sf_name ([paramètre (s)]) | Obligatoire et indique au serveur MySQL de créer une fonction nommée `sf_name 'avec des paramètres optionnels définis entre parenthèses. |
Type de données RETURNS | Obligatoire et spécifie le type de données que la fonction doit renvoyer. |
DÉTERMINISTE | La fonction renverra les mêmes valeurs si les mêmes arguments lui sont fournis. |
DÉCLARATIONS | Le code procédural que la fonction exécute. |
Commandes de la fonction MySQL Aggregate
Commander | Description |
SELECT COUNT (t1_id) FROM table1 WHERE t1_id = 2; | Fonction COUNT |
SELECT MIN (t3) FROM table2; | Fonction MIN |
SELECT MAX (t3) FROM table2; | Fonction MAX |
SELECT SUM (t4) FROM table3; | Fonction SUM |
SELECT AVG (t4) FROM table3; | Fonction AVG |
Commandes MySQL IS NULL & IS NOT NULL
Commander | Description |
SELECT COUNT (t3) FROM table1; (si t3 a une valeur nulle présente qui ne compte pas) | Null comme valeur |
CREATE TABLE table2 (t1_number int NOT NULL, t2_names varchar (255), t3 varchar (6)); | Valeurs NOT NULL |
comlumn_name IS NULL comlumn_name NOT NULL | NULL Mots-clés Syntaxe de base |
SELECT * FROM table1 WHERE t2_number EST NULL; | Exemple de IS NULL |
SELECT * FROM table1 WHERE t2_number N'EST PAS NULL; | Exemple de IS NOT NULL |
Commandes MySQL AUTO_INCREMENT
Commander | Description |
CREATE TABLE table1 (t1_id int (11) AUTO_INCREMENT, t2_name varchar (150) DEFAULT NULL, t3 varchar (500) DEFAULT NULL, PRIMARY KEY (t1_id)); | Syntaxe d'incrémentation automatique |
MYSQL - ALTER, DROP, RENAME, MODIFY
Commander | Description |
ALTER TABLE nom_table ADD COLUMN nom_colonne type_données; | Modifier la syntaxe |
DROP TABLE table_exemple; | Syntaxe DROP TABLE |
RENAME TABLE nom_table_actuelle TO nouveau_nom_table_table; | Syntaxe RENAME COMMAND |
ALTER TABLE table1 CHANGE COLUMN t1_names t1name char (250) NOT NULL; | CHANGER LE MOT CLÉ |
ALTER TABLE table1MODIFY t1name char (50) NOT NULL; | MODIFIER LE MOT CLÉ |
ALTER TABLE table1 ADD t4 date NULL APRES t3; | APRÈS MOT-CLÉ |
LIMITE & OFFSET MySQL
Commander | Description |
SELECT {nom (s) de champ | *} FROM nom (s) table (s) [condition WHERE] LIMIT N; | Syntaxe du mot clé LIMIT |
SELECT * FROM table1 LIMIT 1, 2; | OFF SET dans la requête LIMIT |
Commandes de sous-requête MySQL:
Commander | Description |
SELECT t1_name FROM table1 WHERE category_id = (SELECT MIN (t1_id) from table2); | sous-requêtes |
Commandes MySQL JOINS
Commander | Description |
SELECT * FROM table1 CROSS JOIN table2 | Croix REJOINDRE |
SELECT table1.t1, table1.t2, table2.t1 FROM table1, table2 WHERE table2.id = table1.table2_id | JOINTURE INTERNE |
SELECT A.t1, B.t2, B.t3 FROM table2 AS A LEFT JOIN table1 AS B ON B.table2_id = A.id | JOINT GAUCHE |
SELECT A.t1, A.t2, B.t3 FROM table1 AS A RIGHT JOIN table2 AS B ON B.id = A.table2_id | JOINDRE DROIT |
SELECT A.t1, B.t2, B.t3 FROM table2 AS A LEFT JOIN table1 AS B USING (table2_id) | Clauses "ON" et "USING" |
Commandes MySQL UNION
Commander | Description |
SELECT colonne1, colonne2 FROM table1 | Syntaxe UNION |
SELECT colonne1, colonne2 FROM table2; | UNION DISTINCT |
Commandes MySQL dans les vues
Commander | Description |
Instruction CREATE VIEW nom_vue AS SELECT; | Syntaxe des vues |
DROP VIEW general_v_movie_rentals; | Suppression de vues |
Commandes d'index MySQL
Commander | Description |
CREATE INDEX id_index ON nom_table (nom_colonne); | Ajouter la syntaxe de base de l'index |
DROP INDEX id_index ON nom_table; | Syntaxe de base de Drop Index |