27th Apr 2022 9 minutes de lecture Une pratique complète du SQL pour les entretiens Marek Pankowski comment faire en sql marché du travail sql emplois et carrières carrière en science des données questions d'entretien sql Table des matières Questions SQL de base pour les entretiens d'embauche Exercices SQL pratiques pour l'entretien Exercice SQL 1 - Rédiger une instruction Exercice SQL 2 - Rédiger une instruction Exercice SQL 3 - Trouvez l'erreur Exercice SQL 4 - Trouvez le résultat Exercice SQL 5 - Écrire une requête Exercice SQL 6 - Ecriture d'une requête de date Exercice SQL 7 - Ecriture d'une requête Exercice SQL 8 - Trouver et supprimer les doublons Exercice SQL 9 - Rédiger une requête complexe Exercice SQL 10 - Écrire une requête complexe SQL avancé Questions pour le tableau blanc Félicitations ! Vos compétences en SQL étaient suffisamment solides pour vous permettre de décrocher cet entretien d'embauche ! Maintenant, si seulement vous saviez quelles questions et exercices pratiques SQL un recruteur pourrait vous demander.... Cet article est conçu comme un entraînement SQL pour les entretiens. Je vais vous aider à vous préparer aux aspects SQL et bases de données de votre entretien d'embauche. Dans un article précédent, j'ai expliqué comment vous pouvez booster votre carrière en apprenant SQL. Il ouvre des perspectives dans le domaine informatique et en dehors, car ce langage de requête est utilisé pratiquement partout. Imaginons que vous ayez enfin pris la décision d'utiliser vos compétences en SQL dans un nouvel emploi. Mais avant de commencer, vous devez passer l'entretien d'embauche. Votre interlocuteur peut utiliser plusieurs types de questions SQL sur tableau blanc : parfois, il vous demandera de décrire les différences entre deux éléments ; parfois, vous devrez lui communiquer le résultat d'une requête spécifique ; vous pourrez même avoir à écrire un code simple. Cela peut sembler stressant, mais ne vous inquiétez pas trop. La meilleure façon de se préparer à un entretien, c'est de s'entraîner. Je recommande la piste La pratique du SQL sur LearnSQL.com. Elle contient plus de 600 exercices SQL interactifs pour vous aider à réviser et à pratiquer le SQL avant un entretien. Dans cet article, je vous aiderai à vous préparer en passant en revue certaines questions et exercices SQL courants que les recruteurs utilisent au cours de l'entretien. Questions SQL de base pour les entretiens d'embauche Tout d'abord, concentrons-nous sur le côté plus théorique de SQL. Pour évaluer votre compréhension, le recruteur vous demandera probablement d'expliquer oralement des questions plus simples. Celles-ci portent généralement sur les parties élémentaires du langage SQL. Par exemple, on peut vous demander de répondre à certaines des questions suivantes sur le tableau blanc SQL : Énumérer et expliquer tous les éléments de base d'une requête SQL. Qu'est-ce que la clause WHERE? Que font les opérateurs LIKE et NOT LIKE? Expliquez l'utilisation des clauses AND, OR, et NOT. Qu'est-ce qu'une valeur NULL? Que fait un JOIN? Quels sont les différents types de clauses JOIN ? Expliquez la clause GROUP BY. Quelle est la différence entre les clauses WHERE et HAVING? Que fait ORDER BY? Que fait UNION? Quelle est la différence entre UNION et UNION ALL? Que font les clauses INTERSECT et MINUS? Quel est le rôle du mot-clé DISTINCT? Expliquez l'utilisation des alias dans les requêtes. Pouvez-vous répondre à toutes les questions de mon exercice SQL pour les entretiens ? Même les questions de base nécessitent une bonne préparation et beaucoup de pratique. Personne n'est parfait, et vous avez parfois besoin de rafraîchir vos connaissances. Nos cours en ligne peuvent vous aider à rafraîchir vos connaissances semi-oubliées. Exercices SQL pratiques pour l'entretien Les entretiens d'embauche dans le domaine technique ont souvent un aspect pratique. C'est là que vous devez prouver vos compétences en SQL telles que vous les utiliseriez dans la vie réelle. Outre les réponses aux questions typiques du tableau blanc SQL, on vous demandera d'écrire une instruction SQL, de vérifier l'absence d'erreurs dans une requête ou de déterminer le résultat d'une requête donnée. Ci-dessous, j'ai copié dix exercices SQL du type de ceux que vous pourriez faire lors d'un entretien d'embauche technique. Ils sont classés de faciles à difficiles. Exercice SQL 1 - Rédiger une instruction Ecrivez une instruction SQL qui liste les noms des écoles, les noms des étudiants et leurs villes seulement si l'école et l'étudiant sont dans la même ville et si l'étudiant n'est pas de New York. Table: school school_id school_name city ----------- ------------------ ---------- 1 Stanford Stanford 2 University of Cali San Francisco 3 Harvard University New York 4 MIT Boston 5 Yale New Haven Table: student student_id student_name city school_id ----------- ------------ ---------- ----------- 1001 Peter Brebec New York 1 1002 John Goorgy San Francisco 2 2003 Brad Smith New York 3 1004 Fabian Johns Boston 5 1005 Brad Cameron Stanford 1 1006 Geoff Firby Boston 5 1007 Johnny Blue New Haven 2 1008 Johse Brook Miami 2 Exercice SQL 2 - Rédiger une instruction Ecrivez une instruction SQL qui liste les noms des étudiants, les noms des matières, les professeurs des matières, et le nombre maximum de points pour toutes les matières sauf l'informatique et toutes les matières dont le score maximum est compris entre 100 et 200. Table: subject subject_id subject_name max_score lecturer ---------- ---------- ---------- ----------- 11 Math 130 Christena Solem 12 Computer Science 150 Jaime Pille 13 Biology 300 Carrol Denmark 14 Geography 220 Yuette Galang 15 Physics 110 Colton Rather 16 Chemistry 400 Nan Mongeau Table: student student_id student_name city subject_id ----------- ------------ ---------- ----------- 2001 Thurman Thorn New York 11 2002 Sharda Clemens San Francisco 12 2003 Buck Elkins New York 13 2004 Fabian Johns Boston 15 2005 Brad Cameron Stanford 11 2006 Sofia Roles Boston 16 2007 Rory Pietila New Haven 12 Exercice SQL 3 - Trouvez l'erreur Quelle est l'erreur de cette requête SQL ? SELECT Id, name, YEAR(BillingDate) AS Year FROM Records WHERE Year >= 2010 SELECT id, name FROM students WHERE grades = (SELECT MAX(grades) FROM students GROUP BY subject_id;); Exercice SQL 4 - Trouvez le résultat Étant donné les tables suivantes... Table: worker id name --- ----------- 1 Guillermo Sparks 2 Gene Roberts 3 Ally Jones 4 Bryant Summers 5 Candice Green Table: departments id name manager_id --- ------------- --------- 1 Financial 3 2 Strategy 5 3 IT 1 4 Marketing NULL ... Quel sera le résultat de la requête ci-dessous ? SELECT name FROM worker WHERE id NOT IN (SELECT manager_id FROM departments) Exercice SQL 5 - Écrire une requête La table EMPLOYEE a les attributs suivants : NAME, DEPT_ID, et SALARY. Rédigez une requête qui indique le salaire le plus élevé dans chaque département. Exercice SQL 6 - Ecriture d'une requête de date Ecrivez une requête SQL qui affiche la date actuelle. Exercice SQL 7 - Ecriture d'une requête Ecrivez une requête SQL qui vérifie si une date (1/04/12) passée à la requête est dans un format donné (MM/AAA/JJ). Exercice SQL 8 - Trouver et supprimer les doublons Écrivez une requête SQL pour trouver les lignes en double dans deux tables (EMPLOYEE et WORKERS), puis écrivez une requête pour supprimer les doublons. Exercice SQL 9 - Rédiger une requête complexe Ecrivez une requête qui liste les noms des sujets des cours et le nombre d'étudiants qui suivent le cours seulement si le cours a trois étudiants inscrits ou plus. Table: subject subject_id subject_name max_score lecturer ---------- ---------- ---------- ----------- 11 Math 130 Christena Solem 12 Computer Science 50 Jaime Pille 13 Biology 300 Carrol Denmark 14 Geography 220 Yuette Galang 15 Physics 110 Colton Rather 16 Chemistry 400 Nan Mongeau Table: student student_id student_name city subject_id ----------- ------------ ---------- ----------- 2001 Thurman Thorn New York 11 2002 Sharda Clemens San Francisco 12 2003 Buck Elkins New York 13 2004 Fabian Johns Boston 15 2005 Brad Cameron Stanford 11 2006 Sofia Roles Boston 16 2007 Rory Pietila New Haven 12 2008 Cicely Weish Tulsa 14 2011 Richard Curtin Boston 11 2012 Kassy Ledger Stanford 11 2013 Henry Ledger Miami 13 2014 Darius Fidzberg San Francisco 12 2015 Darcey Fiorillo Chicago 14 Exercice SQL 10 - Écrire une requête complexe Ecrivez une requête qui affiche l'âge moyen des travailleurs dans chaque entreprise. Le résultat doit indiquer le nom de l'entreprise et l'âge du plus jeune employé de l'entreprise. Table: company ID NAME ------ ------------- 1 Amazon 2 Samsung 3 LG 4 Kia 5 Lenovo Table: workers ID NAME AGE COMPANY_ID ------- ------------------------- ---------- ------------- 1 Derick Davison 20 5 2 Bari Becnel 50 1 3 Maddie Mueller 33 2 4 Eva Emrich 23 1 5 Katelyn Kunze 55 3 6 Hue Hover 26 2 7 Lucas Lout 57 4 8 Granville Grande 30 5 9 Robt Rude 39 3 10 Lisha Lewin 25 4 11 Aron Atlas 52 3 12 Chester Coddington 44 4 13 Diedre Dominy 31 1 14 Evie Edgell 35 2 15 Judy Johanson 36 5 SQL avancé Questions pour le tableau blanc OK, nous nous sommes déjà entraînés à utiliser le langage SQL pour les entretiens, mais nos exercices portaient sur les bases du SQL. Mais qu'en est-il d'un emploi plus avancé, comme celui de développeur SQL ou d'administrateur de base de données ? Les recruteurs ne s'intéresseront pas seulement à vos connaissances en SQL ; ils auront également besoin de savoir si vous maîtrisez les bases de données en général. Dans ce cas, voyez dans quelle mesure vous pouvez répondre oralement à des questions de tableau blanc SQL comme celles-ci : Que sont les clés primaires et étrangères ? Qu'est-ce que la normalisation ? Qu'est-ce que la dénormalisation ? Qu'est-ce qu'un index ? Pouvez-vous expliquer brièvement les différents types d'index ? Pouvez-vous expliquer les relations entre bases de données et les types de relations ? Qu'est-ce qu'un curseur de base de données ? Qu'est-ce qu'une contrainte ? Qu'est-ce qu'une transaction de base de données ? Un verrou de base de données ? Comment utiliser la fonction NULLIF? Quel est l'objectif de la fonction NVL? Quelle est la différence entre les fonctions RANK() et DENSE_RANK()? Quelle est la différence entre les types de données VARCHAR2 et CHAR? Une fois encore, même si vous connaissez les réponses à ces questions, il est utile de vous exercer. Vous pouvez même vous entraîner à y répondre à voix haute ! Vous voyez donc que les questions et exercices SQL sur tableau blanc ne sont pas aussi effrayants que vous le pensez. Bien sûr, ce n'est pas non plus un jeu d'enfant. Nous avons passé en revue certaines méthodes courantes d'évaluation des compétences, mais beaucoup dépend de l'imagination et de l'expérience de votre interlocuteur. Le plus important est de montrer au recruteur que vous comprenez le fonctionnement de SQL et que vous pouvez, si nécessaire, trouver de l'aide sur Internet. Si vous n'avez pas d'entretien à l'horizon, c'est le moment d'affiner vos compétences en SQL. Quoi qu'il en soit, j'espère que cet article vous a permis de vous entraîner à la pratique du SQL pour les entretiens et vous a aidé à savoir à quoi vous attendre et comment vous préparer à un entretien d'embauche lié au SQL lorsque vous en aurez un ! Tags: comment faire en sql marché du travail sql emplois et carrières carrière en science des données questions d'entretien sql