Database
 sql >> Base de données >  >> RDS >> Database

Tutoriel SQL :solution unique pour apprendre SQL

Dans le marché actuel, où environ 2,5 quintillions d'octets de données sont générés chaque jour, il est très important de comprendre comment gérer une telle quantité de données. Eh bien, c'est là que le langage de requête structuré ou SQL entre en scène. Ainsi, dans cet article sur le didacticiel SQL, je discuterai des concepts importants suivants, qui sont indispensables pour devenir administrateur de base de données.

  • Introduction à SQL
    1. Qu'est-ce que SQL ?
    2. Applications de SQL
    3. Types de données SQL
    4. Opérateurs SQL
  • Principales commandes SQL
    1. CRÉER
    2. DÉPOSER
    3. ALTER
    4. TRUNCATE
    5. EXPLIQUER
    6. INSÉRER DANS
    7. MISE À JOUR
    8. SÉLECTIONNER
    9. J'AIME
    10. Subvention
  • Clés dans la base de données
  • Contraintes SQL
  • Normalisation
  • Jointures SQL
  • Vues

Tutoriel SQL :Introduction à SQL

Qu'est-ce que SQL ?

Développé par Donald D.Chamberlin dans les années 1970, Structured Query Language ou plus communément connu sous le nom de SQL est l'un des langages les plus populaires utilisés pour manipuler, stocker, mettre à jour et récupérer des données à partir de une base de données relationnelle. SQL se compose de diverses commandes réparties en 4 catégories, à savoir DDL, DML, DCL et TCL pour jouer avec les données dans les bases de données. En outre, les bases de données relationnelles telles que les bases de données MySQL, Oracle, MS SQL Server, Sybase, etc. utilisent SQL pour modifier les données.

Applications de SQL

Les applications de SQL sont les suivantes :

  • Avec SQL, vous pouvez créer et supprimer des tables et des bases de données.
  • Il permet aux utilisateurs de définir et de manipuler des données dans des bases de données.
  • SQL permet aux utilisateurs d'accéder, de modifier et de décrire des données dans RDBMS.
  • Avec SQL, vous pouvez définir des autorisations sur les tables, les vues et les procédures et accorder des autorisations spécifiques à différents utilisateurs.
  • SQL vous permet d'intégrer d'autres langages à l'aide de bibliothèques et de modules SQL.

Maintenant que vous connaissez les bases de SQL, dans ce didacticiel SQL, laissez-nous comprendre quels sont les différents types de données SQL.

Types de données SQL

Les types de données SQL sont répartis dans les catégories suivantes :

  • Numérique – Les types de données numériques autorisent les entiers signés et non signés. Ils peuvent être divisés en types de données exacts et approximatifs, où exact autorise les entiers sous forme de nombres entiers et approximatif autorise les entiers flottants.
  • Chaîne de caractères – Ce type de données autorise des caractères de longueur fixe et variable. Ce type de données peut également être catégorisé en caractères Unicode, ce qui permet une longueur fixe et variable des caractères Unicode.
  • Binaire – Les types de données Binary permettent de stocker des données au format de valeurs binaires, pour une longueur fixe et variable.
  • Date et heure – Ce type de données permet de stocker les données dans différents formats de date et d'heure.
  • Autre – Cette section de types de données contient des types de données tels que table, XML, curseur, identifiant unique et sql_variant.

Si vous souhaitez obtenir une compréhension détaillée des différents types de données SQL, vous pouvez vous référer au guide détaillé sur les types de données SQL.

Opérateurs SQL

Les opérateurs sont les constructions qui peuvent manipuler les valeurs des opérandes. Considérons l'expression 4 + 6 =10, ici 4 et 6 sont des opérandes et + est appelé opérateur.

SQL prend en charge les types d'opérateurs suivants :

  • Opérateurs arithmétiques
  • Opérateurs au niveau du bit
  • Opérateurs de comparaison
  • Opérateurs composés
  • Opérateurs logiques

Pour connaître les différents opérateurs supportés par SQL, de manière élaborée, vous pouvez cliquer ici. Donc, maintenant que vous savez ce qu'est SQL et ses bases, laissez-nous comprendre les principales commandes ou instructions de SQL.

Tutoriel SQL :Principales commandes SQL

SQL consiste en diverses commandes ou instructions permettant d'ajouter, de modifier, de supprimer ou de mettre à jour des données dans la base de données. Dans cet article sur le tutoriel SQL, nous allons discuter des déclarations suivantes :

    1. CRÉER
    2. DÉPOSER
    3. ALTER
    4. TRUNCATE
    5. EXPLIQUER
    6. INSÉRER DANS
    7. MISE À JOUR
    8. SÉLECTIONNER
    9. J'AIME
    10. Subvention

Dans ce didacticiel SQL, je vais considérer la base de données ci-dessous comme exemple, pour vous montrer comment écrire des requêtes à l'aide de ces commandes SQL.

ID client Nom du client Numéro de téléphone Adresse Ville Pays
1 Simon 9876543210 Donald Street 52 Hyderabad Inde
2 Akash 9955449922 Queens Road 74 Bombay Inde
3 Patrick 9955888220 Carte de soie 82 Delhi Inde
4 Sameer 9647974327 IG Road 19 Hyderabad Inde
5 Jean 9674325689 Brigade Road Block 9 Bangalore Inde

CRÉER

L'instruction CREATE est utilisée pour créer une table, une vue ou une base de données de la manière suivante :

CRÉER UNE BASE DE DONNÉES

Utilisé pour créer une base de données.

Syntaxe

CREATE DATABASE DatabaseName;

Exemple

 
CREATE DATABASE CustomerInfo; 

CRÉER UN TABLEAU

Cette instruction est utilisée pour créer un tableau.

Syntaxe

CREATE TABLE TableName (
Column1 data type,
Column2 data type,
....

ColumnN data type
);

Exemple

 
CREATE TABLE Customers
(
CustomerID int,
CustomerName varchar(255),
PhoneNumber int,
Address varchar(255),
City varchar(255),
Country varchar(255)
);

CRÉER UNE VUE

Utilisé pour créer une vue.

Syntaxe

CREATE VIEW OR REPLACE ViewName AS
SELECT Column1, Column2, ..., ColumnN
FROM TableName
WHERE Condition;

Exemple

CREATE VIEW OR REPLACE HydCustomers AS
SELECT CustomerName, PhoneNumber
FROM Customers
WHERE City = "Hyderabad";

Remarque : Avant de commencer à créer une table et à entrer des valeurs, vous devez utiliser la base de données, en utilisant l'instruction USE comme [USE CustomersInfo ; ]

DÉPOSER

L'instruction DROP est utilisée pour supprimer une table, une vue ou une base de données existante.

SUPPRIMER LA BASE DE DONNÉES

Utilisé pour supprimer la base de données. Lorsque vous utilisez cette déclaration, toutes les informations présentes dans la base de données seront perdues.

Syntaxe

DROP DATABASE DatabaseName;

Exemple

DROP DATABASE CustomerInfo;

SUPPRIMER LE TABLEAU

Utilisé pour supprimer le tableau. Lorsque vous utilisez cette instruction, toutes les informations présentes dans le tableau seront perdues.

Syntaxe

DROP TABLE TableName;

Exemple

DROP TABLE Customers;

VUE DROP

Utilisé pour supprimer la vue. Lorsque vous utilisez cette instruction, toutes les informations présentes dans la vue seront perdues.

Syntaxe

DROP VIEW ViewName;

Exemple

DROP VIEW HydCustomers;

MODIFIER

L'instruction ALTER est utilisée pour ajouter, supprimer ou modifier des contraintes ou des colonnes dans une table existante.

ALTER TABLE

L'instruction ALTER est utilisée pour supprimer, ajouter, modifier des colonnes dans une table existante. Vous pouvez utiliser ALTER TABLE avec la colonne ADD/DROP pour ajouter ou supprimer une colonne dans la table. En dehors de cela, vous pouvez également ALTER/MODIFY une colonne spécifique.

Syntaxe

ALTER TABLE TableName
ADD ColumnName Data Type;
ALTER TABLE TableName
DROP COLUMN ColumnName;

ALTER TABLE TableName
ALTER COLUMN ColumnName Data Type;

Exemple

--ADD Column Gender:
 ALTER TABLE Customers
ADD  Gender varchar(255);
 
--DROP Column Gender: 
ALTER TABLE Customers
DROP COLUMN Gender ;

--Add a column DOB and change the data type from Date to Year.
 
ALTER TABLE DOB
ADD DOB date;
 
ALTER TABLE DOB
ALTER DOB year;

TRUNCATE

L'instruction TRUNCATE est utilisée pour supprimer les informations présentes dans le tableau, mais pas le tableau lui-même. Ainsi, une fois que vous aurez utilisé cette commande, vos informations seront perdues, mais la table ne sera plus présente dans la base de données.

Syntaxe

TRUNCATE TABLE TableName;

Exemple

TRUNCATE Table Customers;

EXPLIQUER

Les instructions EXPLAIN et DESCRIBE sont des synonymes utilisés pour obtenir respectivement un plan d'exécution de requête et les informations sur une structure de table. Cette instruction peut être utilisée avec les instructions INSERT , DELETE, SELECT, UPDATE et REPLACE.

Syntaxe

--Syntax for DESCRIBE
DESCRIBE TableName;

--Sample syntax for EXPLAIN
EXPLAIN ANALYZE SELECT * FROM TableName1 JOIN TableName2 ON (TableName1.ColumnName1 = TableName2.ColumnName2);

Exemple

DESCRIBE Customers;

EXPLAIN ANALYZE SELECT * FROM Customers1 JOIN Orders ON (Customers.CustomerID = Orders.CustomerID);

INSÉRER DANS

L'instruction INSERT INTO est utilisée pour insérer de nouveaux enregistrements dans une table.

Syntaxe

INSERT INTO TableName (Column1, Column2, Column3, ...,ColumnN)
VALUES (value1, value2, value3, ...);

--If you do not want to mention the column names then use the below syntax, but the order of values entered should match the column data types :

INSERT INTO TableName
VALUES (Value1, Value2, Value3, ...);

Exemple

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', 'India');

MISE À JOUR

L'instruction UPDATE est utilisée pour modifier les enregistrements déjà présents dans la table.

Syntaxe

UPDATE TableName
SET Column1 = Value1, Column2 = Value2, ...
WHERE Condition;

Exemple

UPDATE Customers
SET CustomerName = 'Aisha', City= 'Kolkata'
WHERE EmployeeID = 2;

SÉLECTIONNER

L'instruction SELECT est utilisée pour sélectionner des données dans une base de données et les stocker dans une table de résultats, appelée result-set .

Syntaxe

SELECT Column1, Column2, ...ColumN
FROM TableName;

--(*) is used to select all from the table
SELECT * FROM table_name;

-- To select the number of records to return use:
SELECT TOP 3 * FROM TableName;

Exemple

SELECT CustomerID, CustomerName
FROM Customers;
 
--(*) is used to select all from the table
SELECT * FROM Customers;
 
-- To select the number of records to return use:
SELECT TOP 3 * FROM Customers;

En dehors de cela, vous pouvez utiliser le mot-clé SELECT avec DISTINCT, ORDER BY, GROUP BY, HAVING Clause et INTO.

J'AIME

Cet opérateur est utilisé avec une clause WHERE pour rechercher un modèle spécifié dans une colonne d'une table. Il existe principalement deux caractères génériques utilisés conjointement avec l'opérateur LIKE :

  • % – Il correspond à 0 caractère ou plus.
  • _ – Il correspond exactement à un caractère.

Syntaxe

SELECT ColumnName(s)
FROM TableName
WHERE ColumnName LIKE pattern;

Exemple

SELECT * FROM Customers
WHERE CustomerName LIKE 'S%';

Subvention

La commande GRANT est utilisée pour fournir des privilèges ou un accès sur la base de données et ses objets aux utilisateurs.

Syntaxe

GRANT PrivilegeName
ON ObjectName
TO {UserName |PUBLIC |RoleName}
[WITH GRANT OPTION];

où,

  • NomPrivilège – Les privilèges/droits/accès accordés à l'utilisateur.
  • NomObjet – Nom d'un objet de base de données comme TABLE/VIEW/STORED PROC.
  • Nom d'utilisateur – Nom de l'utilisateur auquel sont accordés les accès/droits/privilèges.
  • PUBLIC – Accorder des droits d'accès à tous les utilisateurs.
  • Nom du rôle – Le nom d'un ensemble de privilèges regroupés.
  • AVEC OPTION DE SUBVENTION – Pour donner à l'utilisateur un accès permettant d'accorder des droits à d'autres utilisateurs.

Exemple

-- To grant SELECT permission to Customers table to admin
GRANT SELECT ON Customers TO admin;

Maintenant que vous connaissez les principales commandes SQL, laissez-nous comprendre quels sont les différents types de clés utilisées dans la base de données. Eh bien, ce concept vous aidera à comprendre comment chaque table est liée à l'autre table dans un système de gestion de base de données relationnelle.

Tutoriel SQL :Clés

Voici les 7 types de clés qui peuvent être pris en compte dans une base de données :

  • Clé du candidat – Un ensemble d'attributs qui peuvent identifier de manière unique une table peut être qualifié de clé candidate. Une table peut avoir plus d'une clé candidate, et parmi les clés candidates choisies, une clé peut être choisie comme clé primaire.
  • Super Clé – L'ensemble d'attributs qui peuvent identifier de manière unique un tuple est appelé Super Key. Ainsi, une clé candidate, une clé primaire et une clé unique constituent une super clé, mais l'inverse n'est pas vrai.
  • Clé primaire – Un ensemble d'attributs utilisés pour identifier de manière unique chaque tuple est également une clé primaire.
  • Clé alternative – Les clés alternatives sont les clés candidates, qui ne sont pas choisies comme clé primaire.
  • Clé unique – La clé unique est similaire à la clé primaire, mais autorise une valeur NULL dans la colonne.
  • Clé étrangère – Un attribut qui ne peut prendre que les valeurs présentes comme valeurs d'un autre attribut, est la clé étrangère de l'attribut auquel il se réfère.
  • Clé composite – Une clé composite est une combinaison de deux ou plusieurs colonnes qui identifient chaque tuple de manière unique.

J'espère que vous avez compris les différents types de clés dans la base de données, ensuite dans cet article sur le tutoriel SQL, discutons des contraintes dans la base de données. Eh bien, les contraintes SQL sont utilisées pour augmenter la précision et la fiabilité des données qui entrent dans la base de données via une table.

Tutoriel SQL : Contraintes

Les contraintes SQL garantissent qu'il n'y a pas de violation en termes de transaction de données. Si elles sont trouvées, l'action sera terminée. L'utilisation principale des contraintes suivantes est de limiter le type de données pouvant entrer dans une table.

  • PAS NULL – Cette contrainte est utilisée pour s'assurer qu'une colonne ne peut pas stocker une valeur NULL.
  • UNIQUE – La contrainte UNIQUE est utilisée pour s'assurer que toutes les valeurs saisies dans une colonne ou une table sont uniques.
  • VÉRIFIER – Cette contrainte est utilisée pour s'assurer qu'une colonne ou plusieurs colonnes satisfont à une condition spécifique.
  • PAR DÉFAUT – La contrainte DEFAULT est utilisée pour définir une valeur par défaut pour une colonne si aucune valeur n'est spécifiée.
  • INDEX – Cette contrainte est utilisée pour les index dans la table, grâce auxquels vous pouvez créer et récupérer des données de la base de données très rapidement.

Si vous souhaitez en savoir plus sur les contraintes suivantes avec une syntaxe et des exemples, vous pouvez vous référer à d'autres articles sur SQL. Donc, maintenant que vous parlez des clés et des contraintes dans la base de données, dans cet article sur le didacticiel SQL, examinons un concept intéressant de normalisation.

Tutoriel SQL :Normalisation

La normalisation est le processus d'organisation des données pour éviter la duplication et la redondance. Il existe de nombreux niveaux successifs de normalisation et ceux-ci sont appelés formes normales . De plus, chaque forme normale consécutive dépend de la précédente. Voici les formes normales présentes :

Pour comprendre les formes normales ci-dessus, considérons le tableau suivant :

En observant le tableau ci-dessus, vous pouvez clairement distinguer la redondance des données et la duplication des données. Normalisons donc ce tableau. Pour commencer à normaliser les bases de données, vous devez toujours commencer par la forme normale la plus basse, c'est-à-dire 1NF, puis passer éventuellement aux formes normales supérieures.

Maintenant, voyons comment nous pouvons effectuer la première forme normale, pour le tableau ci-dessus.

Première forme normale (1NF)

Pour s'assurer que la base de données doit être en 1NF , chaque cellule du tableau doit avoir une valeur unique. Donc, fondamentalement, tous les enregistrements doivent être uniques . Le tableau ci-dessus sera normalisé en 1NF comme ci-dessous :

Si vous observez dans le tableau ci-dessus, tous les enregistrements sont uniques. Mais, pourtant, il y a beaucoup de redondance et de duplication de données. Donc, pour éviter cela, normalisons la base de données en deuxième forme normale.

Deuxième forme normale (2NF)

Pour s'assurer que la base de données doit être en 2NF , la base de données doit être 1NF et doit égalementavoir une clé primaire à une seule colonne . Le tableau ci-dessus sera normalisé en 2NF comme ci-dessous :

Si vous observez les tableaux ci-dessus, chaque tableau a une clé primaire à une seule colonne. Mais il y a beaucoup de redondance de données et de duplication de quelques colonnes. Donc, pour éviter cela, normalisons la base de données en troisième forme normale.

Troisième forme normale (3NF)

Pour s'assurer que la base de données doit être en 3NF , la base de données doit être en 2NF et ne doit pas avoir de dépendances fonctionnelles transitives . Les tableaux ci-dessus seront normalisés en 3NF comme ci-dessous :

Si vous observez les tableaux ci-dessus, la base de données n'a aucune dépendance transitive. Ainsi, après cette étape, nous n'avons pas besoin de normaliser davantage notre base de données. Mais, si vous voyez des anomalies présentes ou plus d'une seule clé candidate, vous pouvez passer à la forme normale supérieure suivante, c'est-à-dire BCNF.

Forme normale de Boyce-Codd (BCNF)

Pour s'assurer que la base de données doit être en BCNF, la base de données doit être présente en 3NF et les tables doivent être divisées davantage, pour s'assurer qu'une seule clé candidate est présente.

Avec cela, nous arrivons à la fin de la normalisation. Maintenant, dans la suite de ce didacticiel SQL, discutons d'un concept important en SQL, à savoir les jointures.

Tutoriel SQL :Jointures

Les jointures sont utilisées pour combiner des lignes de deux tables ou plus, en fonction d'une colonne liée entre ces tables et également de quelques conditions. Il existe principalement quatre types de jointures :

  • JOINTURE INTERNE : Cette jointure renvoie les enregistrements dont les valeurs correspondent dans les deux tables.
  • JOINTURE COMPLÈTE : Le FULL JOIN renvoie tous les enregistrements qui ont une correspondance dans la table de gauche ou de droite.
  • JOINTURE GAUCHE : Cette jointure renvoie les enregistrements de la table de gauche, ainsi que les enregistrements qui satisfont la condition de la table de droite.
  • JOINTURE À DROITE : Cette jointure renvoie les enregistrements de la table de droite, ainsi que les enregistrements qui satisfont la condition de la table de gauche.

Donc, c'était une courte description sur JOINS, mais si vous voulez une description détaillée sur JOINS avec un exemple détaillé, vous pouvez vous référer à mon article sur SQL JOINS. Ensuite, dans ce didacticiel SQL, discutons du dernier concept de cet article, à savoir les vues.

Tutoriel SQL :Vues

Une vue en SQL est une table unique, qui est dérivée d'autres tables. Une vue contient des lignes et des colonnes similaires à une table réelle et possède des champs d'une ou plusieurs tables. Reportez-vous à l'image ci-dessous :

Pour comprendre comment créer et supprimer une vue, vous pouvez vous référer aux instructions CREATE et DROP mentionnées ci-dessus. Avec cela, nous arrivons à la fin de cet article sur le tutoriel SQL. J'espère que vous avez trouvé cet article informatif. De plus, si vous vous préparez pour des entretiens d'administrateur de base de données et que vous recherchez une liste complète de questions, vous pouvez vous référer à notre article sur les questions d'entretien SQL.

Si vous souhaitez en savoir plus sur MySQL et découvrir cette base de données relationnelle open source, consultez notre formation de certification MySQL DBA qui comprend une formation en direct dirigée par un instructeur et de vrais -expérience de projet de vie. Cette formation vous aidera à comprendre MySQL en profondeur et vous aidera à maîtriser le sujet.

Vous avez une question pour nous ? Veuillez le mentionner dans la section des commentaires de ce didacticiel SQL et nous vous répondrons.