1. What is true about data types in Oracle DB?
Answer: C. Data types define the nature of data which a column can store in a table. A column can store only one type of data. The primary data types available in Oracle are NUMBER, VARCHAR2, and DATE.
2. What is true about nested functions?
Answer: C. Single row functions can group functions can be nested in a SELECT query in which the innermost function is the first one to be executed. The result of the execution of innermost function serves as the input for the outer function.
3. Which of the following functions simplify working with columns that potentially contain null values?
Answer: B. The general functions like NVL, NVL2, NULLIF, and COALESCE are used to pacify the effect of NULL while displaying the query results. They bypass the NULL values by assigning an alternative value.
4. Which of the following data types are appropriate for general functions?
Answer: D. General functions are usually compatible with all primary data types like NUMBER, VARCHAR2 and DATE.
5. What is true about the COALESCE function?
Answer: C, D. The COALESCE function takes two mandatory parameters and any number of optional parameters. The syntax is COALESCE(expr1, expr2,Ö,exprn), where expr1 is returned if it is not null, else expr2 if it is not null, and so on. COALESCE is a general form of the NVL function, as the following two equations illustrate: 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?
Answer: C. The NVL function takes two mandatory parameters. Its syntax is NVL(original, ifnull), where original represents the term being tested and ifnull is the result returned if the original term evaluates to null. The data types of the original and ifnull parameters must always be compatible. They must either be of the same type, or it must be possible to implicitly convert ifnull to the type of the original parameter. The NVL function returns a value with the same data type as the original parameter.
7. What is wrong in the following statement?
NVL (ifnull, original)
Answer: D. The NVL function evaluates whether a column or expression of any data type is null or not. If the term is null, an alternative not null value is returned; otherwise, the initial term is returned.
8. What will be the output of the following query?
SELECT NVL(1234) FROM dual;
Answer: D. he NVL function takes two mandatory parameters. Its syntax is NVL(original, ifnull), where original represents the term being tested and ifnull is the result returned if the original term evaluates to null.
9. What will be output of the following query?
SELECT NVL(1234,' ') FROM dual;
Answer: D. The data types of the original and ifnull parameters must always be compatible. They must either be of the same type, or it must be possible to implicitly convert ifnull to the type of the original parameter. The NVL function returns a value with the same data type as the original parameter. The 1234 should be in single quotes. Implicit conversion of data type doesn't happen in this case.
10. What will be outcome of the following query?
SELECT NVL(SUBSTR('abc',-4),'SUBSTR didn't work') FROM dual;
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?
Answer: A, B. TO_CHAR, TO_NUMBER and TO_DATE are the three most widely used conversion functions and are discussed in detail. The TO_CHAR function converts numeric and date information into characters, while TO_NUMBER and TO_DATE convert character data into numbers and dates, respectively.
13. What happens during an implicit conversion in Oracle DB?
Answer: A. If Oracle database implicitly converts a value to a compatible data type, it is known as Implicit conversion.
14. What happens during an explicit conversion in Oracle DB?
Answer: C. When the programmer has to programmatically convert a value using one of the conversion functions, it is known as explicit conversion.
15. Which of the following conversion methods is recommended for the reliability of SQL statements in Oracle DB?
Answer: C. TO_CHAR, TO_NUMBER and TO_DATE are the three most widely used conversion functions and are discussed in detail. The TO_CHAR function converts numeric and date information into characters, while TO_NUMBER and TO_DATE convert character data into numbers and dates, respectively.
16. Which of the following is a valid implicit conversion performed by Oracle?
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)
Which conversion method is applied to the following query?
SELECT first_name, salary FROM employees WHERE hire_date > '01-JAN-13';
Answer: C. The string (VARCHAR2 or CHAR) is converted implicitly to a DATE by Oracle giving the required output as selected.
18. Which of the following is supported with respect to expression evaluation is supported by Oracle DB?
Answer: A, B. DATE and NUMBER values can easily be converted to their character equivalents. Implicit character to date conversions are possible when the character string conforms to the following date patterns: [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?
Answer: B. Character data must represent a valid number to be considered for implicit conversion.
20. Which of the following expressions can be used explicitly for a conversion of a CHAR to a NUMBER?
Answer: C. The TO_NUMBER function returns an item of type NUMBER. Character strings converted into numbers must be suitably formatted so that any nonnumeric components are translated or stripped away with an appropriate format mask.
21. Which of the following expressions can be used explicitly for a conversion of a NUMBER to a CHAR?
Answer: A. The TO_CHAR function returns an item of data type VARCHAR2. When applied to items of type NUMBER, several formatting options are available.
22. Which of the following expressions can be used explicitly for a conversion of a CHAR to a DATE?
Answer: D. The TO_DATE function returns an item of type DATE. Character strings converted to dates may contain all or just a subset of the date time elements comprising a DATE. When strings with only a subset of the date time elements are converted, Oracle provides default values to construct a complete date. Components of character strings are associated with different date time elements using a format model or mask.
23. Which of the following expressions can be used explicitly for a conversion of a DATE to a CHAR?
Answer: A. The TO_CHAR function returns an item of data type VARCHAR2. When applied to items of type NUMBER, several formatting options are available.
24. Which of the following are the functions for explicit conversion provided by Oracle to convert one data type to the other?
Answer: D. TO_CHAR, TO_NUMBER and TO_DATE are the three most widely used conversion functions and are discussed in detail. The TO_CHAR function converts numeric and date information into characters, while TO_NUMBER and TO_DATE convert character data into numbers and dates, respectively.
25. Interpret the working of the below function.
TO_CHAR(number/date, [format], [nlsparameters])
Answer: B. The TO_CHAR function returns an item of data type VARCHAR2. When applied to items of type NUMBER, several formatting options are available.
26. What does the [NLSPARAMETERS] clause in the following statement specify?
TO_CHAR(number/date, [format], [nlsparameters])
Answer: D.
27. What value will the TO_CHAR (number/date, [format], [nlsparameters]) use if the [nlsparameters] parameter is omitted?
Answer: C. By default, the TO_CHAR function considers the NLS settings of the current active session.
28. What is true about the following statement?
TO_CHAR(number/date, [format], [nlsparameters])
Answer: A.
29. What is true regarding the following statement in Oracle DB?
TO_NUMBER(char, [format],[nlsparameters])
Answer: C. The TO_NUMBER function returns an item of type NUMBER. Character strings converted into numbers must be suitably formatted so that any nonnumeric components are translated or stripped away with an appropriate format mask.
30. What is true regarding the following statement in Oracle DB?
TO_DATE(char, [format],[nlsparameters])
Answer: C. The TO_DATE function returns an item of type DATE. Character strings converted to dates may contain all or just a subset of the date time elements comprising a DATE.
31. What will be the result if the [format] parameter in the following statement is omitted?
TO_DATE(char, [format],[nlsparameters])
Answer: A.
32. Which of the following is true about the following statement in Oracle DB?
TO_CHAR(date, 'frmt')
Answer: D.
33. What will the following statement on execution yield?
SELECT TO_CHAR ('01-JAN-13' 'DD-MON-YY') FROM dual;
Answer: C. The parameters '01-JAN-13' and format model should be separated by a ",".
34. What is true about the [fmt] parameter in the following statement?
TO_DATE ([date as string],[format])
Answer: C.
35. What is the abbreviation for the FM modifier in Oracle DB?
Answer: C. The format model 'fm' stands for Fill Mode.
36. What is the abbreviation for the FX modifier in Oracle DB?
Answer: D. The format model 'fm' stands for Format Exact.
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;
Answer: D. The longest word for Month is 'September' and hence Oracle pads according to 9 places for the display of the Month parameter.
38. Which of the following is true about the FM modifier in Oracle DB?
Answer: A, B.
39. What happens when the FM modifier is not used in the DATE format model in Oracle DB?
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?
Answer: B. The FM modifier suppresses blanks added to the left of the number.
41. What will be the outcome of the following query?
SELECT TO_CHAR (TO_DATE('01-JAN-13'), 'fmDD Month YYYY') FROM dual;
Answer: B. The TO_CHAR formats the input date as per the given format model.
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;
Answer: A. The FM modifier removes all the padded spaces from the Date format..
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;
Answer: D. The TO_CHAR formats the input date '01-JAN-13' as per the given format.
44. Which of the following specifies the exact match for the character argument and the date format model of a TO_DATE function?
Answer: D.
45. What is true about the FX modifier in the Oracle DB?
Answer: D.
46. What will be the outcome of the following query?
SELECT TO_DATE ('January 21, 2013' , 'fxMonth DD, YYYY') FROM dual;
Answer: C. The character argument should match exactly with the format model if FX is used. Here the extra spaces after January are mismatching.
47. What is true about the FX modifier in Oracle DB?
Answer: C. The FX format modifier can only be used with the TO_DATE function.
48. Assuming the SYSDATE is 01-JAN-13, what will be the outcome of the following query?
SELECT TO_CHAR (SYSDATE, 'DDTH') FROM dual;
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;
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;
Answer: D.
51. What will be the outcome of the following query?
SELECT TO_DATE('01 / JAN / 13','DD-MON-YY') FROM dual;
Answer: D.
52. What will be the outcome of the following query?
SELECT TO_DATE('01 ## JAN / 13','DD-MON-YY') FROM dual;
Answer: A. Use a single delimiter between the dates.
53. What will be the outcome of the following query?
SELECT TO_DATE('01/JAN/13','fxDD-MON-YY') FROM dual;
Answer: B. With the format exact modifier, the input literal must match the format string.
54. What will be the outcome of the following query?
SELECT TO_DATE('01-JAN-13','fxDD-MON-YY') FROM dual;
Answer: C.
55. What will be the outcome of the following query?
SELECT TO_DATE ('11-JAN-2013','fxDD-MON-YYYY') FROM dual;
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';
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;
Answer: D. The Month modifier is padded up to 9 places with spaces.
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')
Answer: D. Using the RR format will consider the year portion of the date between 1950 and 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. More than one functions in a function is known as nesting of functions.
60. What is true about the COALESCE function in Oracle DB?
Answer: C. The COALESCE function takes two mandatory parameters and any number of optional parameters. The syntax is COALESCE(expr1, expr2,Ö,exprn), where expr1 is returned if it is not null, else expr2 if it is not null, and so on.
61. Which of the following functions is used for conditional expressions?
Answer: D. The CASE expression facilitates if-then-else conditional logic. There are two variants of the CASE expression. The simple CASE expression lists the conditional search item once, and equality to the search item is tested by each comparison expression. The searched CASE expression lists a separate condition for each comparison expression.
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;
Answer: D. The format model 'dy' spells the first three letters of the day from the input date. 'DY' will give ìTUEî and not ìtueî as in the query given above.
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;
Answer: D. fmDAY (for all capital letters) or fmday (for all small letters) format model will spell the day of the input date without any trailing or leading spaces.
64. What will be the outcome of the following query?
SELECT TO_CHAR(TO_DATE('19-JUN-13'),'qth') FROM dual;
Answer: B. The format model 'q' gives the quarter in which the given date falls. In the given query, APR-JUN is the 2nd quarter.
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. The format model 'ww' gives the week of the year.
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. The format model 'q' gives the quarter of a year.
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. The 'sp' identifier spells the year in simple english language.
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?
Answer: B.
69. What will be the outcome of the following query?
SELECT TO_NUMBER ('$3000') FROM dual;
Answer: D. The query throws error of "ORA-01722: invalid number" because the given string cannot be recognized in numbers.
70. What will be the outcome of the following query?
SELECT TO_NUMBER('$3,000.67','$999,999.99') FROM dual;
Answer: C. The appropriate format model helps the TO_NUMBER to convert given string in numbers.
71. What will be the outcome of the following query?
SELECT TO_NUMBER('$3,000,000.67','$999,999.99') FROM dual;
Answer: D.
72. What will the following query yield?
SELECT TO_NUMBER('456.23','999.99') FROM dual;
Answer: B.
73. What is true about the nested functions?
Answer: A. The output from a function execution is used as input for its preceding function.
74. What will be the result of the following query?
SELECT NULLIF(1,2-1) FROM dual;
Answer: C. The NULLIF function tests two terms for equality. If they are equal the function returns a null, else it returns the first of the two terms tested. Here 1 and the expression "2-1" are considered equal by oracle and hence NULL is returned.
75. What will be the outcome of the following query?
SELECT NULLIF('01-JAN-2013','01-JAN-13') FROM dual;
Answer: B. Since the lengths for both the dates is different, the first parameter is returned.
76. What is the ratio of mandatory parameters to optional parameters in the COALESCE function in Oracle DB?
Answer: C. The COALESCE function takes two mandatory parameters and any number of optional parameters. OALESCE is a general form of the NVL function, as the following two equations illustrate: COALESCE(expr1,expr2) = NVL(expr1,expr2), COALESCE(expr1,expr2,expr3) = NVL(expr1,NVL(expr2,expr3)).
77. Which of the following equations are true?
Answer: A, C.
78. Which of the following is the correct syntax of NVL2?
Answer: D.
79. Which of the following functions is an ANSI standard keyword inherited in Oracle?
Answer: A. CASE is an ANSI SQL compliant and not Oracle specific.
80. What is true about the DECODE statement in Oracle DB?
DECODE(expr1,comp1,iftrue1,comp2,[iftrue2])
Answer: C. The DECODE function implements if-then-else conditional logic by testing its first two terms for equality and returns the third if they are equal and optionally returns another term if they are not. The DECODE function takes at least three mandatory parameters, but can take many more.
81. What is true about the parameters in the DECODE function?
Answer: D. The DECODE function implements if-then-else conditional logic by testing its first two terms for equality and returns the third if they are equal and optionally returns another term if they are not.
82. What will be the outcome of the following query?
SELECT DECODE (null,null,'expr3') FROM dual;
Answer: C. DECODE considers two NULL values to be equivalent. One of the anomalies of NULL in 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;
Answer: D. The DECODE function takes at least three mandatory parameters, but can take many more.
84. What is the number of minimum mandatory parameters for the CASE expression in Oracle DB?
Answer: D. The CASE expression facilitates if-then-else conditional logic. There are two variants of the CASE expression. The simple CASE expression lists the conditional search item once, and equality to the search item is tested by each comparison expression. The searched CASE expression lists a separate condition for each comparison expression. It takes atleast 3 mandatory parameters but it can take more also.
85. Which of the following keyword combinations is used to enclose a CASE statement in Oracle DB?
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?
Answer: B.
87. Which of the following options is true if more than one WHEN..THEN levels exist in a CASE statement?
Answer: B.
88. What data types can be the search, comparison and result parameters in the CASE statement?
Answer: D.
89. The CASE statement cannot be used in which of the following parts of an Oracle SQL query?
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)
What will be the outcome of the following query in Oracle DB?
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;
Answer: D. The CASE expression facilitates if-then-else conditional logic. There are two variants of the CASE expression. The simple CASE expression lists the conditional search item once, and equality to the search item is tested by each comparison expression. The searched CASE expression lists a separate condition for each comparison expression.
91. What is the maximum number of WHENÖTHEN levels a CASE statement in Oracle DB can have?
Answer: D.
92. What will be the outcome of the following query?
SELECT NVL2( NULLIF ('BMW','AUDI'), 'HYUNDAI', 'FERRARI' ) FROM dual;
Answer: D. The NVL2 function provides an enhancement to NVL but serves a very similar purpose. It evaluates whether a column or expression of any data type is null or not. If the first term is not null, the second parameter is returned, else the third parameter is returned.
93. Assuming the SYSDATE is 01-JAN-13 , what will the following query yield?
SELECT TO_CHAR (sysdate, 'fmddth" of" Month YYYY') FROM dual;
Answer: D. The ìthî format model gives the day of the date as ìstî or ìthî.
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;
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;
Answer: D. Spelling out the timestamp component can be done using 'SpTh' format modifier.
96. Which of these functions do the work similar to if-then-else logic in SQL statements?
Answer: D. The CASE expression facilitates if-then-else conditional logic. There are two variants of the CASE expression. The simple CASE expression lists the conditional search item once, and equality to the search item is tested by each comparison expression. The searched CASE expression lists a separate condition for each comparison expression.
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)
What will be the outcome of the following SQL query?
SELECT DECODE (salary,10000) FROM employees;
Answer: B. The DECODE function implements if-then-else conditional logic by testing its first two terms for equality and returns the third if they are equal and optionally returns another term if they are not. The DECODE function takes at least three mandatory parameters, but can take many more. If the default value in the DECODE function is omitted, a NULL is returned.
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. The FF [1..9] extension to the HH:MI:SS format yields fractional seconds up to 1..9 digits in the fractional seconds.
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)
You need to find the day of the year when the employee Jaimie Patrick was hired in the company 'ABC'. Which of the following queries will give the required output?
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. The format model 'DDD' returns the day of the year on which the given date falls.
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?
Answer: C. the 'SSSS' format model gives the seconds after midnight.