Aller au contenu

Base de données - SQL

·4 mins·

1. Quel ordre SQL permet de vider les lignes de la table MA_TABLE ?
#

  • DELETE TABLE MA_TABLE;
  • DROP TABLE MA_TABLE;
  • TRUNCATE TABLE MA_TABLE;
  • REMOVE TABLE MA_TABLE;

2. Quels ordres SQL permettent de créer correctement la table Persons avec notamment une clé primaire sur le champ Id_person ?
#

Attention : plusieurs réponses possibles.

  • CREATE TABLE Persons(Id_person, Lastname, Firstname) AS (Number(8), Varchar2(50), Varchar2(50)) WITH PRIMARY KEY ON Id_person;
  • CREATE TABLE Persons(Id_person Number(8) NOT NULL PRIMARY KEY, Lastname Varchar2(50), Firstname Varchar2(50))
  • CREATE TABLE Persons(Id_person Number(8), Lastname Varchar2(50), Firstname Varchar2(50)) WITH PRIMARY KEY ON Id_person;
  • CREATE TABLE Persons(Id_person Number(8), Lastname Varchar2(50), Firstname Varchar2(50), CONSTRAINT pk_Person PRIMARY KEY (Id_person));

3. Quelle réponse correspond à un des intérêts majeurs d’une vue ?
#

  • Optimiser les performances de requêtes sur une table
  • Simplifier les sélections utilisant fréquemment une même sous requête
  • Diminuer la charge serveur lors des sélections multiples sur une table
  • Limiter le nombre d’objets présents dans la base

4. Comment faites-vous pour sélectionner tous les enregistrements de la table Persons dont le nom commence par un P ?
#

  • SELECT * FROM Persons WHERE FirstName='p*'
  • SELECT * FROM Persons WHERE FirstName BEGINS WITH 'p'
  • SELECT * FROM Persons WHERE FirstName LIKE 'p*'
  • SELECT * FROM Persons WHERE FirstName LIKE 'P%'

5. Quelles requêtes permettent de sélectionner les lignes de la table Persons dont le FirstName est Peter et dont l’Age est soit 18 ans soit 19 ans ?
#

Attention : plusieurs réponses possibles.

  • SELECT * FROM Persons WHERE FirstName = 'Peter' AND Age IN (18,19)
  • SELECT * FROM Persons WHERE FirstName = 'Peter' AND Age = 18 OR Age = 19
  • SELECT * FROM Persons WHERE FirstName = 'Peter' AND Age BETWEEN (18, 19)
  • SELECT * FROM Persons WHERE FirstName = 'Peter' AND (Age = 18 OR Age = 19)

6. Indiquez la requête permettant de sélectionner les personnes dont le prénom n’est pas renseigné
#

  • SELECT * FROM Persons WHERE FirstName IS EMPTY
  • SELECT * FROM Persons WHERE FirstName IS NULL
  • SELECT * FROM Persons WHERE FirstName = NULL
  • SELECT * FROM Persons WHERE FirstName = EMPTY

7. En SQL, comment sélectionnez-vous les enregistrements de la table Persons dont le FirstName est Peter et le LastName est Jackson ?
#

  • SELECT FirstName='Peter' LastName='Jackson' FROM Persons
  • SELECT * FROM Persons WHERE (FirstName, LastName) = ('Peter', 'Jackson')
  • SELECT * FROM Persons HAVING FirstName = 'Peter' and LastName = 'Jackson'
  • SELECT * FROM Persons WHERE FirstName='Peter' AND LastName='Jackson'

8. Quel mot clé est toujours associé à la fonction MAX() ?
#

  • DISTINCT
  • OVER
  • GROUP BY
  • COUNT

9. Quels mots clé permettent d’effectuer une jointure stricte entre deux tables ?
#

  • INNER JOIN
  • OUTER MATCH
  • CROSS MATCH
  • OUTER JOIN

10. Quelle requête NE permet PAS de récupérer les valeurs distinctes de la colonne LastName ?
#

  • SELECT LastName FROM Persons GROUP BY LastName HAVING COUNT(*) = 1
  • SELECT ABC FROM (SELECT DISTINCT LastName AS ABC FROM Persons) AA
  • SELECT DISTINCT LastName FROM Persons ORDER BY LastName DESC
  • SELECT MAX(LastName) FROM Persons GROUP BY LastName

11. Quel ordre permet de récupérer toutes les lignes de la table A et certaines lignes de la table B ?
#

  • SELECT * FROM A CROSS JOIN B ON A.ID = B.ID
  • SELECT * FROM A RIGHT OUTER JOIN B ON A.ID = B.ID
  • SELECT * FROM A LEFT OUTER JOIN B ON A.ID = B.ID
  • SELECT * FROM A INNER JOIN B ON A.ID = B.ID

12. Quel ordre d’insertion est correct ?
#

  • INSERT INTO Persons VALUES (LastName, 'Olsen')
  • INSERT VALUE ('Olsen') INTO Persons (LastName)
  • INSERT INTO Persons (LastName) VALUES ('Olsen')
  • INSERT VALUE (LastName, 'Olsen') INTO Persons

13. Quelle requête permet de mettre à jour le champ LastName dans la table Persons ?
#

  • UPDATE TABLE Persons SET LastName = 'Nilsen' WHERE LastName = 'Hansen'
  • UPDATE Persons SET LastName = 'Hansen' WHERE LastName = 'Nilsen'
  • UPDATE Persons SET LastName = 'Hansen' WHERE LastName = Nilsen
  • UPDATE INTO Persons SET LastName = 'Hansen' WHERE LastName = 'Nilsen'

14. Quelle requête de suppression de ligne est correcte ?
#

  • DELETE ROW FirstName='Peter' FROM Persons
  • DELETE FROM Persons WHERE FirstName = 'Peter'
  • DELETE * FROM Persons WHERE FirstName = 'Peter'
  • DELETE FirstName='Peter' FROM Persons

15. Avec SQL, comment pouvez-vous supprimer les lignes où le « Firstname » est Peter dans la table de personnes ?
#

  • DELETE ROW FirstName='Peter' FROM Persons
  • DELETE FROM Persons WHERE FirstName = 'Peter'
  • DELETE FirstName='Peter' FROM Persons
Thibault CLEMENT - Intechnia
Auteur
Thibault CLEMENT - Intechnia
Data Scientist / ML Engineer