Retour à la liste des articles Articles
10 minutes de lecture

Termes SQL que les débutants doivent connaître

Vous avez commencé à apprendre le langage SQL ? Vous vous sentez un peu perdu dans le labyrinthe des nouveaux mots et des nouvelles idées ? Voici une liste de 10 termes SQL absolument essentiels pour les débutants.

Lorsque vous commencez à apprendre SQL, il y a beaucoup de choses à assimiler. Et certains d'entre eux, même les termes SQL de base, se perdent dans la masse. Si c'est votre cas, mettez cet article dans vos favoris ; il vous servira de référence pratique.

Je vais expliquer ces termes SQL de base avec les mots les plus simples possibles. Nous ne recherchons pas ici une précision de niveau scientifique ; le plus important est que vous compreniez les principes fondamentaux de SQL.

Vous êtes prêt ? C'est parti !

Section 1 : Bases de la base de données

Base de données

Une base de données est un ensemble structuré de données stockées sur un ordinateur. Vous pouvez traiter ces données de différentes manières - par exemple, les analyser, les mettre à jour, les copier, les supprimer, etc. De nos jours, les bases de données sont partout. Elles sont utilisées par les banques, les sociétés de taxis, les sites web, les hôpitaux, et même les applications de votre smartphone. Nous vivons dans un monde qui fonctionne grâce aux données stockées dans les bases de données.

Si vous êtes intéressé par la création de structures de bases de données, consultez notre filière Création de structures de bases de données. Elle contient cinq cours interactifs où vous apprendrez à connaître les types de données, à créer des structures de table en SQL et à utiliser des contraintes, des index et des vues. Les 320+ exercices interactifs vous permettront d'acquérir de nombreuses connaissances - et de vous entraîner.

Base de données relationnelle

Il s'agit d'un terme important dont les définitions sont souvent extrêmement complexes. Je m'en tiendrai à ce qu'Edgar Frank Codd - mathématicien de génie et ancêtre des bases de données et du langage SQL - a défini en 1970 : une base de données relationnelle est une structure prédéfinie d'une ou plusieurs tables. Les données contenues dans les tables peuvent être mises en relation sur la base de leurs valeurs. (Par exemple, deux colonnes dans des tables différentes peuvent partager les mêmes données d'identification, ce qui relie ces deux tables entre elles).

Les bases de données relationnelles sont le type le plus populaire sur le marché, mais il en existe d'autres. Certaines bases de données utilisent un autre type de structure de données ; elles peuvent être basées sur :

  • Descolonnes - Cassandra, Druid, HBase.
  • Paires clé-valeur - Oracle NoSQL Database, OrientDB, Redis.
  • Documents - Apache CouchDB, IBM Domino, MongoDB.
  • Graphes - AllegroGraph, InfiniteGraph, Apache Giraph.

Si vous envisagez de travailler avec des bases de données, concentrez-vous pour l'instant sur les bases de données relationnelles. Si vous ne savez pas dès maintenant que vous aurez besoin d'un autre type de base de données, vous utiliserez presque certainement une base de données relationnelle. Le cours SQL pour les débutants est un bon point de départ pour acquérir ces connaissances.

Système de gestion de base de données (SGBD)

Comme son nom l'indique, un SGBD est un programme informatique qui vous permet de travailler avec une base de données. La base de données elle-même est simplement des données stockées sur un disque dur. Vous devez y accéder d'une manière ou d'une autre, et c'est là qu'un SGBD s'avère utile.

À ce stade, tout ce que vous devez savoir est qu'un SGBD est le logiciel dans lequel vous écrivez des requêtes SQL, qu'il se connecte à la base de données et renvoie les données que vous demandez. Il existe de nombreux SGBD sur le marché, aussi bien payants qu'à code source ouvert (qui est plus populaire). Le choix entre eux est principalement une question de préférence personnelle et d'objectif. Si vous choisissez d'apprendre SQL, vous utiliserez un SGBD. Les SGBD les plus populaires sont :

Mon collègue Adrian a écrit un excellent article sur les SGBD, dans lequel il explique exactement ce que sont les SGBD à l'aide d'exemples. Si vous avez besoin de plus de détails, c'est une bonne ressource. Vous voulez savoir quel SGBD choisir pour un usage professionnel ou privé ? Prenez exemple sur les professionnels : Les bases de données les plus populaires en 2020 contient les résultats de la dernière enquête de Stack Overflow.

Tableau

La plupart d'entre nous comprennent intuitivement ce qu'est une table de base de données : des données dans une structure logique de colonnes et de lignes. Il est fort probable que vous puissiez imaginer une table de base de données dans votre tête. Si ce n'est pas le cas, voici un exemple :

Column 1Column 2Column 3
Row 1
Row 2
Row 3
Row 4

Avec SQL, vous pouvez écrire des requêtes qui sélectionnent des "fragments" de table spécifiques, c'est-à-dire la ou les valeurs de certaines lignes ou colonnes. Vous pouvez même sélectionner une seule valeur. En outre, SQL vous permet d'analyser, d'effectuer des calculs ou même de modifier les données d'un tableau. Et vous ne travaillerez pas toujours avec une seule table. Parfois, vous écrirez une requête faisant référence à plusieurs tables. Par exemple, vous pouvez avoir une liste de vos clients dans une table et une liste de commandes dans une autre table. Avec une seule requête SQL, vous pouvez savoir quels clients ont commandé le plus de marchandises et ce qu'ils ont commandé. Cela nécessite une commande appelée SQL JOIN, qui est traitée dans notre parcours SQL pour les débutants.

Colonne

Une colonne est une partie d'une table. Dans une base de données relationnelle, une colonne est une collection de valeurs de données d'un type spécifique; il y a une valeur de colonne pour chaque ligne de la base de données.

Par exemple, regardez votre liste de contacts. Vous avez probablement les prénoms et les noms de famille de vos amis, leurs numéros de téléphone, leurs adresses électroniques, etc. Si vous les placez tous dans une table de base de données, ils ressembleront à l'exemple ci-dessous. Notez que toutes les informations de la colonne email (que nous avons colorée) sont du même type : des adresses électroniques. C'est le rôle des colonnes : stocker un type d'information.

first_namesurnamephone_numberemail
AnnJarvis888-555-1234jarvis.ann@company.com
TomLau818-555-4567t_lau145@email.co
MikeHigdon303-555-0987mikehigdon@painting.it
MariaHernandez818-555-3498mhernandez@business.us

Row/Record

Les lignes (également appelées enregistrements) contiennent des cellules (également appelées champs) qui stockent les valeurs individuelles des colonnes. Contrairement aux colonnes, les rangées peuvent contenir plusieurs types de données. Ce qui différencie les rangées, c'est que toutes les données de la rangée décrivent une chose spécifique. Et, contrairement aux colonnes, le nombre de lignes d'un tableau peut être illimité ; il n'est pas nécessaire d'en connaître le nombre à l'avance.

Dans l'exemple d'une liste de contacts, chaque ligne représente toutes les informations de contact dont vous disposez pour une seule personne. Dans cet exemple, une ligne = une personne. Dans d'autres cas, une ligne peut représenter un article, une transaction de vente, une pièce d'équipement sportif, etc.

first_namesurnamephone_numberemail
AnnJarvis888-555-1234jarvis.ann@company.com
TomLau818-555-4567t_lau145@email.co
MikeHigdon303-555-0987mikehigdon@painting.it
MariaHernandez818-555-3498mhernandez@business.us

Section deux : Termes SQL de base

Langage de requête structuré (SQL)

SQL ou Structured Query Language est le langage que vous utilisez pour communiquer avec la base de données. Contrairement à certains langages de programmation, le SQL est assez simple et se base sur un anglais simple. Les commandes SQL ressemblent davantage à des phrases qu'à des codes informatiques. En d'autres termes, SQL est le langage que vous utiliserez pour trouver, modifier, ajouter ou supprimer des données dans une base de données.

Je trouve que l'apprentissage du SQL s'apparente davantage à l'apprentissage de l'espagnol ou du français qu'à celui d'un langage de programmation informatique. En fait, je dirais même que c'est plus facile, car vous connaissez déjà tous les mots. Il vous suffit de trouver comment assembler correctement les bons mots dans une requête SQL.

Le langage SQL a plus de 40 ans. Et il n'est pas près de disparaître. Il s'agit d'une norme industrielle officielle, approuvée par l'Organisation internationale de normalisation (ISO) et l'American National Standards Institute (ANSI, qui est une organisation membre de l'ISO).

Toutes les solutions modernes de bases de données relationnelles utilisent SQL comme outil de base. Même s'il existe différents dialectes SQL (par exemple SQL Server, MySQL ou PostgreSQL), les différences entre le SQL standard et un dialecte sont généralement mineures. Vous pouvez facilement consulter la documentation de chaque dialecte pour savoir ce qui doit être fait différemment.

Requête

Une requête est une commande envoyée à la base de données. Dans notre cas, il s'agit de ce que vous écrivez en SQL pour obtenir le résultat que vous souhaitez. Les requêtes SQL peuvent être utilisées pour extraire des résultats de la base de données ou modifier la base de données elle-même.

Imaginez que la base de données soit votre ami Joe. Il sait où trouver une bonne pizza. Vous avez très faim et vous aimeriez une pizza. Que faites-vous ? Vous demandez à Joe, en disant quelque chose comme : "Hé Joe, où se trouve une bonne pizzeria ?" En supposant que vous posiez la question en SQL, cela ressemblerait à quelque chose comme ceci :

SELECT pizza_place
FROM Joe
WHERE restaurant_review = "good";

C'est simple, n'est-ce pas ? Même sans savoir comment écrire une requête SQL, vous pouvez comprendre que Joe vous fournit des informations sur une pizzeria. Et en plus, cette pizzeria doit avoir une bonne critique. Joe, la base de données, renverrait le résultat (c'est-à-dire qu'il vous donnerait les informations que vous avez demandées) : Le petit restaurant de Papa Mario. Mais c'est assez de références alimentaires pour l'instant - mon estomac a vraiment commencé à gronder !

GROUP BY

GROUP BY est une clause SQL importante qui vous permet de regrouper les lignes qui ont les mêmes valeurs dans une colonne donnée.

Supposons que vous vouliez savoir combien de clients vous avez dans une ville donnée. En ajoutant GROUP BY city à votre requête, toutes les lignes (clients) ayant la même valeur dans la colonne city seront listées ensemble dans vos résultats. Cette fonction est très utile pour résumer les données et créer des rapports. Pour en savoir plus, consultez le Création de rapports basiques en SQL après, bien sûr, avoir suivi votre formation de base en SQL.

SQL propose également plusieurs extensions de GROUP BY, appelées ainsi parce qu'elles étendent les capacités de regroupement de GROUP BY. Il s'agit de ROLLUP, CUBE et GROUPING SETS, qui vous permettent de faire des choses sympas comme ajouter des sous-totaux à une analyse. Les extensions de GROUP BY sont plus avancées, alors attendez d'être à l'aise avec GROUP BY avant de les apprendre. Une fois que vous êtes prêt, consultez notre Les extensions GROUP BY en SQL cours. Si vous travaillez avec des données ou des rapports, ce que vous apprendrez dans ce cours vous sera vraiment utile.

Fonctions d'agrégation

Les fonctions d'agrégation vous permettent d'effectuer des calculs numériques sur vos données. La requête renvoie alors des informations résumées sur une colonne donnée ou une liste de résultats.

Il existe cinq fonctions d'agrégation SQL de base :

  • MIN() renvoie la plus petite valeur d'une colonne.
  • MAX() renvoie la valeur la plus élevée d'une colonne
  • SUM() renvoie la somme de toutes les valeurs numériques d'une colonne.
  • AVG() renvoie la valeur moyenne de toutes les valeurs numériques d'une colonne.
  • COUNT() renvoie le nombre de toutes les valeurs d'une colonne (par exemple, s'il y a 45 valeurs d'identification dans la colonne id, COUNT(id) renverra 45).

Si vous voulez savoir comment utiliser ces fonctions, lisez notre Guide du débutant sur les fonctions d'agrégation SQL. Vous pouvez également regarder notre tutoriel sur YouTube, où mon collègue Adrian vous expliquera tout d'une manière très agréable. (Merci de liker et de vous abonner !) Mais n'oubliez pas : les fonctions agrégées SQL s'apprennent mieux lorsque vous maîtrisez déjà les bases du SQL.

Termes SQL

Sauvegardez cette fiche de renseignements SQL pour les débutants

C'est tout - ma liste des concepts de base que toute personne qui commence à apprendre SQL devrait connaître. Si vous avez aimé mon article ou si vous souhaitez que d'autres termes SQL soient expliqués, veuillez poster un commentaire ci-dessous.

N'oubliez pas que si vous ne comprenez pas correctement quelque chose au tout début de votre étude, l'apprentissage des concepts avancés sera beaucoup plus difficile. N'ayez donc pas peur de demander de l'aide. Nous avons tous besoin de poser des questions - c'est ainsi que nous nous améliorons !