0% ont trouvé ce document utile (0 vote)
11 vues23 pages

Introduction au langage SQL et MySQL

Le document présente une introduction à MySQL, un système de gestion de bases de données relationnelles utilisant le langage SQL. Il couvre des concepts clés tels que la création et la gestion de bases de données et de tables, l'ajout de contraintes, ainsi que les opérations de manipulation et d'interrogation des données. Des exemples de requêtes SQL illustrent les opérations d'insertion, de sélection, de mise à jour et de suppression, ainsi que l'utilisation de fonctions d'agrégat.

Transféré par

achrafmrani87
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
11 vues23 pages

Introduction au langage SQL et MySQL

Le document présente une introduction à MySQL, un système de gestion de bases de données relationnelles utilisant le langage SQL. Il couvre des concepts clés tels que la création et la gestion de bases de données et de tables, l'ajout de contraintes, ainsi que les opérations de manipulation et d'interrogation des données. Des exemples de requêtes SQL illustrent les opérations d'insertion, de sélection, de mise à jour et de suppression, ainsi que l'utilisation de fonctions d'agrégat.

Transféré par

achrafmrani87
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Module : ALGÈBRE RELATIONNELLE

&
LANGAGE SQL
(Bases de Données Relationnelles)

Le langage SQL - Partie 1


Pr. Salma MOULINE
TC MIP-Informatique — S4 Département d’Informatique
2024/2025 Laboratoire LRIT
Introduction à MySQL

• MySQL est un système de gestion de base de données relationnelle (SGBDR).

• Utilise SQL (Structured Query Language).

• Open-source, développé initialement par MySQL AB, puis acquis par Oracle.

• Populaire pour les applications web.

2024/2025
Architecture de MySQL

• Basée sur une architecture client-serveur.

• Serveur MySQL : Gère les bases de données, les requêtes SQL, etc.

• Client MySQL : Interface utilisateur pour interagir avec les bases de données.

• Outils et bibliothèques disponibles.

Téléchargement : [Link]

2024/2025
Création d'une Base de Données
Le langage de Dé nition des Données (LDD)

• Création d'une base de données :


‣ CREATE DATABASE nom_de_base;

• Utilisation d'une base de données :


‣ USE nom_de_base;

• A cher les bases existantes :


‣ SHOW DATABASES;

2024/2025
ffi
fi
Création et Gestion des Tables
Le langage de Dé nition des Données (LDD)

• Créer la table client :

CREATE TABLE Client

(id INT PRIMARY KEY, nom VARCHAR(255), age INT);

• Af cher la structure d'une table :

DESCRIBE nom_de_table ;

• Supprimer une table :

DROP TABLE nom_de_table;

2024/2025
fi
fi
Ajout de contrainte dans une table
Le langage de Dé nition des Données (LDD)

• A la création de la table
CREATE TABLE nom_de_table (

id INT PRIMARY KEY,

nom VARCHAR(100),

age INT,

salaire DECIMAL(10, 2),

-- Ajouter la contrainte CHECK pour s'assurer que l'âge soit supérieur à 18

CHECK (age >= 18)

);

2024/2025
fi
Ajout de contrainte dans une table
Le langage de Dé nition des Données (LDD)

• Par un ALTER TABLE après la création de la table

ALTER TABLE nom_de_table

ADD CONSTRAINT nom_contrainte CHECK (condition);

2024/2025
fi
Ajout d’une clé étrangère
Le langage de Dé nition des Données (LDD)

• A la création de la table
CREATE TABLE departements (
id INT PRIMARY KEY,
nom VARCHAR(50)
);

CREATE TABLE employes (


id INT PRIMARY KEY,
nom VARCHAR(100),
salaire DECIMAL(10, 2),
departement_id INT,
-- Ajout de la clé étrangère qui fait référence à la colonne "id" de la table "departements"
FOREIGN KEY (departement_id) REFERENCES departements(id)
);

2024/2025
fi
Ajout d’une clé étrangère
Le langage de Dé nition des Données (LDD)

• Par un ALTER TABLE après la création de la table

ALTER TABLE nom_de_table

ADD CONSTRAINT nom_contrainte

FOREIGN KEY (colonne_locale)

REFERENCES table_étrangère(colonne_étrangère);

2024/2025
fi
Contraintes supplémentaires pour la clé étrangère
Le langage de Dé nition des Données (LDD)

• On peut spéci er des actions sur les modi cations et suppressions dans la table parent avec ON
DELETE et ON UPDATE.

• Options courantes :
• ON DELETE CASCADE : Supprime automatiquement les lignes dans la table enfant si la ligne
correspondante dans la table parent est supprimée.
• ON UPDATE CASCADE : Met à jour automatiquement les valeurs dans la table enfant si la valeur de
la clé primaire dans la table parent change.
• ON DELETE SET NULL : Met la clé étrangère à NULL si la ligne correspondante dans la table parent
est supprimée.

2024/2025
fi
fi
fi
Interrogation et manipulation des données
Le langage de Manipulation des Données (LMD)

• SQL est utilisé pour gérer les données dans une base de données relationnelles.

• Opérations principales :
- INSERT : Ajouter des données.
- SELECT : Lire des données.
- UPDATE : Modi er des données.
- DELETE : Supprimer des données.

2024/2025
fi
Insertion de Données
Le langage de Manipulation des Données (LMD)

• Insertion simple :

INSERT INTO Client(id, nom, age) VALUES (1, 'Mohammed', 30);

• Insertion multiple :

INSERT INTO Client(id, nom, age) VALUES (2, 'Ali', 25),

(3, 'Omar', 35);

2024/2025
Requêtes de Sélection (SELECT)
Le langage de Manipulation des Données (LMD)

• Sélection de toutes les données :


SELECT * FROM nom_de_table ;

• Sélection avec condition :

SELECT * FROM nom_de_table WHERE condition ;

• Ordre des résultats :

SELECT * FROM nom_de_table ORDER BY attribut DESC; (ou ASC)

• Gestion des doublons:

SELECT DISTINCT attribut FROM nom_de_table ;

2024/2025
Requêtes de Sélection (SELECT)
Le langage de Manipulation des Données (LMD)

• Les n premiers résultats :

SELECT * FROM Client ORDER BY age DESC


(=> Les 5 clients les plus agés)
LIMIT 5 ;

• OffSet:

SELECT * FROM Client ORDER BY age DESC

OFFSET 5 (=> Les 5 clients les plus agés à partir du 6ème)

LIMIT 5;

2024/2025
Requêtes de Sélection (SELECT)
Le langage de Manipulation des Données (LMD)

• Les conditions avec BETWEEN :

SELECT * FROM Client WHERE age BETWEEN 35 AND 45 ;

• Les conditions avec LIKE et iLIKE :

SELECT * FROM Client WHERE email LIKE %@gmail.% ;

(=> Les clients qui ont des e-mail chez Google)

• Le _ remplace un caractère

2024/2025
Mise à Jour des Données (UPDATE)
Le langage de Manipulation des Données (LMD)

• Modi cation d'un enregistrement :

UPDATE Client SET age = 40 WHERE id = 1;

• Modi cation de plusieurs enregistrements :

UPDATE Client SET age = age + 1;

2024/2025
fi
fi
Suppression de Données (DELETE)
Le langage de Manipulation des Données (LMD)

• Suppression avec condition :

DELETE FROM nom_de_table WHERE id = 2 ;

• Suppression de tous les enregistrements :

DELETE FROM nom_de_table;

2024/2025
Fonctions d'Agrégat en SQL
Le langage de Manipulation des Données (LMD)

• Les fonctions d'agrégat sont utilisées pour effectuer des calculs sur un ensemble de valeurs.

• Elles retournent une valeur unique pour chaque groupe de données.

• Principales fonctions : COUNT(), SUM(), AVG(), MIN(), MAX().

2024/2025
Fonction COUNT()
Le langage de Manipulation des Données (LMD)

COUNT() retourne le nombre total de lignes dans un ensemble de résultats.

• Exemple :

SELECT COUNT(*) FROM Client ;

• Peut aussi compter des valeurs spéci ques :

SELECT COUNT(nom) FROM Client WHERE age > 30;

( Nombre d’employés ayant plus de 30 ans)

2024/2025

fi
Fonction SUM()
Le langage de Manipulation des Données (LMD)

SUM() retourne la somme totale d'une colonne numérique.

• Exemple :

SELECT SUM(salaire) FROM employes;

• Peut être utilisé avec des conditions :

SELECT SUM(salaire) FROM employes

WHERE departement = 'Finance’;

(=> La somme des salaires des employés du département ‘Finance’)

2024/2025
Fonction AVG()
Le langage de Manipulation des Données (LMD)

AVG() calcule la moyenne des valeurs numériques dans une colonne.

• Exemple :

SELECT AVG(salaire) FROM employes;

• Peut aussi être utilisé pour des groupes spéci ques :

SELECT AVG(salaire) FROM employes WHERE departement = 'IT’;

(=> La moyenne des salaires des employés du département ‘IT’)

2024/2025

fi
Fonctions MIN() et MAX()
Le langage de Manipulation des Données (LMD)

• MIN() retourne la plus petite valeur dans un ensemble de résultats.

• MAX() retourne la plus grande valeur.

• Exemples :

SELECT MIN(salaire) FROM employes;

SELECT MAX(salaire) FROM employes WHERE departement = 'Marketing’;

(=> Le salaire max des employés du département ‘Marketing’)

2024/2025
GROUP BY et HAVING
Le langage de Manipulation des Données (LMD)

• GROUP BY regroupe les lignes qui ont des valeurs communes.

• HAVING permet de ltrer les groupes après l'agrégation.

• Exemple :

SELECT departement, AVG(salaire) FROM employes

GROUP BY departement; (=> La moyenne des salaires par département)

• Filtrer avec HAVING :

SELECT departement, AVG(salaire) FROM employes

GROUP BY departement

HAVING AVG(salaire) > 50000;

(=> La moyenne des salaires des départements ayant une moyenne de salaire supérieur à 50000)

2024/2025
fi

Vous aimerez peut-être aussi