Perguntas de expressões condicionais
1. What is true about data types in Oracle DB?
- Eles são atribuídos a colunas para fins de classificação.
- Eles são dados a colunas para uma representação estruturada em uma tabela.
- Eles são atribuídos a colunas para restringir a natureza dos dados que podem armazenar.
- Eles não são obrigatórios.
Answer: C. Os tipos de dados definem a natureza dos dados que uma coluna pode armazenar em uma tabela. Uma coluna pode armazenar apenas um tipo de dados. Os principais tipos de dados disponíveis no Oracle são NUMBER, VARCHAR2 e DATE.
2. What is true about nested functions?
- Há um limite para usar as funções aninhadas apenas 5 vezes no banco de dados Oracle.
- Eles são avaliados do nível mais externo ao nível mais interno.
- Eles são avaliados do nível mais interno ao nível mais externo.
- Todas as funções em uma expressão aninhada retornam o mesmo tipo de dados.
Answer: C. As funções de linha única podem agrupar funções que podem ser aninhadas em uma consulta SELECT na qual a função mais interna é a primeira a ser executada. O resultado da execução da função interna serve como entrada para a função externa.
3. Which of the following functions simplify working with columns that potentially contain null values?
- Funções aninhadas
- Funções gerais
- Funções condicionais
- Nenhuma das acima
Answer: B. As funções gerais como NVL, NVL2, NULLIF e COALESCE são usadas para pacificar o efeito de NULL ao exibir os resultados da consulta. Eles ignoram os valores NULL atribuindo um valor alternativo.
4. Which of the following data types are appropriate for general functions?
- VARCHAR2
- NUMBER
- DATE
- Todos os tipos de dados
Answer: D. As funções gerais geralmente são compatíveis com todos os tipos de dados primários, como NUMBER, VARCHAR2 e DATE.
5. What is true about the COALESCE function?
- Aceita no mínimo 2 e no máximo 5 parâmetros de entrada
- Sempre retorna o primeiro valor NULL entre os parâmetros de entrada
- Ele pode aceitar um número ilimitado de parâmetros de entrada
- Ele retorna o primeiro parâmetro não nulo, caso contrário, retorna um nulo.
Answer: C, D. A função COALESCE leva dois parâmetros obrigatórios e qualquer número de parâmetros opcionais. A sintaxe é COALESCE (expr1, expr2, Ö, exprn), onde expr1 é retornado se não for nulo, caso contrário, expr2 se não for nulo e assim por diante. COALESCE é uma forma geral da função NVL, como as duas equações a seguir ilustram: COALESCE (expr1, expr2) = NVL (expr1, expr2), COALESCE (expr1, expr2, expr3) = NVL (expr1, NVL (expr2, expr3) )
6. How many input parameters are mandatory in NVL function?
- 0
- 1
- 2
- 3
Answer: C. A função NVL leva dois parâmetros obrigatórios. Sua sintaxe é NVL (original, se nulo), onde original representa o termo que está sendo testado e se nulo é o resultado retornado se o termo original for avaliado como nulo. Os tipos de dados dos parâmetros original e ifnull devem sempre ser compatíveis. Eles devem ser do mesmo tipo ou deve ser possível converter implicitamente ifnull para o tipo do parâmetro original. A função NVL retorna um valor com o mesmo tipo de dados do parâmetro original.
7. What is wrong in the following statement?
NVL (ifnull, original)
- Não há nada errado
- O parâmetro original não é necessário
- O parâmetro 'ifnull' não é necessário
- A declaração correta é NVL (original, se nulo)
Answer: D. A função NVL avalia se uma coluna ou expressão de qualquer tipo de dados é nula ou não. Se o termo for nulo, um valor alternativo não nulo será retornado; caso contrário, o termo inicial é retornado.
8. What will be the output of the following query?
SELECT NVL(1234) FROM dual;
- 1234
- 1000
- NULL
- ORA-00909: erro de número inválido de argumentos
Answer: D. A função NVL leva dois parâmetros obrigatórios. Sua sintaxe é NVL (original, se nulo), onde original representa o termo que está sendo testado e se nulo é o resultado retornado se o termo original for avaliado como nulo.
9. What will be output of the following query?
SELECT NVL(1234,' ') FROM dual;
- Um espaço em branco, ou seja, ''
- 1234
- Valor NULL
- ORA-01722: número inválido
Answer: D. Os tipos de dados dos parâmetros original e ifnull devem sempre ser compatíveis. Eles devem ser do mesmo tipo ou deve ser possível converter implicitamente ifnull para o tipo do parâmetro original. A função NVL retorna um valor com o mesmo tipo de dados do parâmetro original. O 1234 deve estar entre aspas simples. A conversão implícita de tipo de dados não ocorre neste caso.
10. What will be outcome of the following query?
SELECT NVL(SUBSTR('abc',-4),'SUBSTR didn't work') FROM dual;
- abc
- bc
- c
- SUBSTR não funcionou
Answer: D.
11. You need to extract a report which gives the first name, last name and the commission percentage earned by all the employees in department 100. The report should not have any columns which are empty. All the columns should have at least a '0' if there is no value for them. Which of the following queries will fulfill this requirement? (Consider the table structure as given)
SQL> DESC employees
Name Null? Type
----------------------- -------- ----------------
EMPLOYEE_ID NOT NULL NUMBER(6)
FIRST_NAME VARCHAR2(20)
LAST_NAME NOT NULL VARCHAR2(25)
EMAIL NOT NULL VARCHAR2(25)
PHONE_NUMBER VARCHAR2(20)
HIRE_DATE NOT NULL DATE
JOB_ID NOT NULL VARCHAR2(10)
SALARY NUMBER(8,2)
COMMISSION_PCT NUMBER(2,2)
MANAGER_ID NUMBER(6)
DEPARTMENT_ID NUMBER(4)
SELECT first_name, last_name, commission_pct*salary FROM employees WHERE department_id = 100;
SELECT first_name, last_name, NVL(commission_pct*salary,0) monthly_commission FROM employees WHERE department_id = 100;
SELECT first_name, last_name, NVL(commission_pct,0)*salary monthly_commission FROM employees WHERE department_id = 100;
SELECT first_name, last_name, commission_pct*salary FROM employees;
Answer: B, C.
12. What are the types of Data conversions in Oracle DB?
- Conversões implícitas
- Conversões explícitas
- Conversões externas
- Conversões físicas
Answer: A, B. TO_CHAR, TO_NUMBER e TO_DATE são as três funções de conversão mais amplamente usadas e são discutidas em detalhes. A função TO_CHAR converte informações numéricas e de data em caracteres, enquanto TO_NUMBER e TO_DATE convertem dados de caracteres em números e datas, respectivamente.
13. What happens during an implicit conversion in Oracle DB?
- O banco de dados Oracle converte implicitamente um tipo de dados no tipo de dados esperado
- O usuário deve converter o tipo de dados para o tipo de dados esperado
- O banco de dados Oracle não converte nenhum tipo de dados
- A conversão implícita pode ser controlada pelo usuário
Answer: A. Se o banco de dados Oracle converter implicitamente um valor em um tipo de dados compatível, isso é conhecido como conversão implícita.
14. What happens during an explicit conversion in Oracle DB?
- O banco de dados Oracle converte um tipo de dados em outro e exibe ao usuário explicitamente
- O banco de dados Oracle solicita que o usuário converta um tipo de dados em outro e, em seguida, converte o tipo de dados
- O usuário usa funções de conversão fornecidas pelo banco de dados Oracle para converter tipos de dados
- O tipo de dados nunca é convertido explicitamente no banco de dados Oracle
Answer: C. Quando o programador precisa converter programaticamente um valor usando uma das funções de conversão, isso é conhecido como conversão explícita.
15. Which of the following conversion methods is recommended for the reliability of SQL statements in Oracle DB?
- Conversões implícitas e explícitas
- Conversão implícita
- Conversão explícita
- Nenhuma das acima
Answer: C. TO_CHAR, TO_NUMBER e TO_DATE são as três funções de conversão mais amplamente usadas e são discutidas em detalhes. A função TO_CHAR converte informações numéricas e de data em caracteres, enquanto TO_NUMBER e TO_DATE convertem dados de caracteres em números e datas, respectivamente.
16. Which of the following is a valid implicit conversion performed by Oracle?
- NÚMERO PARA VARCHAR2
- NÚMERO ATÉ DATA
- CHAR ATÉ DATA
- DATA PARA VARCHAR2
Answer: A, D.
17. Examine the structure of the EMPLOYEES table as given.
SQL> DESC employees
Name Null? Type
----------------------- -------- ----------------
EMPLOYEE_ID NOT NULL NUMBER(6)
FIRST_NAME VARCHAR2(20)
LAST_NAME NOT NULL VARCHAR2(25)
EMAIL NOT NULL VARCHAR2(25)
PHONE_NUMBER VARCHAR2(20)
HIRE_DATE NOT NULL DATE
JOB_ID NOT NULL VARCHAR2(10)
SALARY NUMBER(8,2)
COMMISSION_PCT NUMBER(2,2)
MANAGER_ID NUMBER(6)
DEPARTMENT_ID NUMBER(4)
Qual método de conversão é aplicado à consulta a seguir?
SELECT first_name, salary
FROM employees
WHERE hire_date > '01-JAN-13';
- Nenhuma conversão acontece e esta consulta resulta em um erro ORA
- Conversão explícita
- Conversão implícita
- Conversão implícita e explícita
Answer: C. A string (VARCHAR2 ou CHAR) é convertida implicitamente em DATE pelo Oracle, fornecendo a saída necessária conforme selecionada.
18. Which of the following is supported with respect to expression evaluation is supported by Oracle DB?
- NÚMERO PARA CARREGAR
- DATA PARA VARCHAR2
- CHAR até DATE
- NÚMERO ATÉ DATA
Answer: A, B. Os valores DATE e NUMBER podem ser facilmente convertidos em seus equivalentes de caracteres. Conversões implícitas de caracteres para datas são possíveis quando a cadeia de caracteres está em conformidade com os seguintes padrões de data: [D | DD] separator1 [MON | MONTH] separator2 [R | RR | YY | YYYY].
19. What is mandatory for and implicit conversion of CHAR to NUMBER in Oracle to work?
- Nada em particular é obrigatório para este tipo de conversão
- É obrigatório que a sequência de caracteres represente um número válido
- Nenhuma conversão é suportada pela Oracle
- CHAR para NUMBER deve ser convertido explicitamente apenas
Answer: B. Os dados do caractere devem representar um número válido a ser considerado para a conversão implícita.
20. Which of the following expressions can be used explicitly for a conversion of a CHAR to a NUMBER?
- TO_CHAR
- Use TO_DATE e, em seguida, converta a data em NUMBER
- TO_NUMBER
- Essa conversão não é possível
Answer: C. A função TO_NUMBER retorna um item do tipo NUMBER. As cadeias de caracteres convertidas em números devem ser formatadas de forma adequada para que quaisquer componentes não numéricos sejam traduzidos ou eliminados com uma máscara de formato apropriada.
21. Which of the following expressions can be used explicitly for a conversion of a NUMBER to a CHAR?
- TO_CHAR
- Use TO_DATE e, em seguida, converta a data em NUMBER
- TO_NUMBER
- Essa conversão não é possível
Answer: A. A função TO_CHAR retorna um item do tipo de dados VARCHAR2. Quando aplicado a itens do tipo NUMBER, várias opções de formatação estão disponíveis.
22. Which of the following expressions can be used explicitly for a conversion of a CHAR to a DATE?
- TO_CHAR
- Use TO_DATE e, em seguida, converta a data em NUMBER
- TO_NUMBER
- TO_DATE
Answer: D. A função TO_DATE retorna um item do tipo DATE. As cadeias de caracteres convertidas em datas podem conter todos ou apenas um subconjunto dos elementos de data e hora compreendendo uma DATA. Quando strings com apenas um subconjunto dos elementos de data e hora são convertidos, o Oracle fornece valores padrão para construir uma data completa. Os componentes das cadeias de caracteres são associados a diferentes elementos de data e hora usando um modelo de formato ou máscara.
23. Which of the following expressions can be used explicitly for a conversion of a DATE to a CHAR?
- TO_CHAR
- TO_DATE
- TO_NUMBER
- Essa conversão não é possível
Answer: A. A função TO_CHAR retorna um item do tipo de dados VARCHAR2. Quando aplicado a itens do tipo NUMBER, várias opções de formatação estão disponíveis.
24. Which of the following are the functions for explicit conversion provided by Oracle to convert one data type to the other?
- TO_CHAR
- TO_DATE
- TO_NUMBER
- Tudo acima
Answer: D. TO_CHAR, TO_NUMBER e TO_DATE são as três funções de conversão mais amplamente usadas e são discutidas em detalhes. A função TO_CHAR converte informações numéricas e de data em caracteres, enquanto TO_NUMBER e TO_DATE convertem dados de caracteres em números e datas, respectivamente.
25. Interpret the working of the below function.
TO_CHAR(number/date, [format], [nlsparameters])
- Ele converte um VARCHAR2 em um CHAR
- Ele converte um número / data em uma string VARCHAR2 com o modelo de formato [formato]
- Ele converte um VARCHAR2 em um NUMBER ou uma DATE
- [NLSPARAMETERS] é obrigatório na declaração
Answer: B. A função TO_CHAR retorna um item do tipo de dados VARCHAR2. Quando aplicado a itens do tipo NUMBER, várias opções de formatação estão disponíveis.
26. What does the [NLSPARAMETERS] clause in the following statement specify?
TO_CHAR(number/date, [format], [nlsparameters])
- Caractere decimal
- Separador de grupo
- Símbolo da moeda
- Tudo acima
Answer: D.
27. What value will the TO_CHAR (number/date, [format], [nlsparameters]) use if the [nlsparameters] parameter is omitted?
- Ele lança um erro ORA
- O parâmetro [nlsparameters] é obrigatório e não pode ser omitido.
- Ele usará os valores de parâmetro padrão para a sessão.
- Ele usará os valores de parâmetro padrão definidos durante o design do banco de dados.
Answer: C. Por padrão, a função TO_CHAR considera as configurações NLS da sessão ativa atual.
28. What is true about the following statement?
TO_CHAR(number/date, [format], [nlsparameters])
- O parâmetro nlsparameters especifica o idioma no qual os nomes de mês e dia são retornados.
- O parâmetro nlsparameters é omitido na execução da instrução acima.
- O parâmetro nlsparameters retornará um NULL, especificado ou não
- O parâmetro nlsparameters irá retornar o idioma padrão do banco de dados em cada execução
Answer: A.
29. What is true regarding the following statement in Oracle DB?
TO_NUMBER(char, [format],[nlsparameters])
- Ele converte qualquer string em um número no formato especificado em [formato]
- Ele converte apenas um NUMBER para o formato desejado, conforme mencionado em [formato]
- Ele converte uma string com dígitos em um número no formato especificado em [formato]
- O resultado desta função é sempre um caractere
Answer: C. A função TO_NUMBER retorna um item do tipo NUMBER. As cadeias de caracteres convertidas em números devem ser formatadas de forma adequada para que quaisquer componentes não numéricos sejam traduzidos ou eliminados com uma máscara de formato apropriada.
30. What is true regarding the following statement in Oracle DB?
TO_DATE(char, [format],[nlsparameters])
- Ele converte qualquer string em uma DATE no formato especificado em [format]
- Ele converte apenas uma DATA em outra DATA no formato desejado, conforme mencionado em [formato]
- Ele converte uma string com DATE em um número no formato especificado em [formato]
- Ele converte uma string com DATE em uma DATE no formato especificado em [format]
Answer: C. A função TO_DATE retorna um item do tipo DATE. As cadeias de caracteres convertidas em datas podem conter todos ou apenas um subconjunto dos elementos de data e hora compreendendo uma DATA.
31. What will be the result if the [format] parameter in the following statement is omitted?
TO_DATE(char, [format],[nlsparameters])
- Ele retornará um valor DATE com o formato DD-MON-AA
- Ele retornará um valor DATE com o formato DD-MON-RR
- Ele retornará um valor de caractere
- Ele retornará um valor NUMBER
Answer: A.
32. Which of the following is true about the following statement in Oracle DB?
TO_CHAR(date, 'frmt')
- O fmt pode ser escrito entre aspas duplas ou simples.
- O caso do fmt não importa nesta função
- Fmt pode incluir qualquer caractere ou NUMBER
- O fmt deve ser colocado entre aspas simples e deve ter um formato de data válido.
Answer: D.
33. What will the following statement on execution yield?
SELECT TO_CHAR ('01-JAN-13' 'DD-MON-YY') FROM dual;
- 01-JAN-13
- 01-01-2013
- Um erro ORA
- 1-JAN-13
Answer: C. Os parâmetros '01 -JAN-13 'e o modelo de formato devem ser separados por ",".
34. What is true about the [fmt] parameter in the following statement?
TO_DATE ([date as string],[format])
- O fmt pode ser escrito entre aspas duplas ou simples.
- O caso do fmt não importa nesta função
- O parâmetro [fmt] tem um elemento 'fm' que remove os espaços e suprime os zeros à esquerda.
- Fmt pode incluir qualquer caractere ou NUMBER
Answer: C.
35. What is the abbreviation for the FM modifier in Oracle DB?
- Primeiro Movimento
- Modo Filtro
- Modo de Preenchimento
- Primeiro Modo
Answer: C. O modelo de formato 'fm' significa Modo de Preenchimento.
36. What is the abbreviation for the FX modifier in Oracle DB?
- Primeira Expressão
- Preencher Expressão
- Primeiro Extra
- Formato Exato
Answer: D. O modelo de formato 'fm' significa Formato Exato.
37. How many maximum places for display will Oracle DB allocate to the Month element in the following statement?
SELECT TO_CHAR (sysdate, 'fmMonth') FROM dual;
- 5
- 6
- 7
- 9
Answer: D. A palavra mais longa para Mês é 'setembro' e, portanto, o Oracle preenche de acordo com 9 casas para a exibição do parâmetro Mês.
38. Which of the following is true about the FM modifier in Oracle DB?
- Este modificador suprime o preenchimento em branco nos elementos de caractere subsequentes, como MONTH
- Este modificador suprime zeros à esquerda para o número subsequente de elementos, como MI
- Este modificador não tem efeito no formato da data
- Este modificador é obrigatório para todos os formatos de data usados com a função TO_CHAR
Answer: A, B.
39. What happens when the FM modifier is not used in the DATE format model in Oracle DB?
- O resultado do elemento de caractere é preenchido à esquerda com espaços em branco até um comprimento variável
- O resultado do elemento de caractere é preenchido à direita com espaços em branco até um comprimento fixo
- Os zeros à esquerda não são retornados no resultado do elemento de caractere
- O comprimento do valor de retorno é fixo se o modificador FM for usado
Answer: B.
40. How is a number result justified in the output buffer in a number format element of a TO_CHAR function when the FM modifier is used?
- Right
- Left
- Centre
- Nenhuma das acima
Answer: B. O modificador FM suprime os espaços em branco adicionados à esquerda do número.
41. What will be the outcome of the following query?
SELECT TO_CHAR (TO_DATE('01-JAN-13'), 'fmDD Month YYYY') FROM dual;
- 1 de janeiro de 2013
- 1 de janeiro de 2013
- 1 de janeiro de 2013
- 1 ° 13 de janeiro
Answer: B. O TO_CHAR formata a data de entrada de acordo com o modelo de formato fornecido.
42. How many spaces will be added to the 'DD' of the following query?
SELECT TO_CHAR (TO_DATE('01-JAN-13','DD-MON-YY'), 'fmDD Month YYYY') FROM dual;
- 0
- 1
- 2
- 3
Answer: A. O modificador FM remove todos os espaços preenchidos do formato de data.
43. What will be the outcome of the following query?
SELECT TO_CHAR (TO_DATE('01-JAN-13','DD-MON-YY'), 'fmDdspth "of" Month YYYY fmHH:MI:SS AM') FROM dual;
- Ele retornará um erro ORA devido ao uso de aspas duplas no formato de data
- 1 de janeiro de 2013
- Primeiro de JANEIRO de 2013 12h00
- Primeiro de janeiro de 2013 12h00
Answer: D. O TO_CHAR formata a data de entrada '01 -JAN-13 'de acordo com o formato fornecido.
44. Which of the following specifies the exact match for the character argument and the date format model of a TO_DATE function?
- TO_DATE
- TO_CHAR
- FM
- FX
Answer: D.
45. What is true about the FX modifier in the Oracle DB?
- É sensível a maiúsculas e minúsculas
- Ele ignora os espaços no argumento do caractere ao corresponder ao modelo de formato de data mencionado
- As pontuações e o texto citado no argumento do caractere não correspondem necessariamente ao modelo de formato
- Nenhuma das acima
Answer: D.
46. What will be the outcome of the following query?
SELECT TO_DATE ('January 21, 2013' , 'fxMonth DD, YYYY') FROM dual;
- Será executado com sucesso
- Ele dará o resultado 21 de janeiro de 2013
- Isso cria um erro ORA
- Vai dar o resultado 21 de janeiro de 2013
Answer: C. O argumento do caractere deve corresponder exatamente ao modelo de formato se FX for usado. Aqui, os espaços extras após janeiro são incompatíveis.
47. What is true about the FX modifier in Oracle DB?
- Pode ser usado com TO_CHAR
- Pode ser usado com TO_CHAR e TO_DATE
- Pode ser usado apenas com TO_DATE
- Nenhuma das acima
Answer: C. O modificador de formato FX só pode ser usado com a função TO_DATE.
48. Assuming the SYSDATE is 01-JAN-13, what will be the outcome of the following query?
SELECT TO_CHAR (SYSDATE, 'DDTH') FROM dual;
- 1 de janeiro
- 1st
- 1 ST
- 01ST
Answer: D.
49. Assuming the SYSDATE is 01-JAN-13, what will be the outcome of the following query?
SELECT TO_CHAR (SYSDATE, 'fmDDTH') FROM dual;
- 1 de janeiro
- 1st
- 1ST
- 01ST
Answer: C.
50. Assuming the SYSDATE is 01-JAN-13 and falls on Tuesday, what will be the outcome of the following query?
SELECT TO_CHAR (SYSDATE, 'fmDay')||'''s Meeting' FROM dual;
- Tuesday
- TUESDAY
- Reunião de TERÇA-FEIRA
- Reunião de terça-feira
Answer: D.
51. What will be the outcome of the following query?
SELECT TO_DATE('01 / JAN / 13','DD-MON-YY') FROM dual;
- Erro ORA
- 01-JAN-2013
- 01-JANUARY-13
- 01-JAN-13
Answer: D.
52. What will be the outcome of the following query?
SELECT TO_DATE('01 ## JAN / 13','DD-MON-YY') FROM dual;
- Erro ORA
- 01-JAN-2013
- 01-JANUARY-13
- 01-JAN-13
Answer: A. Use um único delimitador entre as datas.
53. What will be the outcome of the following query?
SELECT TO_DATE('01/JAN/13','fxDD-MON-YY') FROM dual;
- 01-JAN-2013
- Erro ORA
- 01-JAN-13
- 01-JANUARY-13
Answer: B. Com o modificador exato de formato, o literal de entrada deve corresponder à string de formato.
54. What will be the outcome of the following query?
SELECT TO_DATE('01-JAN-13','fxDD-MON-YY') FROM dual;
- 01-JAN-2013
- Erro ORA
- 01-JAN-13
- 01-JANUARY-13
Answer: C.
55. What will be the outcome of the following query?
SELECT TO_DATE ('11-JAN-2013','fxDD-MON-YYYY') FROM dual;
- 11-JAN-13
- 11-01-13
- 11-JAN-2013
- Erro ORA
Answer: C.
56. An employee Allen was hired on 1-JAN -13. What will be the outcome of the following query? (Assume that the NLS parameter for the session is set to DD-MON-YY)
SELECT TO_DATE(hire_date, 'fxfmDD-MON-YY') FROM employees WHERE first_name='ALLEN';
- Erro ORA
- 01-JAN-2013
- 1-JAN-13
- 1-JAN-2013
Answer: C.
57. What will be the outcome of the following query?
SELECT TO_CHAR(TO_DATE ('01-JAN-2013'), 'DD-Month-RR') FROM dual;
- 01-JAN-13
- 01-01-2013
- 01-January-13
- 01 de janeiro -13
Answer: D. O modificador Mês é preenchido em até 9 casas com espaços.
Examine the structure of the EMPLOYEES table as given and answer the questions 58 and 59 that follow.
SQL> DESC employees
Name Null? Type
----------------------- -------- ----------------
EMPLOYEE_ID NOT NULL NUMBER(6)
FIRST_NAME VARCHAR2(20)
LAST_NAME NOT NULL VARCHAR2(25)
EMAIL NOT NULL VARCHAR2(25)
PHONE_NUMBER VARCHAR2(20)
HIRE_DATE NOT NULL DATE
JOB_ID NOT NULL VARCHAR2(10)
SALARY NUMBER(8,2)
COMMISSION_PCT NUMBER(2,2)
MANAGER_ID NUMBER(6)
DEPARTMENT_ID NUMBER(4)
58. You need to list out the first and the last names for all the employees who were hired before the year 1990. Which of the following WHERE statements will give you the required results? (Assume that this list is to be generated on '01-JAN-2013')
- WHERE TO_DATE (rental_date, 'DD-MON-YY') <'01 -JAN-1990 '
- WHERE TO_DATE (rental_date, 'DD-MON-YYYY') <'01 -JAN-1990 '
- ONDE TO_DATE (data_contratação, 'DD-MON-AA') <'01 -JAN-90 '
- WHERE TO_DATE (data_de_contratação, 'DD-MON-RR') <'01 -JAN-1990 '
Answer: D. O uso do formato RR considerará a parte do ano da data entre 1950 e 1999.
59. Which of the following is an example of a nested function?
SELECT lower(last_name) FROM employees;
SELECT upper (last_name) FROM employees;
SELECT concat (first_name, last_name) FROM employees;
SELECT upper (concat(SUBSTR(first_name,1,6),'_UK')) FROM employees;
Answer: D. Mais de uma função em uma função é conhecida como aninhamento de funções.
60. What is true about the COALESCE function in Oracle DB?
- Pode levar apenas 2 argumentos
- Todos os argumentos na função COALESCE podem ser de diferentes tipos de dados
- Todos os argumentos na função COALESCE devem ser do mesmo tipo de dados
- Nenhuma das acima
Answer: C. A função COALESCE leva dois parâmetros obrigatórios e qualquer número de parâmetros opcionais. A sintaxe é COALESCE (expr1, expr2, Ö, exprn), onde expr1 é retornado se não for nulo, caso contrário, expr2 se não for nulo e assim por diante.
61. Which of the following functions is used for conditional expressions?
- TO_CHAR
- COALESCE
- NVL
- CASE
Answer: D. A expressão CASE facilita a lógica condicional if-then-else. Existem duas variantes da expressão CASE. A expressão CASE simples lista o item de pesquisa condicional uma vez, e a igualdade do item de pesquisa é testada por cada expressão de comparação. A expressão CASE pesquisada lista uma condição separada para cada expressão de comparação.
62. What will be the outcome of the following query?
SELECT TO_CHAR(TO_DATE('01-JAN-13','DD-MON-YY'),'dy-mon-yyyy') FROM dual;
- 01-jan-2013
- 01-jan-13
- tue-jan-13
- tue-jan-2013
Answer: D. O modelo de formato 'dy' soletra as três primeiras letras do dia a partir da data de entrada. 'DY' fornecerá “TER” e não “ter” como na consulta fornecida acima.
63. What will be the outcome of the following query?
SELECT TO_CHAR(TO_DATE('01-JAN-13','DD-MON-YY'),'fmDAY-mon-yyyy') FROM dual;
- 1-jan-2013
- 01-jan-13
- TERÇA-FEIRA -JAN-13
- TUESDAY-jan-2013
Answer: D. O modelo de formato fmDAY (para todas as letras maiúsculas) ou fmday (para todas as letras minúsculas) soletrará o dia da data de entrada sem nenhum espaço à direita ou à esquerda.
64. What will be the outcome of the following query?
SELECT TO_CHAR(TO_DATE('19-JUN-13'),'qth') FROM dual;
- 1st
- 2nd
- 3rd
- 4th
Answer: B. O modelo de formato 'q' fornece o trimestre em que cai a data fornecida. Na consulta fornecida, ABR-JUN é o 2º trimestre.
Examine the structure of the EMPLOYEES table as given and answer the questions 65 to 67 that follow.
SQL> DESC employees
Name Null? Type
----------------------- -------- ----------------
EMPLOYEE_ID NOT NULL NUMBER(6)
FIRST_NAME VARCHAR2(20)
LAST_NAME NOT NULL VARCHAR2(25)
EMAIL NOT NULL VARCHAR2(25)
PHONE_NUMBER VARCHAR2(20)
HIRE_DATE NOT NULL DATE
JOB_ID NOT NULL VARCHAR2(10)
SALARY NUMBER(8,2)
COMMISSION_PCT NUMBER(2,2)
MANAGER_ID NUMBER(6)
DEPARTMENT_ID NUMBER(4)
65. Some employees joined company ABC in the second week of the current year i.e. 2013. You need to list out the first names, last names and the department IDs for all these employees. Which of the following queries will give you the required result?
SELECT first_name, last_name, department_id FROM employees WHERE TO_DATE(hire_date,'w') >2;
SELECT first_name, last_name, department_id FROM employees WHERE TO_DATE(hire_date,'w') between 1 and 2;
SELECT first_name, last_name, department_id FROM employees WHERE TO_CHAR(hire_date,'w') <3;
SELECT first_name, last_name, department_id FROM employees WHERE TO_CHAR(sysdate,'ww') =2;
Answer: D. O modelo de formato 'ww' fornece a semana do ano.
66. The management of a company 'ABC' wants to find out how many employees were hired in the 3rd quarter of the year 2012. Which of the following queries will give the required result?
SELECT count(employee_id ) FROM employees WHERE TO_CHAR(hire_date, 'q') > 1;
SELECT count(employee_id ) FROM employees Where TO_CHAR(hire_date, 'q') = 3;
SELECT employee_id FROM employees Where TO_CHAR(hire_date, 'q') = 3;
SELECT count(employee_id ) FROM employees Where TO_CHAR(hire_date, 'q') between 0 and 3;
Answer: B. O modelo de formato 'q' fornece o trimestre de um ano.
67. A certificate of achievement has to be printed and presented to all those employees who joined the organization before the year 2008 and are still a part of the organization. The printing of the first name, last name and the dates will happen by using placeholders fetched from a query. The Certificate should contain all the digits spelled out. Example: Tuesday, the 1st of January, Two Thousand and eight. The final text of the Certificate should be in the following form: This is to certify that first_name last_name who joined the organization on Tuesday, the 1st of January, Two Thousand and eight has successfully completed 5 glorious years in the company. Which of the following queries will be helpful in printing the dates as in the required format?
SELECT TO_CHAR (hire_date, 'fmDay,"the "ddth "of " Month, Yysp.') FROM employees;
SELECT TO_CHAR (hire_date, 'Day,"the "ddth "of " Mon, Yyyy.') FROM employees;
SELECT TO_CHAR (hire_date, 'fmDAY,"the "ddth "of " Month, Ysp.') FROM employees;
SELECT TO_CHAR (hire_date, 'fmDay,"the "ddth "of " MONTH, Rsp.') FROM employees;
Answer: A. O identificador 'sp' soletra o ano no idioma inglês simples.
68. A report has to be generated which creates an audit history table for all the employees from an available paper source. The paper source only has data for the year 2011 when the employees were hired. This data only has the year of the hire date. You need to put the date in the audit-history table as 1st of January of that particular year (without leading zeroes and spaces). Which of the following clauses will achieve this requirement?
- TO_DATE('2011','YYYY')
- TO_CHAR (TO_DATE ('2011', 'AAAA'), 'fmMM / DD / AAAA')
- TO_CHAR('2011','DD-MON-YYYY')
- TO_DATE ('01 -01-2011 ',' DD-MM-AAAA ')
Answer: B.
69. What will be the outcome of the following query?
SELECT TO_NUMBER ('$3000') FROM dual;
- 3000
- $3000
- NULL
- Erro ORA
Answer: D. A consulta gera o erro "ORA-01722: número inválido" porque a string fornecida não pode ser reconhecida em números.
70. What will be the outcome of the following query?
SELECT TO_NUMBER('$3,000.67','$999,999.99') FROM dual;
- $3000.67
- 3000
- 3000.67
- Erro ORA, pois a string de entrada tem menos caracteres do que o modelo de formato mencionado.
Answer: C. O modelo de formato apropriado ajuda TO_NUMBER a converter determinada string em números.
71. What will be the outcome of the following query?
SELECT TO_NUMBER('$3,000,000.67','$999,999.99') FROM dual;
- $3,000,000.67
- 3000,000.67
- 3000.67
- Erro ORA, pois o modelo de formato tem menos caracteres do que a string de entrada. Isto deveria ser o mesmo.
Answer: D.
72. What will the following query yield?
SELECT TO_NUMBER('456.23','999.99') FROM dual;
- Erro ORA
- 456.23
- 456
- Nenhuma das acima
Answer: B.
73. What is true about the nested functions?
- O aninhamento implica o uso da saída de uma função como entrada para outra.
- O aninhamento pode ser aplicado em até 3 níveis de aninhamento.
- Os aninhamentos são aplicados a funções de várias linhas em qualquer nível de profundidade
- Nenhuma das acima
Answer: A. A saída da execução de uma função é usada como entrada para a função anterior.
74. What will be the result of the following query?
SELECT NULLIF(1,2-1) FROM dual;
- 0
- 1
- NULL
- Nenhuma das acima
Answer: C. A função NULLIF testa dois termos de igualdade. Se forem iguais, a função retorna nulo; caso contrário, retorna o primeiro dos dois termos testados. Aqui 1 e a expressão "2-1" são considerados iguais por oracle e, portanto, NULL é retornado.
75. What will be the outcome of the following query?
SELECT NULLIF('01-JAN-2013','01-JAN-13') FROM dual;
- 1-JAN-13
- 01-JAN-2013
- NULL
- Erro ORA
Answer: B. Como os comprimentos de ambas as datas são diferentes, o primeiro parâmetro é retornado.
76. What is the ratio of mandatory parameters to optional parameters in the COALESCE function in Oracle DB?
- 0:1
- 1:2
- 2: qualquer número
- Nenhuma das acima
Answer: C. A função COALESCE leva dois parâmetros obrigatórios e qualquer número de parâmetros opcionais. OALESCE é uma forma geral da função NVL, como ilustram as duas equações a seguir: COALESCE (expr1, expr2) = NVL (expr1, expr2), COALESCE (expr1, expr2, expr3) = NVL (expr1, NVL (expr2, expr3) )
77. Which of the following equations are true?
- COALESCE (expr1, expr2) = NVL (expr1, expr2)
- COALESCE (expr1, expr2) = NVL2 (expr1, expr2, expr3)
- COALESCE (expr1, expr2, expr3) = NVL (expr1, NVL (expr2, expr3))
- Tudo acima
Answer: A, C.
78. Which of the following is the correct syntax of NVL2?
- NVL(original,ifnotnull)
- NVL2(original,ifnull,ifnotnull)
- NVL(original,NULL)
- NVL (original, ifnull) e NVL2 (original, ifnotnull, ifnull)
Answer: D.
79. Which of the following functions is an ANSI standard keyword inherited in Oracle?
- CASE
- DECODE
- Ambos a e B
- Nenhuma das acima
Answer: A. CASE é compatível com ANSI SQL e não é específico do Oracle.
80. What is true about the DECODE statement in Oracle DB?
DECODE(expr1,comp1,iftrue1,comp2,[iftrue2])
- Comp2 não é opcional
- Se expr1 for igual a comp1, então comp2 será retornado
- Se expr1 for igual a comp1 então iftrue1 será retornado
- Nenhuma das acima
Answer: C. A função DECODE implementa a lógica condicional if-then-else testando seus dois primeiros termos para igualdade e retorna o terceiro se eles forem iguais e, opcionalmente, retorna outro termo se não forem. A função DECODE leva pelo menos três parâmetros obrigatórios, mas pode levar muitos mais.
81. What is true about the parameters in the DECODE function?
- Todos os parâmetros devem ser VARCHAR2
- Nenhuma expressão pode ser parâmetro para a função DECODE
- Todos os parâmetros devem ser NUMBER
- O tipo de dados de retorno é igual ao do primeiro item de comparação correspondente.
Answer: D. A função DECODE implementa a lógica condicional if-then-else testando seus dois primeiros termos para igualdade e retorna o terceiro se eles forem iguais e, opcionalmente, retorna outro termo se não forem.
82. What will be the outcome of the following query?
SELECT DECODE (null,null,'expr3') FROM dual;
- NULL
- 0
- Expr3
- Erro ORA
Answer: C. DECODE considera dois valores NULL como equivalentes. Uma das anomalias de NULL no Oracle.
83. What will be the outcome of the following query?
SELECT DECODE ('elephant','rat','lion','tiger','cat','squirrel','elephant','koala','rat','And it continues') FROM dual;
- elephant
- rat
- koala
- E continua
Answer: D. A função DECODE leva pelo menos três parâmetros obrigatórios, mas pode levar muitos mais.
84. What is the number of minimum mandatory parameters for the CASE expression in Oracle DB?
- 0
- 1
- 2
- 3
Answer: D. A expressão CASE facilita a lógica condicional if-then-else. Existem duas variantes da expressão CASE. A expressão CASE simples lista o item de pesquisa condicional uma vez, e a igualdade do item de pesquisa é testada por cada expressão de comparação. A expressão CASE pesquisada lista uma condição separada para cada expressão de comparação. Leva pelo menos 3 parâmetros obrigatórios, mas pode levar mais também.
85. Which of the following keyword combinations is used to enclose a CASE statement in Oracle DB?
- CASEÖEND IF;
- IFÖEND IF;
- CASEÖ;
- CASEÖEND;
Answer: D.
86. Which of the following values is returned in case of a false value if the ELSE block in the CASE statement is undefined?
- 0
- NULL
- Ou 0 ou NULL
- Nenhuma das acima
Answer: B.
87. Which of the following options is true if more than one WHEN..THEN levels exist in a CASE statement?
- O CASE pesquisa ou compara apenas o primeiro nível e existe sem verificar outros níveis de WHENÖTHEN.
- A instrução CASE pesquisará em todos os níveis de WHENÖTHEN até encontrar uma correspondência.
- Ambos a e B
- Nenhuma das acima
Answer: B.
88. What data types can be the search, comparison and result parameters in the CASE statement?
- VARCHAR2
- DATE
- NUMBER
- Valores de coluna, literais e expressões
Answer: D.
89. The CASE statement cannot be used in which of the following parts of an Oracle SQL query?
- SELECT
- Nenhuma dessas opções
- WHERE
- ORDENAR POR
Answer: B.
90. Examine the structure of the EMPLOYEES table as given.
SQL> DESC employees
Name Null? Type
----------------------- -------- ----------------
EMPLOYEE_ID NOT NULL NUMBER(6)
FIRST_NAME VARCHAR2(20)
LAST_NAME NOT NULL VARCHAR2(25)
EMAIL NOT NULL VARCHAR2(25)
PHONE_NUMBER VARCHAR2(20)
HIRE_DATE NOT NULL DATE
JOB_ID NOT NULL VARCHAR2(10)
SALARY NUMBER(8,2)
COMMISSION_PCT NUMBER(2,2)
MANAGER_ID NUMBER(6)
DEPARTMENT_ID NUMBER(4)
Qual será o resultado da seguinte consulta no banco de dados Oracle?
SELECT first_name, salary,
CASE department_id WHEN 100
THEN 'Accounts'
WHEN 101
THEN 'Human Resources'
WHEN 102
THEN 'Sales'
ELSE 'Unknown'
END
FROM employees;
- Isso criará um erro ORA, pois mais de uma instrução WHENÖTHEN não pode ser gravada na instrução CASE.
- Ele exibirá os IDs de departamento como 100,101,102
- Ele só exibirá 'Contas' onde o ID do departamento 100 aparecer e ignorar os comandos restantes.
- Nenhuma das acima
Answer: D. A expressão CASE facilita a lógica condicional if-then-else. Existem duas variantes da expressão CASE. A expressão CASE simples lista o item de pesquisa condicional uma vez, e a igualdade do item de pesquisa é testada por cada expressão de comparação. A expressão CASE pesquisada lista uma condição separada para cada expressão de comparação.
91. What is the maximum number of WHENÖTHEN levels a CASE statement in Oracle DB can have?
- Unlimited
- 1000
- 216
- 255
Answer: D.
92. What will be the outcome of the following query?
SELECT NVL2(
NULLIF ('BMW','AUDI'),
'HYUNDAI',
'FERRARI'
)
FROM dual;
- BMW
- FERRARI
- NULL
- HYUNDAI
Answer: D. A função NVL2 fornece um aprimoramento ao NVL, mas serve a um propósito muito semelhante. Ele avalia se uma coluna ou expressão de qualquer tipo de dados é nula ou não. Se o primeiro termo não for nulo, o segundo parâmetro será retornado, caso contrário, o terceiro parâmetro será retornado.
93. Assuming the SYSDATE is 01-JAN-13 , what will the following query yield?
SELECT TO_CHAR (sysdate, 'fmddth" of" Month YYYY') FROM dual;
- 1 de janeiro de 2013
- 1º de janeiro de 2013
- 01 de janeiro de 2013
- 1 de janeiro de 2013
Answer: D. O modelo de formato “th” fornece o dia da data como “primeiro” ou “dia”.
94. What will be the outcome of the following query?
SELECT TO_CHAR (TO_DATE('01-JAN-13','DD-MON-YY'), 'MmSP Month Yyyysp') FROM dual;
- Primeiro de janeiro de dois mil e treze
- Primeiro JAN Dois Mil e Treze
- Um de janeiro de dois mil e treze
- Nenhuma das acima
Answer: C.
95. What will be the outcome of the following query?
SELECT TO_CHAR (TO_DATE('01-JAN-13','DD-MON-YY'), 'DD-MON-YYYY hh24SpTh') FROM dual;
- Primeiro de janeiro de dois mil e treze
- Um de janeiro de dois mil e treze
- Erro ORA
- 01-JAN-2013 zeroeth
Answer: D. Soletrar o componente de carimbo de data / hora pode ser feito usando o modificador de formato 'SpTh'.
96. Which of these functions do the work similar to if-then-else logic in SQL statements?
- TO_CHAR
- TO_NUMBER
- Ambos a e B
- CASE
Answer: D. A expressão CASE facilita a lógica condicional if-then-else. Existem duas variantes da expressão CASE. A expressão CASE simples lista o item de pesquisa condicional uma vez, e a igualdade do item de pesquisa é testada por cada expressão de comparação. A expressão CASE pesquisada lista uma condição separada para cada expressão de comparação.
97. Examine the structure of the EMPLOYEES table as given.
SQL> DESC employees
Name Null? Type
----------------------- -------- ----------------
EMPLOYEE_ID NOT NULL NUMBER(6)
FIRST_NAME VARCHAR2(20)
LAST_NAME NOT NULL VARCHAR2(25)
EMAIL NOT NULL VARCHAR2(25)
PHONE_NUMBER VARCHAR2(20)
HIRE_DATE NOT NULL DATE
JOB_ID NOT NULL VARCHAR2(10)
SALARY NUMBER(8,2)
COMMISSION_PCT NUMBER(2,2)
MANAGER_ID NUMBER(6)
DEPARTMENT_ID NUMBER(4)
Qual será o resultado da seguinte consulta SQL?
SELECT DECODE (salary,10000) FROM employees;
- 10000
- NULL
- 0
- Erro ORA
Answer: B. A função DECODE implementa a lógica condicional if-then-else testando seus dois primeiros termos para igualdade e retorna o terceiro se eles forem iguais e, opcionalmente, retorna outro termo se não forem. A função DECODE leva pelo menos três parâmetros obrigatórios, mas pode levar muitos mais. Se o valor padrão na função DECODE for omitido, um NULL será retornado.
98. You need to display the time of the Oracle DB session up to 3 decimal places of the fractional seconds. Which of the following queries will give the required output?
SELECT TO_CHAR(sysdate, 'DD-MON-YY HH24:MI:SS.FF') FROM dual;
SELECT TO_CHAR(sysdate, 'DD-MON-YY HH24:MI:SS') FROM dual;
SELECT TO_CHAR(sysdate, 'DD-MON-YY HH24:MI:SS.FF3') FROM dual;
SELECT TO_CHAR(sysdate, 'DD-MON-YY') FROM dual;
Answer: C. A extensão FF [1..9] para o formato HH: MI: SS produz segundos fracionários até 1..9 dígitos nos segundos fracionários.
99. Which of the following punctuation marks can be used with Dates and Times in Oracle DB?
- #
- @
- ,
- :
Answer: C, D.
100. Examine the structure of the EMPLOYEES table as given.
SQL> DESC employees
Name Null? Type
----------------------- -------- ----------------
EMPLOYEE_ID NOT NULL NUMBER(6)
FIRST_NAME VARCHAR2(20)
LAST_NAME NOT NULL VARCHAR2(25)
EMAIL NOT NULL VARCHAR2(25)
PHONE_NUMBER VARCHAR2(20)
HIRE_DATE NOT NULL DATE
JOB_ID NOT NULL VARCHAR2(10)
SALARY NUMBER(8,2)
COMMISSION_PCT NUMBER(2,2)
MANAGER_ID NUMBER(6)
DEPARTMENT_ID NUMBER(4)
Você precisa encontrar o dia do ano em que a funcionária Jaimie Patrick foi contratada na empresa 'ABC'. Qual das seguintes consultas fornecerá a saída necessária?
SELECT TO_CHAR(hire_date, 'DDD') FROM employees WHERE last_name = 'Patrick' AND first_name = 'John';
SELECT TO_CHAR(hire_date, 'YYYY') FROM employees WHERE last_name = 'Patrick' AND first_name = 'John';
SELECT TO_CHAR(hire_date, 'DD-MON-YYYY') FROM employees WHERE last_name = 'Patrick' AND first_name = 'John';
SELECT TO_CHAR(hire_date, 'DD-MON-RR') FROM employees WHERE last_name = 'Patrick' AND first_name = 'John';
Answer: A. O modelo de formato 'DDD' retorna o dia do ano em que cai a data fornecida.
101. A report is required to be generated which gives the timings for all the batch runs that started on midnight 1st June, 2013. These timings should be in the precision of seconds after midnight. Which of the following clauses will fulfill the requirement?
- TO_CHAR(sysdate,'HH24:MI:SS')
- TO_CHAR(sysdate,'HH24:MI:SS.FF')
- TO_CHAR(sysdate,'HH24:MI:SSSS')
- TO_CHAR(sysdate,'HH24:MI:SS.FF3')
Answer: C. o modelo de formato 'SSSS' fornece os segundos após a meia-noite.