Questions sur l'instruction SQL SELECT

1. Identify the capabilities of SELECT statement.

  1. Projection
  2. Selection
  3. Contrôle des données
  4. Transaction

Answer: A, B. L'instruction SELECT peut être utilisée pour la sélection, la projection et la jointure.

2. Determine the capability of the SELECT statement demonstrated in the given query.

SELECT e.ename, d.dname
FROM   emp e, dept d
WHERE  e.deptno = d.deptno
AND    e.sal > 1000;
  1. Selection
  2. Filtering
  3. Joining
  4. Projection

Answer: A, C, D.La projection inclut uniquement les colonnes requises dans la requête, tandis que Selection sélectionne uniquement les données requises. Joindre signifie combiner deux tables ensemble via une colonne de connexion.

3. Which of the following clause is used to suppress duplicates in a SELECT statement?

  1. INTERSECT
  2. DUPLICATE
  3. DISTINCT
  4. UNIQUE

Answer: C, D. Les données en double peuvent être restreintes avec l'utilisation de DISTINCT ou UNIQUE dans l'instruction SELECT.

4. Chose the statements which correctly specify a rule to write a SQL statement

  1. Les instructions SQL sont sensibles à la casse
  2. Les mots clés peuvent être abrégés pour créer une norme
  3. Les instructions SQL sont sensibles à la casse
  4. les clauses doivent être placées ensemble

Answer: C.Les instructions SQL ne sont pas sensibles à la casse.

5. Determine the output of the below query -

SELECT '5+7' 
FROM dual;
  1. 12
  2. 5+7
  3. 5
  4. 7

Answer: B.Oracle traite les valeurs entre guillemets doubles comme des expressions de chaîne.

6. Write a query to display employee details (Name, Department, Salary and Job) from EMP table.

  1. SELECT ename, deptno, sal, job FROM emp;
  2. SELECT * FROM emp;
  3. SELECT DISTINCT ename, deptno, sal, job FROM emp;
  4. SELECT ename, deptno, sal FROM emp;

Answer A.Sélectionnez les éléments requis dans les tableaux séparés par une virgule.

7. Which of the below queries displays employees' name and new salary after the increment of 1000?

  1. SELECT ename, sal FROM emp;
  2. SELECT ename, sal=sal+1000 FROM emp;
  3. SELECT ename, sal+1000 FROM emp;
  4. SELECT ename, 1000 FROM emp;

Answer: C. Les calculs arithmétiques de base peuvent être effectués à l'aide des colonnes dans les instructions SELECT.

8. Determine the output of the below query

SELECT 36/2-5*10 FROM dual;
  1. 130
  2. -32
  3. -120
  4. 175

Answer: B. La multiplication et la division se produisent avant l'addition et la soustraction.

9. Determine the output of the below query

SELECT (100-25)/15*(20-3) FROM dual;
  1. 0.294
  2. -85
  3. 63.67
  4. 85

Answer: D. Les expressions entre crochets sont exécutées avant les divisions et les multiplications dans l'expression.

10. Chose the statements which correctly define a NULL value.

  1. NULL est une valeur spéciale avec zéro octet
  2. NULL n'est aucune valeur ou valeur inconnue
  3. NULL est représenté par un espace vide
  4. NULL est différent de zéro

Answer: B, D.NULL est NO VALUE mais ni identique à zéro ni à un caractère vide ou espace.

11. Determine the output of the below query

SELECT sal + NULL 
FROM emp
WHERE empno = 7369;
  1. sal + NULL
  2. NULL
  3. 0
  4. 1250

Answer: B. Toute opération arithmétique avec NULL donne NULL.

12. Which of the below statements define column alias correctly?

  1. Un alias de colonne renomme un en-tête de colonne
  2. Un alias de colonne est une colonne alternative dans une table
  3. Un alias de colonne peut être spécifié lors de la définition de la table
  4. Un alias de colonne suit immédiatement la colonne ou l'expression dans l'instruction SELECT

Answer: A, D. L'alias de colonne peut être utilisé pour nommer une expression dans l'instruction SELECT.

13. Specify the column alias NEWSAL for the expression containing salary in the below SQL query

SELECT ename, job, sal + 100 FROM emp;
  1. (sal + 100) COMME NEWSAL
  2. (sal + 100) ACTUALITÉS
  3. (sal + 100) EST NEWSAL
  4. sal + 100 IS NEWSAL

Answer: A, B.Utilisez 'AS' pour indiquer un nouvel alias à une expression de colonne.

14. Specify the column alias "New Salary" for the expression containing salary in the below SQL query

SELECT ename, job, sal + 100 FROM emp;
  1. (sal + 100) AS Nouveau salaire
  2. (sal + 100) "Nouveau salaire"
  3. (sal + 100) IS Nouveau salaire
  4. sal + 100 comme "Nouveau salaire"

Answer: B, D. Les alias de colonne avec espace et caractères spéciaux doivent être mis entre guillemets.

15. Which command is used to display the structure of a table?

  1. LIST
  2. SHOW
  3. DESCRIBE
  4. STRUCTURE

Answer: C.DESCRIBE est utilisé pour afficher la structure de la table.

16. Predict the output when below statement is executed in SQL* Plus?

DESC emp
  1. Déclenche l'erreur "SP2-0042: commande inconnue" desc emp "- reste de la ligne ignoré."
  2. Répertorie les colonnes de la table EMP
  3. Répertorie les colonnes de la table EMP, leur type de données et leur nullité
  4. Répertorie les colonnes de la table EMP ainsi que leurs types de données

Answer: C. DESCRIBE est utilisé pour afficher la structure de la table avec les colonnes de la table, leur type de données et la nullité

17. Which of the below statements are true about the DESCRIBE command?

  1. Il ne peut être utilisé que dans SQL * Plus
  2. Il peut être utilisé à la fois dans SQL * Plus et SQL Developer
  3. Cela ne fonctionne pas pour les tables d'objets
  4. Cela ne fonctionne pas pour les tables appartenant à SYS

Answer: B.

18. Which of the below alphanumeric characters are used to signify concatenation operator in SQL?

  1. +
  2. ||
  3. -
  4. ::

Answer: B.En SQL, l'opérateur de concaténation est représenté par deux barres verticales (||).

19. Which of the below statements are correct about the usage of concatenation operator in SQL?

  1. Il crée une colonne virtuelle dans la table
  2. Il génère une expression de caractère à la suite de la concaténation d'une ou plusieurs chaînes
  3. Il crée un lien entre deux colonnes de caractères
  4. Il peut être utilisé pour concaténer des expressions de date avec d'autres colonnes

Answer: B, D. L'opérateur de concaténation joint deux valeurs en tant qu'expression.

20. Predict the output of the below query

SELECT ename || NULL
FROM emp
WHERE empno = 7369
  1. SMITH
  2. SMITH NULL
  3. SMITHNULL
  4. ORA-00904: "NULL": identifiant invalide

Answer: A. La concaténation avec NULL donne la même valeur.

21. Predict the output of the below query

SELECT 50 || 0001
FROM dual
  1. 500001
  2. 51
  3. 501
  4. 5001

Answer: C. Les zéros au début de l'opérande droit de l'expression sont ignorés par Oracle.

22. You execute the below query

SELECT e.ename||' departments's name is:'|| d.dname
FROM emp e, dept d
where e.deptno=d.deptno;

And get the exception - ORA-01756: quoted string not properly terminated. Which of the following solutions can permanently resolve the problem?

  1. Utilisez des guillemets doubles pour la chaîne de caractères littérale
  2. Utilisez l'opérateur [q] pour mettre en file d'attente la chaîne de caractères littérale et sélectionner le délimiteur de votre choix
  3. Supprimez le guillemet simple (apostrophe) de la chaîne de caractères littérale
  4. Utilisez un autre délimiteur pour contourner l'apostrophe entre guillemets simples dans la chaîne littérale

Answer: B. L'opérateur [q] est utilisé pour mettre en file d'attente les littéraux de caractères avec un guillemet.

23. Which of the below SELECT statement shows the correct usage of [q] operator?

  1. SELECT e.ename || q'[department's name is]'|| d.dname
       FROM emp e, dept d
       WHERE e.deptno = d.deptno;
  2. SELECT e.ename || q['department's name is']|| d.dname
       FROM emp e, dept d
       WHERE e.deptno = d.deptno;
  3. SELECT e.ename || q[department's name is]|| d.dname
       FROM emp e, dept d
       WHERE e.deptno = d.deptno;
  4. SELECT e.ename || q'(department's name is)'|| d.dname
       FROM emp e, dept d
       WHERE e.deptno = d.deptno;

Answer: A

24. Which of the below SELECT statement is used to select all columns of EMP table?

  1. SELECT ALL FROM emp
  2. SELECT # FROM emp
  3. SELECT * FROM emp
  4. SELECT empno,ename,deptno,sal,job,mgr,hiredate FROM emp

Answer: C. Le caractère '*' permet de sélectionner toutes les colonnes du tableau.

25. Which of the below SQL query will display employee names, department, and annual salary?

  1. SELECT ename, deptno, sal FROM emp;
  2. SELECT ename, deptno, sal + comm FROM emp;
  3. SELECT ename, deptno, (sal * 12) Annual_Sal FROM emp;
  4. Le salaire annuel ne peut pas être interrogé car la colonne n'existe pas dans le tableau

Answer: C. Utilisez des expressions numériques dans l'instruction SELECT pour effectuer des calculs arithmétiques de base.