Retour à la liste des articles Articles
14 minutes de lecture

Combien de temps faut-il pour apprendre SQL ? Principaux conseils pour maîtriser SQL

Est-il difficile d'apprendre SQL ? Combien de temps faut-il pour maîtriser SQL ? Cet article répondra à ces questions et vous permettra de vous familiariser avec les commandes SQL les plus utiles.

Combien de temps faut-il pour apprendre SQL ? Si vous avez déjà pratiqué l'espagnol ou le français, vous savez que l'apprentissage d'une nouvelle langue est difficile et peut prendre des années. Heureusement, la maîtrise de SQL est un parcours beaucoup plus rapide que la conquête de por/para ou one, two, three.

Il est difficile de déterminer avec précision le temps nécessaire à l'apprentissage d'un sujet donné. Cela dépend non seulement de votre point de départ, mais aussi de votre ouverture aux nouvelles informations, des demandes concurrentes sur votre temps et de vos capacités de rétention d'informations. Certains ont des superpouvoirs pour absorber et mémoriser de nouvelles connaissances. D'autres ressemblent davantage au super-héros moins connu d'Un jour sans fin.

Blague à part, vous êtes venu ici pour obtenir une réponse sérieuse à une question très pertinente. Vous voulez savoir à quelle vitesse vous pouvez apprendre SQL ? Nous allons bientôt arriver à ce chiffre magique.

Tout comme apprendre à faire cuire un œuf, à nouer ses lacets ou à faire du boogie comme Bowie, l'apprentissage de SQL ne se fait pas du jour au lendemain. Mais avec beaucoup de pratique - et quelques semaines ou mois d'efforts - vous ajouterez SQL à votre panoplie d'outils numériques en un rien de temps.

Dans cet article, nous examinons les trois principaux aspects de SQL, quelques options quant à la manière d'aborder votre apprentissage de SQL et les obstacles que vous devrez surmonter en cours de route.

Gardez à l'esprit ces quelques mots de sagesse :

Vous n'avez pas besoin d'être génial pour commencer, mais vous devez commencer pour être génial.

Plus vous en savez, plus vous savez que vous ne savez pas.

woah

Il y a un élément de cela dans chaque type d'apprentissage. Une fois que vous vous serez immergés dans SQL pendant un certain temps, vous commencerez à réaliser tout ce qu'il y a à apprendre. Ne vous laissez pas submerger. Une solide compréhension des principes de base vous sera très utile, même dans les applications professionnelles.

Il existe trois "niveaux" clé d'apprentissage de SQL. Réfléchissez au groupe auquel vous appartenez et restez dans votre voie. Il n'est pas nécessaire d'atteindre les étoiles tout de suite alors qu'il y a beaucoup de succès à obtenir ici-bas.

Voici nos trois niveaux d'apprentissage de SQL :

1. SQL pour les débutants

Il y a de bonnes nouvelles pour les personnes qui manquent de temps ou de motivation : Apprenez les commandes SELECT, INSERT, UPDATE et DELETE de SQL et vous aurez probablement fait 70% du chemin vers la maîtrise de SQL. Mieux encore, vous aurez atteint ce niveau de compétence en très peu de temps.

Voici un petit exemple amusant.

Imaginons que nous soyons une agence d'intérim spécialisée dans les super-héros et que nous disposions d'une base de données contenant nos recrues actives et les super-héros que nous aimerions engager. Cette table - appelons-la Superheroes - pourrait ressembler à quelque chose comme ceci :

IDNameIsActiveHourly rateEmployeeType
1BatmanTrue10.95Full Time
2SupermanFalse8.50Part Time
3Wonder WomanTrue12.20Part Time
4The HulkTrue18.10Full Time
5Iron ManFalse13.45Part Time
6The WaspFalse10.90Full Time

De quelles bases SQL avons-nous besoin pour travailler avec ces informations ?

SELECT

SELECT est l'endroit idéal pour qu'un débutant commence son voyage en SQL. Une instruction SELECT ressemble à ceci :

SELECT * FROM Superheroes

Comme nous avons utilisé SELECT * (l'astérisque * signifie "toutes les colonnes"), chaque colonne est affichée. Nous pourrions utiliser une clause WHERE pour filtrer les enregistrements, mais nous ne l'avons pas fait ; cela signifie que toutes les lignes de la table sont affichées dans notre résultat.

IDNameIsActiveHourlyRateEmployeeType
1BatmanTrue10.95Full Time
2SupermanFalse8.50Part Time
3Wonder WomanTrue12.20Part Time
4The HulkTrue18.10Full Time
5Iron ManFalse13.45Part Time
6The WaspFalse10.90Full Time

SELECT est presque toujours utilisé avec une clause WHERE, qui permet de spécifier les données que l'on souhaite voir.

Si nous voulions sélectionner uniquement les super-héros qui travaillent à temps plein, la requête ressemblerait à ceci :

SELECT * FROM Superheroes
WHERE EmployeeType = 'Full Time'
IDNameIsActiveHourlyRateEmployeeType
1BatmanTrue10.95Full Time
4The HulkTrue18.10Full Time
6The WaspFalse10.90Full Time

INSERT, UPDATE et DELETE permettent aux utilisateurs de gérer les données. La mise à jour, ou la maintenance de bases de données nécessite une connaissance de base de SQL. Les instructions INSERT, UPDATE et DELETE vous permettront de vous rapprocher de votre objectif de "connaissance" de SQL.

Le coursSQL pour les débutants de LearnSQL vous fait découvrir une grande partie de ces connaissances de base. Pour l'instant, nous nous contenterons de présenter INSERT, UPDATE et DELETE.

INSERT

Vous avez besoin d'ajouter une ou plusieurs lignes à une table ? INSERT est ce dont vous avez besoin. Il peut également vous aider à ajouter des lignes d'une table à une autre.

Voici la structure de base d'une instruction SQL INSERT :

INSERT INTO tableName (column1, column2, …)
VALUES (value1, value2, …)

Si nous voulions INSÉRER Spiderman dans notre base de données de super-héros, nous ferions ceci :

INSERT INTO Superheroes
           (Name
           ,IsActive
           ,HourlyRate
           ,EmployeeType)
     VALUES
           ('Spiderman'
           ,'True'
           ,14.10
           ,'Part Time')

Le résultat ressemblerait à ceci :

IDNameIsActiveHourlyRateEmployeeType
1BatmanTrue10.95Full Time
2SupermanFalse8.50Part Time
3Wonder WomanTrue12.20Part Time
4The HulkTrue18.10Full Time
5Iron ManFalse13.45Part Time
6The WaspFalse10.90Full Time
7SpidermanTrue14.10Part Time

UPDATE

L'instruction SQL UPDATE peut vous aider à modifier les valeurs de colonnes pour une ou plusieurs lignes. Une instruction SQL UPDATE est généralement structurée comme suit :

UPDATE tableName
SET column1=value1, column2=value2,...
WHERE filterColumn=filterValue

Si nous voulions indiquer qu'Iron Man est maintenant dans nos livres et a un nouveau taux horaire de 18,5, notre instruction UPDATE et le résultat ressembleraient à ceci :

UPDATE Superheroes
SET
	IsActive = 'True',
	HourlyRate = 18.5
WHERE
	ID = 5
IDNameIsActiveHourlyRateEmployeeType
1BatmanTrue10.95Full Time
2SupermanFalse8.50Part Time
3Wonder WomanTrue12.20Part Time
4The HulkTrue18.10Full Time
5Iron ManTrue18.50Part Time
6The WaspFalse10.90Full Time
7SpidermanTrue14.10Part Time

DELETE

L'instruction DELETE supprime une ou plusieurs lignes d'une table. Si vous êtes novice en SQL, assurez-vous d'utiliser une base de données de test avant d'essayer cette commande, car il est souvent impossible de récupérer ce que vous avez supprimé !

Les instructions DELETE ressemblent généralement à ceci :

DELETE tableName
WHERE  filterColumn=filterValue;

Si l'un de nos super-héros connaît une fin prématurée et que nous devons le supprimer de notre base de données, nous ferons ceci :

DELETE FROM Superheroes
WHERE ID = 5

Le résultat ? Plus d'Iron Man.

IDNameIsActiveHourlyRateEmployeeType
1BatmanTrue10.95Full Time
2SupermanFalse8.50Part Time
3Wonder WomanTrue12.20Part Time
4The HulkTrue18.10Full Time
6The WaspFalse10.90Full Time
7SpidermanTrue14.10Part Time

2. Les jointures SQL

Les jointures SQL ajoutent 10 % à votre banque de connaissances. Les jointures rassemblent différentes tables afin que les données puissent être analysées collectivement.

Les jointures sont utiles si vous avez différentes catégories de données présentes dans différentes tables, ou si vous voulez comparer de nouvelles données à celles d'une base de données existante.

Il existe plusieurs types de jointures en SQL. La structure de base d'une jointure est la suivante :

SELECT Columns
 FROM Table1
JOIN Table2 ON Table1.Column = Table2.Column

Pour poursuivre notre exemple, imaginons que nous voulions savoir quel super-héros appartient à quel univers. Nous avons une table appelée SuperheroUniverse qui contient l'ID du super-héros et le nom de l'univers. Nous voulons joindre les deux tables afin de pouvoir afficher l'Univers lorsque nous interrogeons la table Superhero.

Notre table SuperheroUniverse ressemble à ceci :

IDSuperheroIDUniverse
11DC
22DC
33DC
44Marvel
55Marvel
66Marvel
77Marvel

Et notre requête de jointure ressemble à ceci :

SELECT Superheroes.ID, Name, SuperheroUniverse.Universe 
FROM Superheroes
JOIN SuperheroUniverse ON SuperheroUniverse.ID = Superheroes.ID

Voici le résultat :

IDNameUniverse
1BatmanDC
2SupermanDC
3Wonder WomanDC
4The HulkMarvel
6The WaspMarvel
7SpidermanMarvel

Puisque les deux tables ont un champ appelé ID, nous avons explicitement dû dire quelle colonne ID afficher dans nos résultats. Dans la partie Superheroes.ID du SELECT, Superheroes fait référence à la table et ID à la colonne. Il en va de même pour la partie SuperheroUniverse.Univers du SELECT, où SuperheroUniverse fait référence à la table et Universe à la colonne. Vous pouvez voir cela dans la première colonne après le SELECT.

3. Le reste

Et puis il y a le reste. Toutes les fonctionnalités de SQL entrent dans cette catégorie et, bien qu'elles ne soient pas indispensables au départ, elles peuvent être très importantes.

Savez-vous comment concevoir un schéma de base de données exploitable ? Comment lire un plan de requête ? Quand faut-il utiliser une clé naturelle ou une clé de substitution ? Toutes ces choses et bien d'autres encore font partie de la catégorie "le reste". En termes de temps d'apprentissage, il y a des personnes qui travaillent avec SQL depuis plus de 10 ans et qui ne connaissent pas tout le "reste".

Ne vous laissez pas décourager par cela. L'apprentissage est l'affaire de toute une vie, et il n'y a guère de plaisir à tout savoir en un clin d'œil.

Que doit savoir un débutant en SQL ? Vous feriez bien de vous familiariser avec les éléments suivants :

  • Les commandes SQL de base comme SELECT, INSERT, UPDATE et DELETE.
  • Les expressions WHERE simples
  • Les nombreux types de jointures (JOIN) de SQL
  • GROUP BY, ORDER BY et HAVING
  • Sous-requêtes de base
  • Clés primaires et clés étrangères

Vous vous sentez dépassé ? Il n'y a pas lieu de s'inquiéter. Voyez les choses ainsi. Les utilisateurs de la langue anglaise peuvent être des locuteurs fonctionnels avec un vocabulaire d'environ 5 000 mots. Ils peuvent même être capables d'écrire un roman avec autant de mots. Mais peuvent-ils s'appeler Shakespeare ou Twain ? Bien sûr que non. Être compétent en SQL ne signifie pas avoir toutes les réponses. Il suffit de connaître environ 5 % du SQL pour effectuer la plupart des tâches importantes.

Ceci étant dit, quel est le chiffre magique ? Combien de temps faut-il pour apprendre le langage SQL ? Sur la base de notre expérience collective, d'une bonne dose de recherche et d'une pincée de généralisation, voici notre projection très peu scientifique du temps nécessaire à l'apprentissage de SQL :

  • Apprendre et pratiquer les bases ? Entre un jour et trois mois.
  • Le reste ? Vous ne cesserez jamais de l'apprendre.

Obstacles à l'apprentissage de SQL

En tant que débutant SQL - même si vous avez une grande expérience dans l'informatique - vous serez confronté à un certain nombre de défis. SQL est généralement un langage simple à apprendre, d'autant plus qu'il utilise des commandes basées sur le bon sens et l'anglais. Il y a cependant quelques obstacles à franchir pour le maîtriser :

S'habituer à penser en termes d'ensembles

Apprendre SQL pour gérer une ou plusieurs bases de données est une chose, mais vous devrez d'abord vous familiariser avec le monde des ensembles.

Les bases de données sont au cœur de la plupart des applications et sont conçues pour traiter les données par ensembles. SQL lui-même doit négocier avec les bases de données à l'aide d'ensembles, de sorte que l'adoption d'un état d'esprit basé sur les ensembles vous sera très utile lorsque vous utiliserez SQL pour la première fois.

Si vous n'êtes pas familier avec la théorie des ensembles, suivez d'abord un cours accéléré sur Google - cela vous permettra de mieux réussir en tant qu'étudiant de SQL.

Presque tous les domaines de l'informatique tournent autour des ensembles, donc si vous prêtez attention à ce sujet maintenant, vous ne perdrez jamais votre temps.

Connaissances théoriques ou connaissances pratiques

Le deuxième obstacle à l'apprentissage de SQL n'est pas tant une barrière qu'un piège. Pour comprendre SQL, vous devez lire beaucoup. Vous devrez lire et apprendre les instructions de base, lire et apprendre les prémisses de base de SQL et la façon d'effectuer vos requêtes, et lire et apprendre la théorie des ensembles et la conception de bases de données.

MAIS, à la suite de quelques lectures initiales, notre conseil est le suivant : mettez-vous au travail. Accédez à une base de données (de préférence une base de test), créez ou trouvez des scénarios et utilisez votre nouvelle connaissance des instructions SQL de base pour vous amuser avec elles.

L'écart entre les connaissances théoriques et les connaissances pratiques de SQL est important, et vous devrez veiller à le combler par de nombreux exercices pratiques.

Devenir un expert en conception de bases de données

Vous pouvez devenir aussi doué que vous le souhaitez pour exécuter des instructions SQL et travailler avec une ou plusieurs bases de données. Mais si vous ne comprenez pas les principes de conception des bases de données, vous finirez par créer et maintenir des bases de données désordonnées et sujettes à des problèmes. Ces bases de données semblent travailler contre vous, et non pour vous.

Avant d'aller trop loin sur l'autoroute SQL, rangez-vous sur le côté et apprenez-en un peu plus sur la bonne conception des bases de données.

De nombreuses bases de données sont créées par des personnes qui n'ont pas beaucoup d'expérience dans la conception et le développement de bases de données. Malheureusement, cela conduit souvent à des décisions techniques qui s'avèrent par la suite sous-optimales. Cela signifie beaucoup de frustration, beaucoup de solutions de contournement, voire des erreurs dans les données elles-mêmes.

Quelle est la meilleure façon d'apprendre SQL ?

Quel que soit le temps nécessaire à l'apprentissage de SQL, vous vivrez une meilleure expérience si vous suivez quelques conseils. Voici nos trois meilleurs conseils pour faire de votre apprentissage de SQL une expérience rapide et facile :

1) Commencez par les bases

L'apprentissage des aspects les plus complexes de SQL peut prendre des années - en fait, la plupart des experts SQL disent qu'ils ne cessent jamais d'apprendre. Ne vous lancez donc pas dans l'aventure en espérant obtenir immédiatement une médaille d'or en SQL. Non seulement les bases sont faciles et rapides à apprendre, mais elles représentent également une grande partie de ce dont vous aurez besoin pour utiliser SQL à titre professionnel.

Chacun est différent, mais l'apprentissage des instructions SQL de base peut prendre de quelques heures à quelques semaines. Il faut parfois des mois pour les maîtriser, mais une fois que vous aurez compris les concepts qui se cachent derrière des instructions telles qu'INSERT, UPDATE et DELETE, vous serez très bien placé pour les utiliser dans le monde réel.

Il est préférable de s'en tenir au site SQL pour les débutants jusqu'à ce que vous ayez l'impression de les maîtriser. Si vous passez à la composition de requêtes complexes avant d'être prêt, vous risquez de commettre de graves erreurs par la suite.

2) Suivez un cours en ligne

Vous êtes peut-être un excellent apprenant autodidacte, mais lorsque vous apprenez le langage SQL en partant de zéro, vous risquez de compliquer les choses à l'excès. Les bases du SQL sont assez simples, et de nombreuses personnes vous ont précédé dans ce parcours d'apprentissage. La solution la plus logique est donc de suivre les sentiers battus et de suivre un cours qui n'enseigne que ce qui est nécessaire et vous donne de nombreuses occasions de vous exercer.

3) Privilégiez l'apprentissage par la pratique

Apprendre à piloter un avion ? Faire une opération du cerveau ? Fendre des atomes ? Il vous faudra d'abord lire beaucoup de choses. Mais pour SQL, la meilleure chose à faire est de vous lancer et de vous salir les mains. Trouvez-vous une base de données open source gratuite et commencez à composer et à exécuter des requêtes de base.

Si vous trouvez une bonne base de données de test, étudiez-la. Vérifiez le code qui sous-tend les différentes requêtes et procédures. Vous vous familiariserez très vite avec le langage SQL. Les exemples réels dans un environnement de base de données de test constituent le meilleur outil de formation.

Selon les mots immortels de Ben Franklin :

"Dites-moi et j'oublie. Apprenez-moi et je me souviens. Faites-moi participer et j'apprends."

(Ce ne serait pas un article en ligne sans Ben Franklin !)

Prenez un bon départ en SQL avec Vertabelo

Est-il difficile d'apprendre SQL ?

Eh bien, vous ne saurez jamais vraiment tout... pas complètement. Tout comme vous trouvez toujours de nouveaux mots en anglais, il y aura toujours une nouvelle astuce SQL à maîtriser. Cela dit, vous pouvez apprendre beaucoup de choses, et une bonne compréhension de base vous permettra de devenir un véritable utilisateur de SQL en quelques semaines.

Un bon point de départ est un cours SQL en ligne. Trouvez-en un qui vous permettra d'utiliser le langage immédiatement. LearnSQL.com propose un cours fantastique sur SQL pour les débutants qui permet d'apprendre SQL rapidement et facilement. Ses 129 exercices interactifs vous permettent de vous familiariser avec les bases de données et les instructions SQL.

Une fois que vous avez terminé, consultez notre cours INSERT, UPDATE et DELETE. Il vous permettra d'approfondir vos nouvelles connaissances des instructions SQL clé.

Les bases de données sont des bêtes complexes. La meilleure façon de les apprivoiser est d'apprendre, de s'exercer et de consulter Google à longueur de journée.

Plus tôt vous commencerez, plus vite, vous y arriverez ! Bonne chance !