Domande sull'istruzione SQL SELECT

1. Identify the capabilities of SELECT statement.

  1. Projection
  2. Selection
  3. Controllo dei dati
  4. Transaction

Answer: A, B. L'istruzione SELECT può essere utilizzata per la selezione, la proiezione e l'unione.

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 proiezione include solo le colonne richieste nella query, mentre la selezione seleziona solo i dati richiesti. Unire significa combinare due tabelle insieme tramite una colonna di collegamento.

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. I dati duplicati possono essere limitati con l'utilizzo di DISTINCT o UNIQUE nell'istruzione SELECT.

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

  1. Le istruzioni SQL fanno distinzione tra maiuscole e minuscole
  2. Le parole chiave possono essere abbreviate per creare uno standard
  3. Le istruzioni SQL fanno distinzione tra maiuscole e minuscole
  4. le clausole devono essere messe insieme

Answer: C.Le istruzioni SQL non fanno distinzione tra maiuscole e minuscole.

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 tratta i valori tra virgolette doppie come espressioni di stringa.

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.Selezionare il richiesto dalle tabelle, ciascuna separata da una virgola.

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. I calcoli aritmetici di base possono essere eseguiti utilizzando le colonne nelle istruzioni 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 moltiplicazione e la divisione si verificano prima dell'addizione e della sottrazione.

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. L'espressione all'interno delle parentesi viene eseguita prima delle divisioni e delle moltiplicazioni nell'espressione.

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

  1. NULL è un valore speciale con zero byte
  2. NULL non è un valore o un valore sconosciuto
  3. NULL è rappresentato da uno spazio vuoto
  4. NULL non è uguale a zero

Answer: B, D.NULL è NO VALUE ma non è uguale a zero né come carattere vuoto o spazio.

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. Qualsiasi operazione aritmetica con NULL risulta in NULL.

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

  1. Un alias di colonna rinomina un'intestazione di colonna
  2. Un alias di colonna è una colonna alternativa in una tabella
  3. È possibile specificare un alias di colonna durante la definizione della tabella
  4. Un alias di colonna segue immediatamente la colonna o l'espressione nell'istruzione SELECT

Answer: A, D. L'alias di colonna può essere utilizzato per denominare un'espressione nell'istruzione 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) COME NEWSAL
  2. (sal + 100) NOTIZIA
  3. (sal + 100) È NOTIZIA
  4. sal + 100 È NEWSAL

Answer: A, B.Utilizza "AS" per indicare un nuovo alias a un'espressione di colonna.

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) COME nuovo stipendio
  2. (sal + 100) "Nuovo stipendio"
  3. (sal + 100) È il nuovo stipendio
  4. sal + 100 come "Nuovo stipendio"

Answer: B, D. L'alias di colonna con spazio e caratteri speciali deve essere racchiuso tra virgolette doppie.

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

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

Answer: C.DESCRIBE viene utilizzato per mostrare la struttura della tabella.

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

DESC emp
  1. Genera l'errore "SP2-0042: comando sconosciuto" desc emp "- resto della riga ignorato."
  2. Elenca le colonne della tabella EMP
  3. Elenca le colonne della tabella EMP, il loro tipo di dati e la nullità
  4. Elenca le colonne della tabella EMP insieme ai loro tipi di dati

Answer: C. DESCRIBE viene utilizzato per mostrare la struttura della tabella insieme alle colonne della tabella, il tipo di dati e la nullità

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

  1. Può essere utilizzato solo in SQL * Plus
  2. Può essere utilizzato sia in SQL * Plus che in SQL Developer
  3. Non funziona per le tabelle degli oggetti
  4. Non funziona per le tabelle di proprietà di SYS

Answer: B.

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

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

Answer: B.In SQL, l'operatore di concatenazione è rappresentato da due barre verticali (||).

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

  1. Crea una colonna virtuale nella tabella
  2. Genera un'espressione di caratteri come risultato della concatenazione di una o più stringhe
  3. Crea un collegamento tra due colonne di caratteri
  4. Può essere utilizzato per concatenare espressioni di data con altre colonne

Answer: B, D. L'operatore di concatenazione unisce due valori come un'espressione.

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": identificatore non valido

Answer: A. La concatenazione con NULL produce lo stesso valore.

21. Predict the output of the below query

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

Answer: C. Gli zeri iniziali nell'operando destro di espressione vengono ignorati da 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. Usa virgolette doppie per la stringa di caratteri letterali
  2. Utilizzare l'operatore [q] per enquotare la stringa di caratteri letterali e selezionare il delimitatore di scelta
  3. Rimuovere le virgolette singole (apostrofo) dalla stringa di caratteri letterali
  4. Utilizzare un altro delimitatore per ignorare l'apostrofo delle virgolette singole nella stringa letterale

Answer: B. L'operatore [q] viene utilizzato per indicare i caratteri letterali con una citazione.

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. Il carattere "*" viene utilizzato per selezionare tutte le colonne della tabella.

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. Non è possibile interrogare lo stipendio annuale poiché la colonna non esiste nella tabella

Answer: C. Utilizzare espressioni numeriche nell'istruzione SELECT per eseguire calcoli aritmetici di base.