Doamne Ajuta!

  • December 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Doamne Ajuta! as PDF for free.

More details

  • Words: 188,531
  • Pages: 2,090
This watermark does not appear in the registered version - http://www.clicktoconvert.com

Test: Quiz: Case and Character Manipulation

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Case and Character Manipulation (Answer all questions in this section) 1. Identify the output from the following SQL statement: SELECT RPAD('SQL',6, '*') FROM DUAL Mark for Review (1) Points ******SQL ***SQL SQL*** (*) SQL****** Incorrect. Refer to Section 1 2. Single row functions may be used in ______, _______ and _______ clauses. (Choose two correct answers) Mark for Review (1) Points (Choose all correct answers) SELECT, FROM, ALWAYS FROM, SELECT, ORDERS WHERE, DECODE, ORDER BY (*) SELECT, WHERE, ORDER BY (*) Incorrect. Refer to Section 1 3. Which character manipulation function always returns a numerical value? Mark for Review (1) Points TRIM LPAD LENGTH (*) SUBSTR

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Correct 4. Which of the following SQL statements would correctly return a song title identified in the database as "All These Years"? Mark for Review (1) Points WHERE title CONTAINS 'Years'; WHERE title LIKE LOWER('all these years'); WHERE title IN('All', 'These', 'Years'); WHERE title LIKE INITCAP('%all these years'); (*) Incorrect. Refer to Section 1 5. Which query selects the first names of the DJ On Demand clients who have a first name beginning with "A"? Mark for Review (1) Points SELECT UPPER(first_name) FROM d_clients WHERE first_name LIKE %a% SELECT UPPER(first_name) FROM d_clients WHERE first_name LIKE '%a%' SELECT UPPER(first_name) FROM d_clients WHERE first_name LIKE 'a%' SELECT UPPER(first_name) FROM d_clients WHERE LOWER(first_name) LIKE 'a%' (*)

Incorrect. Refer to Section 1 6. Which query would return a user password combining the ID of an employee and the first 4 characters of the last name? Mark for Review (1) Points SELECT CONCAT (employee_id, SUBSTR(last_name,4,1)) AS "User Passwords" FROM employees

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT CONCAT (employee_id, INSTR(last_name,4,1)) AS "User Passwords" FROM employees SELECT CONCAT (employee_id, INSTR(last_name,1,4)) AS "User Passwords" FROM employees SELECT CONCAT (employee_id, SUBSTR(last_name,1,4)) AS "User Passwords" FROM employees (*)

Incorrect. Refer to Section 1 7. Which of the following are types of SQL functions? (Choose two correct answers.) Mark for Review (1) Points (Choose all correct answers) Multi-Row Functions (*) Column-Row Functions Single-Row Functions (*) Many-to-Many Functions Correct 8. Character functions accept character arguments and only return character values. True or False? Mark for Review (1) Points True False (*) Correct 9. What does the following SQL SELECT statement return? SELECT UPPER( SUBSTR('Database Programming', INSTR('Database Programming','P'),20)) FROM dual; Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Programming PROGRAMMING (*) Database DATABASE Incorrect. Refer to Section 1

Page 1 of 1 Test: Quiz: Number Functions

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Number Functions (Answer all questions in this section) 1. What is the result of the following SQL Statement: SELECT ROUND(45.923,-1) FROM DUAL; Mark for Review (1) Points 46 45.9 50 (*) None of the above Incorrect. 2. Which number function may be used to determine if a value is odd or even? Mark for Review (1) Points MOD (*) TRUNC ROUND BINARY Incorrect. Refer to Section 1

This watermark does not appear in the registered version - http://www.clicktoconvert.com

3. ROUND and TRUNC functions can be used with which of the following Datatypes? Mark for Review (1) Points Dates and numbers (*) Dates and characters Numbers and characters None of the above Incorrect. Refer to Section 1 4. If hire_date has a value of '03-July-03', then what is the output from this code? SELECT ROUND(hire_date, 'Year') FROM employees; Mark for Review (1) Points 01-JAN-04 (*) 01-JAN-03 01-JUL-03 01-AUG-03 Correct 5. The answer to the following script is 456. True or False? SELECT TRUNC(ROUND(456.98)) FROM dual Mark for Review (1) Points True False (*) Incorrect. Refer to Section 1

Page 1 of 1 Test: Quiz: Date Functions

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Date Functions (Answer all questions in this section) 1. Which query would return a whole number if the sysdate is 26-MAY-04? Mark for Review (1) Points SELECT TRUNC(MONTHS_BETWEEN(SYSDATE,'19-MAR-79') /12) AS YEARS FROM DUAL; (*) SELECT TRUNC(YEARS_BETWEEN(SYSDATE,'19-MAR-79') /12) AS YEARS FROM DUAL; SELECT MONTHS_BETWEEN(SYSDATE,'19-MAR-79') /12 AS YEARS FROM DUAL; None of the above Incorrect. Refer to Section 1 2. Round and Trunc can be used on Date datatypes. True or False? Mark for Review (1) Points True (*) False 3. What is the result of the following query? SELECT ADD_MONTHS ('11-JAN-94',6) FROM dual; Mark for Review (1) Points 17-Jan-04 11-Jan-95 11-Jul-94 (*) 17-Jul-94

This watermark does not appear in the registered version - http://www.clicktoconvert.com

4. What is the result of the following query? SELECT ADD_YEARS ('11-JAN-94',6) FROM dual; Mark for Review (1) Points This in not a valid SQL statement. (*) 11-Jul-95 11-Jan-00 11-Jul-00 5. What function would you use to return the highest date in a month? Mark for Review (1) Points FINAL_DAY END_DAY HIGHEST_DAY LAST_DAY (*) 6. If hire_date has a value of '03-July-03', then what is the output from this code? SELECT ROUND(hire_date, 'Year') FROM employees; Mark for Review (1) Points 01-JAN-04 (*) 01-JAN-03 01-JUL-03 01-AUG-03

Page 1 of 1

Test: Quiz: Conversion Functions

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Conversion Functions

This watermark does not appear in the registered version - http://www.clicktoconvert.com

(Answer all questions in this section) 1. A table has the following definition: EMPLOYEES( EMPLOYEE_ID NUMBER(6) NOT NULL, LAST_NAME VARCHAR2(10) NOT NULL, MANAGER_ID VARCHAR2(6)) and contains the following rows: (1001, 'Bob Bevan', '200') (200, 'Natacha Hansen', null) Will the following query work:? SELECT * FROM emps WHERE id = manager; Mark for Review (1) Points No, because the WHERE-clause will not find any matching data No, because the datatypes of ID and MANAGER are different. Yes, Oracle will perform implicit datatype conversion. (*) No. You will have to re-write the statement and perform explicit datatype conversion. 2. The following script will run successfully. True or False? SELECT TO_CHAR(TO_DATE(“25-DEC-04” ,'dd-MON-yy')) FROM dual Mark for Review (1) Points True False (*) Correct 3. You need to display the HIRE_DATE values in this format: 25th of July 2002. Which SELECT statement would you use? Mark for Review (1) Points SELECT enroll_date(hire_date, 'DDspth "of" Month YYYY') FROM employees; SELECT TO_CHAR(hire_date, 'ddth "of" Month YYYY') FROM employees;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

(*) SELECT TO_CHAR(hire_date, 'DDTH "of" Month YYYY') FROM employees; SELECT TO_CHAR(hire_date, 'DDspth 'of' Month RRRR') FROM employees;

Incorrect. Refer to Section 2 4. Which statement will return the salary of e.g. 6000 from the Employees table in the following format $6000.00? Mark for Review (1) Points SELECT TO_CHAR(salary, '$99999.00') SALARY FROM employees (*) SELECT TO_CHAR(salary, '99999.00') SALARY FROM employees SELECT TO_CHAR(salary, '$99999') SALARY FROM employees SELECT TO_CHAR(sal, '$99999.00') SALARY FROM employees

5. Sysdate is 12-MAY-2004. You need to store the following date: 7-DEC-89 Which statement about the date format for this value is true? Review (1) Points

Mark for

Both the YY and RR date formats will interpret the year as 1989. Both the YY and RR date formats will interpret the year as 2089. The RR date format will interpret the year as 1989, and the YY date format will interpret the year as 2089. (*) The RR date format will interpret the year as 2089, and the YY date format will interpret the year as 1989. Incorrect. Refer to Section 2

This watermark does not appear in the registered version - http://www.clicktoconvert.com

6. Which statement is true about SQL functions? (1) Points

Mark for Review

Functions can convert values or text to another data type. Functions can round a number to a specified decimal place. Functions can convert upper case characters to lower case characters. a, b and c are true. (*) None of the above statements are true. Incorrect. Refer to Section 2

Page 1 of 1

Test: Quiz: Null Functions

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Null Functions (Answer all questions in this section) 1. Consider the following data in the Employees table: last_name commission_pct manager_id King null null Kochhar null 100 Vargas null 124 Zlotkey .2 100 What is the result of the following statement: SELECT last_name, COALESCE(commission_pct, manager_id, -1) comm FROM employees ; Mark for Review (1) Points Statement will fail King, -1 Kochhar, 100 Vargas, 124 Zlotkey, .2 (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

King, -1 Kochhar, 100 Vargas, 124 Zlotkey, 100 King, null Kochhar, 100 Vargas, 124 Zlotkey, .2

2. Which function compares two expressions? (1) Points

Mark for Review

NVL NULLIF (*) NVL2 NULL Incorrect. Refer to Section 2 3. With the following data in Employees (last_name, commission_pct, manager_id) what is the result of the following statement? DATA: King,null,null Kochhar, null,100 Vargas, null, 124 Zlotkey,.2, 100 SELECT last_name, NVL2(commission_pct, manager_id, -1) comm FROM employees ; Mark for Review (1) Points King, -1 Kochhar, -1 Vargas, -1 Zlotkey, -100 Statement will fail. King, -1 Kochhar, 100 Vargas, 124 Zlotkey, .2 King, -1 Kochhar, -1

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Vargas, -1 Zlotkey, 100 (*) 4. The following statement returns 0 (zero). True or False? SELECT 121/NULL FROM dual; Mark for Review (1) Points True False (*) Correct 5. If quantity is a number datatype, what is the result of this statement? SELECT NVL(200/quantity, 'zero') FROM inventory; Mark for Review (1) Points zero ZERO The statement fails (*) Null Incorrect. Refer to Section 2 Test: Quiz: Conditional Expressions

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Conditional Expressions (Answer all questions in this section) 1. CASE and DECODE evaluate expressions in a similar way to IF-THEN-ELSE logic. However, DECODE is specific to Oracle syntax. True or False? Mark for Review (1) Points True (*) False Incorrect. Refer to Section 2

This watermark does not appear in the registered version - http://www.clicktoconvert.com

2. Which statement will return a listing of last names, salaries and a rating of 'Low', 'Medium', 'Good' or 'Excellent' depending on the salary value? Mark for Review (1) Points SELECT last_name,salary, (CASE WHEN salary<5000 THEN 'Low' WHEN salary<10000 THEN 'Medium' WHEN salary<20000 THEN 'Good' ELSE 'Excellent' END) qualified_salary FROM employees; (*) SELECT last_name,salary, (CASE WHEN salary>5000 THEN 'Low' WHEN salary>10000 THEN 'Medium' WHEN salary>20000 THEN 'Good' ELSE 'Excellent' END) qualified_salary FROM employees; SELECT last_name,sal, (CASE WHEN sal<5000 THEN 'Low' WHEN sal<10000 THEN 'Medium' WHEN sal<20000 THEN 'Good' ELSE 'Excellent' END) qualified_salary FROM employees; SELECT last_name,salary, (RATING WHEN salary<5000 THEN 'Low' WHEN salary<10000 THEN 'Medium' WHEN salary<20000 THEN 'Good' ELSE 'Excellent' END) qualified_salary FROM employees;

3. For the given data from Employees (last_name, manager_id) what is the result of the following statement: DATA: King, null Kochhar, 100 De Haan, 100 Hunold, 102 Ernst, 103 SELECT last_name, DECODE(manager_id, 100, 'King', 'A N Other') FROM employees Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

King, Null Kochhar, King De Haan, King Hunold, A N Other Ernst, A N Other King, A N Other Kochhar, King De Haan, King Hunold, A N Other Ernst, A N Other (*) Invalid statement. King, A N Other Kochhar, King De Haan, King Hunold, Kochhar Ernst, De Haan

4. Which of the following is a conditional expression used in SQL? for Review (1) Points

Mark

CASE (*) DESCRIBE WHERE NULLIF Incorrect. Refer to Section 2

Page 1 of 1

Test: Quiz: Cartesian Product and the Join Operations

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Cartesian Product and the Join Operations (Answer all questions in this section) 1. If table A has 10 rows and table B has 5 rows, how many rows will be returned if you perform an equi-join on those two tables? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

It depends on the data found in the two tables. (*) 5 50 10 2. When must column names be prefixed by table names in JOIN syntax? for Review (1) Points

Mark

When more than two tables participate in the join. Only when query speed and database performance is a concern. When the same column name appears in more than one table of the query. (*) Never. Incorrect. Refer to Section 3 3. If table A has 10 rows and table B has 5 rows, how many rows will be returned if you perform a cartesian join on those two tables? Mark for Review (1) Points 10 15 50 (*) 5 4. What is the result of a query that selects from two tables but includes no join condition? Mark for Review (1) Points A Cartesian product. (*) A selection of matched rows from both tables. A Syntax error. A selection of rows from the first table only. Incorrect. Refer to Section 3 5. Will the following statement work? SELECT department_name, last_name

This watermark does not appear in the registered version - http://www.clicktoconvert.com

FROM employees, departments WHERE department_id = department_id; Mark for Review (1) Points No, Oracle will not allow joins in the Where clause. Yes, there are no syntax errors in the statement. Yes, Oracle will resolve which department_id colum comes from which table. No, Oracle will return a column ambiguously defined error. (*) 6. Oracle proprietary JOINS can use the WHERE clause for conditions other than the join-condition. True or False? Mark for Review (1) Points True (*) False

Page 1 of 1 Test: Quiz: Nonequijoins

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Nonequijoins (Answer all questions in this section) 1. Which statement about joining tables with a non-equijoin is false? Mark for Review (1) Points A WHERE clause must specify a column in one table that is compared to a column in the second table (*) The number of join conditions required is always one less than the number of tables being joined The columns being joined must have compatible data types None of the above Incorrect. Refer to Section 3 2. Which of the following operators is/are typically used in a nonequijoin? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

NOT OR IN >=, <=, BETWEEN ...AND (*) Incorrect. Refer to Section 3 3. The following statement is an example of a nonequi-join. SELECT e.last_name, e.salary, j.grade_level FROM employees e, job_grades j WHERE e.salary BETWEEN j.lowest_sal AND j.highest_sal; True or False? Mark for Review (1) Points True (*) False

Page 1 of 1

Test: Quiz: Outer Joins

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Outer Joins (Answer all questions in this section) 1. The following is a valid outer join statement: SELECT c.country_name, d.department_name FROM countries c, departments d WHERE c.country_id (+) = d.country_id (+) True or False? Mark for Review (1) Points True False (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

2. To perform a valid outer join between DEPARMENTS and EMPLOYEES to list departments without employees select the correct WHERE clause for the following select statement: SELECT d.department_name, e.last_name FROM employees e, departments d WHERE Mark for Review (1) Points e.department_id(+) = d.department_id (*) e.department_id(+) = d.department_id(+) e.department_id = d.department_id(+) e.department_id = d.department_id 3. The ID column in the CLIENT table that corresponds to the CLIENT_ID column of the ORDER table contains null values for rows that need to be displayed. Which type of join should you use to display the data? Mark for Review (1) Points Equijoin Self join Outer join (*) Nonequi-Join Correct 4. Which symbol is used to perform an outer join? (1) Points * || (+) (*) # Incorrect. Refer to Section 3

Page 1 of 1

Mark for Review

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Test: Quiz: Self Joins

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Self Joins (Answer all questions in this section) 1. Which select statement will return the last name and hire data of an employee and his/ her manager for employees that started in the company before their managers? Mark for Review (1) Points SELECT w.last_name, w.hire_date, m.last_name, m.hire_date FROM employees w , employees w WHERE w.manager_id = w.employee_id AND w.hire_date < w.hire_date SELECT w.last_name, w.hire_date, m.last_name, m.hire_date FROM employees w , employees m WHERE w.manager_id != m.employee_id AND w.hire_date < m.hire_date SELECT w.last_name, w.hire_date, m.last_name, m.hire_date FROM employees w , employees m WHERE w.manager_id = m.employee_id AND w.hire_date > m.hire_date SELECT w.last_name, w.hire_date, m.last_name, m.hire_date FROM employees w , employees m WHERE w.manager_id = m.employee_id AND w.hire_date < m.hire_date (*)

2. Which of the following database design concepts is implemented with a self join? Mark for Review (1) Points Non-Transferability Recursive Relationship (*) Supertype Arc Correct

This watermark does not appear in the registered version - http://www.clicktoconvert.com

3. Which SELECT statement implements a self join ? Mark for Review (1) Points SELECT e.employee_id, m.manager_id FROM employees e NATURAL JOIN employee m; SELECT e.employee_id, m.manager_id FROM employees e, employees m WHERE m.employee_id = e.manager_id; (*) SELECT e.employee_id, m.manager_id FROM employees e, manager m WHERE e.employee_id = m.manager_id; SELECT e.employee_id, m.manager_id FROM employees e, departments m WHERE e.employee_id = m.manager_id;

Incorrect. Refer to Section 3

Page 1 of 1

Test: Quiz: Cross joins and Natural Joins

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Cross joins and Natural joins 1. A NATURAL JOIN is based on: (1) Points

Mark for Review

Columns with the same name and datatype (*) Columns with the same name Columns with the same datatype and width Tables with the same structure

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Incorrect. Refer to Section 4 2. The ___________ join is the ANSI-standard syntax used to generate a Cartesian product. Mark for Review (1) Points NATURAL ALL FULL CROSS (*) Incorrect. Refer to Section 4 3. The join column must be included in the select statement when you use the NATURAL JOIN clause. True or False? Mark for Review (1) Points True False (*) 4. What happens when you create a Cartesian product? (1) Points

Mark for Review

All rows from one table are joined to all rows of another table (*) No rows are returned as you entered wrong join-criteria The table is joined to itself, one column to the next column, exhausting all possibilities All rows that do not match in the WHERE clause are displayed Incorrect. Refer to Section 4

Page 1 of 1

Test: Quiz: Join Clauses

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Join Clauses (Answer all questions in this section) 1. The keywords JOIN _____________ should be used to join tables with the same column names but different datatypes. Mark for Review (1) Points NATURAL ON ON WHEN USING (*) Incorrect. Refer to Section 4 2. The primary advantage of using JOIN ON is: (1) Points

Mark for Review

The join happens automatically based on matching column names and data types It will display rows that do not meet the join condition It easily produces a Cartesian product between the tables in the statement It permits columns that don?t have matching data types to be joined It permits columns with different names to be joined (*) Incorrect. Refer to Section 4 3. Table aliases MUST be used with columns referenced in the JOIN USING clause. True or False? Mark for Review (1) Points True False (*) Incorrect. Refer to Section 4 4. You can do nonequi-joins with ANSI-Syntax. True or False? Mark for Review (1) Points True (*) False

This watermark does not appear in the registered version - http://www.clicktoconvert.com

5. The following is a valid SQL statement. SELECT e.employee_id, e.last_name, d.location_id, department_id FROM employees e JOIN departments d USING (department_id) ; True or False? Mark for Review (1) Points True (*) False

Page 1 of 1 Test: Quiz: Inner versus Outer Joins

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Inner versus Outer Joins (Answer all questions in this section) 1. If you select rows from two tables (employees and departments) using an outer join, what will you get? Use the code below to arrive at your answer: SELECT e.last_name, e.department_id, d.department_name FROM employees e LEFT OUTER JOIN departments d ON (e.department_id = d.department_id); Mark for Review (1) Points All employees that do not have a department_id assigned to them All employees including those that do not have a department_id assigned to them (*) No employees as the statement will fail None of the above Incorrect. Refer to Section 4 2. EMPLOYEES Table: Name Null? EMPLOYEE_ID NOT NULL NUMBER(6) FIRST_NAME VARCHAR2(20)

Type

This watermark does not appear in the registered version - http://www.clicktoconvert.com

LAST_NAME NOT NULL VARCHAR2(25) DEPARTMENT_ID NUMBER (4) DEPARTMENTS Table: Name Null? Type DEPARTMENT_ID NOT NULL NUMBER 4 DEPARTMENT_NAME NOT NULL VARCHAR2(30) MANAGER_ID NUMBER (6) A query is needed to display each department and its manager name from the above tables. However, not all departments have a manager but we want departments returned in all cases. Which of the following SQL: 1999 syntax scripts will accomplish the task? Mark for Review (1) Points SELECT d.department_id, e.first_name, e.last_name FROM employees e LEFT OUTER JOIN departments d ON (e.employee_id = d.manager_id); SELECT d.department_id, e.first_name, e.last_name FROM employees e LEFT OUTER JOIN departments d WHERE (e.department_id = d.department_id); SELECT d.department_id, e.first_name, e.last_name FROM employees e RIGHT OUTER JOIN departments d ON (e.employee_id = d.manager_id); (*) SELECT d.department_id, e.first_name, e.last_name FROM employees e FULL OUTER JOIN departments d ON (e.employee_id = d.manager_id); SELECT d.department_id, e.first_name, e.last_name FROM employees e, departments d WHERE e.employee_id RIGHT OUTER JOIN d.manager_id;

Incorrect. Refer to Section 4 3. For which of the following tables will all the values be retrieved even if there is no match in the other? SELECT e.last_name, e.department_id, d.department_name FROM employees e LEFT OUTER JOIN departments d ON (e.department_id = d.department_id); Mark for Review (1) Points employees (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

department both Neither. the LEFT OUTER JOIN limits the value to the matching department id's. Incorrect. Refer to Section 4 4. What is another name for a simple join or an inner join? Review (1) Points

Mark for

Nonequijoin Equijoin (*) Self Join Outer Join Incorrect. Refer to Section 4 5. Which syntax would be used to retrieve all rows in both the EMPLOYEES and DEPARTMENTS tables, even when there is no match? Mark for Review (1) Points FULL OUTER JOIN (*) LEFT OUTER JOIN AND RIGHT OUTER JOIN FULL INNER JOIN Use any equijoin syntax Incorrect. Refer to Section 4 6. The following statement is an example of what kind of join? SELECT car.vehicle_id, driver.name FROM car LEFT OUTER JOIN driver ON (driver_id) ; Mark for Review (1) Points Inner Join Outer Join (*) Equijoin Optimal Join

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Incorrect. Refer to Section 4 7. Given the following descriptions of the employees and jobs tables, which of the following scripts will display each employee's possible minimum and maximum salaries based on their job title? EMPLOYEES Table: 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) JOBS Table: Name Null? Type JOB_ID NOT NULL VARCHAR2 (10) JOB_TITLE NOT NULL VARCHAR2 (35) MIN_SALARY NUMBER (6) MAX_SALARY NUMBER (6) Mark for Review (1) Points SELECT e.first_name, e.last_name, e.job_id, j.min_salary, j.max_salary FROM employees e NATURAL JOIN jobs j USING (job_id); SELECT first_name, last_name, job_id, min_salary, max_salary FROM employees NATURAL JOIN jobs; (*) SELECT e.first_name, e.last_name, e.job_id, j.min_salary, j.max_salary FROM employees e NATURAL JOIN jobs j; SELECT first_name, last_name, job_id, min_salary, max_salary FROM employees e FULL JOIN jobs j (job_id); SELECT e.first_name, e.last_name, e.job_id, j.min_salary, j.max_salary FROM employees e

This watermark does not appear in the registered version - http://www.clicktoconvert.com

NATURAL JOIN jobs j ON (e.job_title = j.job_title);

Incorrect. Refer to Section 4

Page 1 of 1 Test: Quiz: Group Functions

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Group Functions (Answer all questions in this section) 1. What two group functions can be used with any datatype? Review (1) Points

Mark for

STDDEV, VARIANCE SUM, AVG COUNT, SUM MIN, MAX (*) Incorrect. Refer to Section 5 2. Given the following data in the employees table (employee_id, salary, commission_pct) DATA: (143, 2600, null 144, 2500, null 149, 10500, .2 174, 11000, .3 176, 8600, .2 178, 7000, .15) What is the result of the following statement: SELECT SUM(commission_pct), COUNT(commission_pct) FROM employees WHERE employee_id IN( 143,144,149,174,176,178) Mark for Review (1) Points SUM = 1.85 and COUNT = 6

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SUM = .85 and COUNT = 6 SUM = 1.85 and COUNT = 4 SUM = .85 and COUNT = 4 (*) 3. Given the following data in the employees table (employee_id, salary, commission_pct) DATA: (143, 2600, null 144, 2500, null 149, 10500, .2 174, 11000, .3 176, 8600, .2 178, 7000, .15) What is the result of the following statement: SELECT AVG(commission_pct) FROM employees WHERE employee_id IN( 143,144,149,174,176,178) Mark for Review (1) Points 0.2125 (*) 0.0425 1.2125 This statement is invalid 4. You can use GROUP functions in all clauses of a SELECT statement. True or False? Mark for Review (1) Points True False (*) 5. What would the following SQL statement return? SELECT MAX(hire_date) FROM employees; Mark for Review (1) Points The hire date of the longest serving employee The hire date of the newest employee (*) The hire dates of all employees in ascending order The hire dates of all employees

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Correct 6. The following statement will work even though it uses the same column with different GROUP functions: SELECT AVG(salary), MAX(salary), MIN(salary), SUM(salary) FROM employees; True or False? Mark for Review (1) Points True (*) False

Page 1 of 1

Test: Quiz: Count, Distinct, NVL

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Count, Distinct, NVL (Answer all questions in this section) 1. Using your existing knowledge of the employees table, would the following two statements produce the same result? SELECT COUNT(*) FROM employees; SELECT COUNT(commission_pct) FROM employees; Mark for Review (1) Points No (*) The second statement is invalid The first statement is invalid Yes 2.

What would the following SQL statement return?

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT COUNT(first_name) FROM employees; Mark for Review (1) Points A listing of all non-null first names in the employees table The total number of non-null first names in the employees table (*) The total number of rows in the employees table A listing of all unique first names in the employees table Correct 3. To include null values in the calculations of a group function, you must: Mark for Review (1) Points Precede the group function name with NULL Count the number of null values in that column using COUNT Convert the null to a value using the NVL( ) function (*) Group functions can never use null values Correct 4. What would the following SQL statement return? SELECT COUNT(DISTINCT salary) FROM employees; Mark for Review (1) Points The total number of rows in the employees table The total amount of salaries in the employees table A listing of all unique salaries in the employees table The number of unique salaries in the employees table (*)

Page 1 of 1

Test: Quiz: Group By and Having Clauses

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Group By and Having Clauses (Answer all questions in this section) 1. Which of the following SQL statements could display the number of people with the same last name: Mark for Review (1) Points SELECT first_name, last_name, COUNT(employee_id) FROM EMPLOYEES GROUP BY last_name; SELECT employee_id, COUNT(last_name) FROM EMPLOYEES GROUP BY last_name; SELECT last_name, COUNT(last_name) FROM EMPLOYEES GROUP BY last_name; (*) SELECT employee_id, DISTINCT(last_name) FROM EMPLOYEES GROUP BY last_name;

Incorrect. Refer to Section 5 2. How would you alter the following query to list only employees where more than one employee exists with the same last_name: SELECT last_name, COUNT(employee_id) FROM EMPLOYEES GROUP BY last_name; Mark for Review (1) Points SELECT last_name, COUNT(employee_id) FROM EMPLOYEES WHERE COUNT(*) > 1 GROUP BY last_name SELECT last_name, COUNT(last_name) FROM EMPLOYEES GROUP BY last_name HAVING COUNT(last_name) > 1; (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT last_name, COUNT(last_name) FROM EMPLOYEES GROUP BY last_name EXISTS COUNT(last_name) > 1; SELECT employee_id, DISTINCT(last_name) FROM EMPLOYEES GROUP BY last_name HAVING last_name > 1;

3. The following is a valid statement: SELECT MAX(AVG(salary)) FROM employees GROUP BY department_id; True or False? Mark for Review (1) Points True (*) False 4. Is the following statement correct? SELECT department_id, AVG(salary) FROM employees; Mark for Review (1) Points No, because a GROUP BY department_id clause is needed (*) No, because the SELECT clause cannot contain both individual columns and group functions No, because the AVG function cannot be used on the salary column Yes Incorrect. Refer to Section 5 5. Is the following statement correct: SELECT first_name, last_name, salary, department_id, COUNT(employee_id) FROM employees WHERE department_id = 50 GROUP BY last_name, first_name, department_id; Mark for Review

This watermark does not appear in the registered version - http://www.clicktoconvert.com

(1) Points Yes No, beause you cannot have a WHERE-clause when you use group functions. No, because the statement is missing salary in the GROUP BY clause (*) Yes, because Oracle will correct any mistakes in the statement itself 6. Read the following SELECT statement. Choose the column or columns that must be included in the GROUP_BY clause. SELECT COUNT(last_name), grade, gender FROM STUDENTS GROUP_BY ?????; Mark for Review (1) Points last_name last_name, grade grade, gender (*) last_name, gender Incorrect. Refer to Section 6

Page 1 of 1

Test: Quiz: Subqueries

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Subqueries (Answer all questions in this section) 1. Subqueries can only be placed in the WHERE clause. True or False? Mark for Review (1) Points True

This watermark does not appear in the registered version - http://www.clicktoconvert.com

False (*) 2. What will the following statement return: SELECT employee_id, last_name FROM employees WHERE salary = (SELECT MIN(salary) FROM employees GROUP BY department_id); Mark for Review (1) Points Nothing. It is an invalid statement. (*) A list of last_names and salaries of employees A list of first_names and salaries of employees in Department 50 A list of last_names and salaries of employees grouped by department_id. 3. Which of the following statements is a true guideline for using subqueries? Mark for Review (1) Points Do not enclose the subquery in parentheses. Place the subquery on the left side of the comparison condition. The outer and inner queries can reference than one table. They can get data from different tables. (*) Only one WHERE clause can be used for a SELECT statement, and if specified, it must be the outer query. Correct 4. What will the following statement return: SELECT last_name, salary FROM employees WHERE salary < (SELECT salary FROM employees WHERE employee_id = 103) Mark for Review (1) Points A list of last_names and salaries of employees that makes more than employee 103 A list of last_names and salaries of employees that makes less than employee 103 (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

A list of first_names and salaries of employees making less than employee 103 Nothing. It is an invalid statement.

Page 1 of 1

Test: Quiz: Single-Row Subqueries

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Single-Row Subqueries (Answer all questions in this section) 1. Single row subqueries may not include this operator: (1) Points

Mark for Review

ALL (*) = <> > Correct 2. In a non-correlated subquery, the outer query always executes prior to the inner query's execution. True or False? Mark for Review (1) Points True False (*) Incorrect. Refer to Section 6 3. If the subquery returns no rows will the outer query return any values? Mark for Review (1) Points No, because you are not allowed to not return any rows from a subquery Yes. It will just run and ignore the subquery

This watermark does not appear in the registered version - http://www.clicktoconvert.com

No, because the subquery will be treated like a null value. (*) Yes, Oracle will find the nearest value and fix rewrite your statement implicitly when you run it 4. Subqueries are limited to four per SQL transaction. True or False? Mark for Review (1) Points True False (*) Incorrect. Refer to Section 6 5. The result of this statement will be: SELECT last_name, job_id, salary, department_id FROM employees WHERE job_id = (SELECT job_id FROM employees WHERE employee_id = 141) AND department_id = (SELECT department_id FROM departments WHERE location_id =1500) Mark for Review (1) Points All employees from Location 1500 will be displayed An error since you can?t get data from two tables in the same subquery All employees with the department id of 141 Only the employees whose job id matches employee 141 and who work in location 1500 (*) Correct

Page 1 of 1

Test: Quiz: Multiple-Row Subqueries

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Multiple-Row Subqueries (Answer all questions in this section) 1. Multiple-row subqueries must have NOT, IN or ANY in the WHERE clause of the inner query. True or False? Mark for Review (1) Points True False (*) Incorrect. Refer to Section 6 2. When a multiple-row subquery uses the NOT IN (<>ALL) operator, if one of the values returned by the inner query is a null value, the entire query returns: Mark for Review (1) Points A list of Nulls All rows that were selected by the inner query including the null value(s) All rows, minus the null value(s), that were selected by the inner query no rows returned (*) Incorrect. Refer to Section 6 3. Group functions can be used in subqueries even though they may return many rows. True or False? Mark for Review (1) Points True (*) False Correct 4. The salary column of the f_staffs table contains the following values: 4000 5050 6000 11000 23000 Which of the following statements will return the last_name and first_name of those employees who earn more than 5000.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Mark for Review (1) Points SELECT last_name, first_name FROM f_staffs WHERE salary = (SELECT salary FROM f_staffs WHERE salary > 5000); SELECT last_name, first_name FROM f_staffs WHERE salary = (SELECT salary FROM f_staffs WHERE salary < 5000); SELECT last_name, first_name FROM f_staffs WHERE salary IN (SELECT salary FROM f_staffs WHERE salary > 5000); (*) SELECT last_name, first_name FROM f_staffs WHERE salary IN (SELECT last_name, first_name FROM f_staffs WHERE salary < 5000);

Incorrect. Refer to Section 6 5. In a subquery the ALL operator compares a value to every value returned by the inner query. True or False? Mark for Review (1) Points True (*) False Correct 6. There can be more than one subquery returning information to the outer query. True or False? Mark for Review (1) Points True (*) False Correct 7. Group functions, such as HAVING and GROUP BY, can be used in multiplerow subqueries. True or False? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

True (*) False Correct 8. The SQL multiple-row subquery extends the capability of the single-row syntax through the use of what three comparison operators? Mark for Review (1) Points IN, ANY and EQUAL IN, ANY and ALL (*) IN, ANY and EVERY IN, ALL and EVERY Incorrect. Refer to Section 6

Page 1 of 1

Test: Quiz: Insert Statement

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Insert Statement (Answer all questions in this section) 1. DML is an acronym that stands for: (1) Points Debit Markup Language Don't Manipulate Language Data Markup Language Data Manipulation Language (*) Incorrect. Refer to Section 7

Mark for Review

This watermark does not appear in the registered version - http://www.clicktoconvert.com

2. When inserting rows into a table all columns must be given values. True or False? Mark for Review (1) Points True False (*) 3. When inserting a new row the null keyword can be included in the values list for any null column. True or False? Mark for Review (1) Points True (*) False Correct 4. Which of the following statements will add a new customer to the customers table in the Global Fast Foods database? Mark for Review (1) Points INSERT IN customers (id, first_name, last_name, address, city, state, zip, phone_number); INSERT INTO customers (id, first_name, last_name, address, city, state, zip, phone_number) VALUES ("145", 'Katie', 'Hernandez', '92 Chico Way', 'Los Angeles', 'CA', "98008", "8586667641"); INSERT INTO customers (id, first_name, last_name, address, city, state, zip, phone_number) VALUES (145, 'Katie', 'Hernandez', '92 Chico Way', 'Los Angeles', 'CA', 98008, 8586667641); (*) INSERT INTO customers (id 145, first_name 'Katie', last_name 'Hernandez', address '92 Chico Way', city 'Los Angeles', state 'CA', zip 98008, phone_number 8586667641);

Incorrect. Refer to Section 7 5. Is it possible to insert more than one row at a time using an INSERT statement with a VALUES clause? Mark for Review (1) Points No, you can only create one row at a time when using the VALUES clause. (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Yes, you can just list as many rows as you want, just remember to separate the rows with commas. No, there is no such thing as INSERT …. VALUES. 6. To return a table summary on the customers table, which of the following is correct? Mark for Review (1) Points SHOW customers, or SEE customers DISTINCT customers, or DIST customers DESCRIBE customers, or DESC customers (*) DEFINE customers, or DEF customers Incorrect. Refer to Section 7 7. What is the quickest way to use todays date when you are creating a new row? Mark for Review (1) Points Simply write todays date in the format of 'dd-mon-rr'. Simply use the keyword DATE in the insert statement. Use the SYSDATE function. (*) Use the TODAYS_DATE function. 8. Insert statements can be combined with subqueries to create more than one row per statement. True or False? Mark for Review (1) Points True (*) False 9. If the employees table have 7 rows how many rows are inserted into the copy_emps table with the following statement: INSERT INTO copy_emps (employee_id, first_name, last_name, salary, department_id) SELECT employee_id, first_name, last_name, salary, department_id FROM employees Mark for Review (1) Points No rows, as you cannot use subqueries in an insert statement. 7 rows, as there is no WHERE-clause on the subquery. (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

No rows, as the select statement is invalid. 10 rows will be created.

Page 1 of 1

Test: Quiz: Updating Column Values and Deleting Rows

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Updating Column Values and Deleting Rows (Answer all questions in this section) 1. Which of the following statements best describes what will happen to the student table in this SQL statement? UPDATE students SET lunch_number = (SELECT lunch_numer FROM students WHERE student_id = 17) WHERE student_id = 19; Mark for Review (1) Points The statement updates the student_table by replacing student id 19’s lunch number with student id 17’s lunch number. (*) Inserts a new row into the students table. Does nothing, the as you cannot use subqueries in update statements. Deletes student 17's lunch_number and inserts a new value from student 19. Correct 2. Is the following statement valid, i.e. is it allowed to update rows in one table, based on a subquery from another table? UPDATE copy_emp SET department_id = (SELECT department_id FROM employees WHERE employee_id = 100) WHERE job_id = (SELECT job_id FROM employees

This watermark does not appear in the registered version - http://www.clicktoconvert.com

WHERE employee_id = 200); Mark for Review (1) Points Yes, this is a perfectly valid statement. (*) The statement will fail, because the subqueries are returning data from different rows No, this will not work No, this statement will return an error. 3. How many rows will be deleted from the employees table with the following statement? DELETE FROM employees WHERE last_name = 'king'; Mark for Review (1) Points All the rows in the employees table will be deleted. No rows will be deleted, as no employees match the WHERE-clause. (*) One will will be deleted, as there exists one employee called King. All rows with last_name = 'King' will be deleted. 4. Using your knowledge of the employees table, what would be the result of the following statement: DELETE FROM employees; Mark for Review (1) Points Nothing, no data will be changed. All rows in the employees table will be deleted if there are no constraints on the table. (*) The first row in the employees table will be deleted. Deletes employee number 100. 5. To change an existing row in a table, you can use the UPDATE and INSERT statements. True or False? Mark for Review (1) Points True False (*) Incorrect. Refer to Section 7

This watermark does not appear in the registered version - http://www.clicktoconvert.com

6. Assuming there are no Foreign Keys on the EMPLOYEES table, if the following subquery returns one row, how many rows will be deleted from the EMPLOYEES table? DELETE FROM employees WHERE department_id = (SELECT department_id FROM departments WHERE department_name LIKE '%Public%'); Mark for Review (1) Points No rows will be deleted. One row will be deleted, as the subquery only returns one row. All the rows in the EMPLOYEES table with department_ids matching the department_id returned by the subquery. (*) All rows in the EMPLOYEES table will be deleted, regardless of their department_id.

Page 1 of 1

Test: Quiz: Default Values and the Merge Statement

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Default Values and the Merge Statement (Answer all questions in this section) 1. If a default value was set for a null column, Oracle sets the column to the default value. However, if no default value was set when the column was created, Oracle inserts an empty space. True or False? Mark for Review (1) Points True False (*) Incorrect. Refer to Section 7 2. The MERGE function combines the: (1) Points CREATE and UPDATE commands INSERT and UPDATE commands (*)

Mark for Review

This watermark does not appear in the registered version - http://www.clicktoconvert.com

ALTER and UPDATE commands all of the above Incorrect. Refer to Section 7 3. Which statement below will not insert a row of data onto a table? for Review (1) Points

Mark

INSERT INTO student_table (id, lname, fname, lunch_num) VALUES (143354, 'Roberts', 'Cameron', 6543); INSERT INTO student_table VALUES (143354, 'Roberts', 'Cameron', 6543); INSERT INTO student_table (id, lname, fname, lunch_num) VALUES (143352, 'Roberts', 'Cameron', DEFAULT); INSERT INTO (id, lname, fname, lunch_num) VALUES (143354, 'Roberts', 'Cameron', 6543); (*)

Incorrect. Refer to Section 7 4. The DEFAULT keyword can be used in the following statements: Mark for Review (1) Points INSERT and UPDATE (*) INSERT and DELETE DELETE and UPDATE All of the above 5. The MERGE statement can be used to update rows in one table based on values in another table and if the update fails, then the rows will automatically be inserted instead. True or False? Mark for Review (1) Points True (*) False 6. In developing the Employees table, you create a column called hire_date. You assign the hire_date column a DATE datatype with a DEFAULT value of 0 (zero). A user can come back later and enter the correct hire_date. This is __________. Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

A great idea. When a new employee record is entered, if no hire_date is specified, the 0 (zero) will be automatically specified. A great idea. When new employee records are entered, they can be added faster by allowing the 0's (zeroes) to be automatically specified. Both a and b are correct. A bad idea. The default value must match the DATE datatype of the column. (*) Incorrect. Refer to Section 7

Page 1 of 1

This watermark does not appear in the registered version - http://www.clicktoconvert.com

 

Se ignorã elementele de navigare în conþinutul paginii Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 8 Lesson 1 1.

Evaluate this CREATE TABLE statement:

CREATE TABLE line_item ( line_item_id NUMBER(9), order_id NUMBER(9), product_id NUMBER(9)); You are a member of the SYSDBA role, but are not logged in as SYSDBA. You issue this CREATE TABLE statement. Which statement is true? Mark for Review (1) Points You created the LINE_ITEM table in the public schema. You created the LINE_ITEM table in the SYS schema. You created the table in your schema. (*) You created the table in the SYSDBA schema.

Correct

Correct

2. You are creating the EMPLOYEES table. This table should contain the COMMISSION_PCT column and use a value of 10 percent if no commission value is provided when a record is inserted. Which line should you include in the CREATE TABLE statement to accomplish this task? Mark for Review (1) Points commission_pct NUMBER(4,2) DEFAULT 0.10 (*) commission_pct NUMBER(4,2) DEFAULT = 0.10 commission_pct NUMBER(4,2) DEFAULT (0.10) commission_pct NUMBER(4,2) (DEFAULT, 0.10)

Correct

Correct

3. Which of the following SQL statements will create a table called Birthdays with three columns for storing employee number, name and birthdate? Mark for Review (1) Points CREATE table BIRTHDAYS (EMPNO, EMPNAME, BIRTHDATE); CREATE table BIRTHDAYS (employee number, name, date of birth); CREATE TABLE Birthdays (Empno NUMBER, Empname CHAR(20), Birthdate DATE); (*) CREATE TABLE Birthdays (Empno NUMBER, Empname CHAR(20), Date of Birth DATE);

Correct

Correct 4.

Which column name is valid? Mark for Review

(1) Points 1NUMBER NUMBER NUMBER_1$ (*) 1_NUMBER#

Correct

Correct

5. Which statement about table and column names is true? Mark for Review (1) Points Table and column names must begin with a letter. (*)

Table and column names can begin with a letter or a number. Table and column names cannot include special characters. If any character other than letters or numbers is used in a table or column name, the name must be enclosed in single quotation marks.

Correct

Correct

Section 8 Lesson 2 6. Select two. (1) Points

Which data types stores variable-length character data? Mark for Review (Choose all correct answers)

CHAR NCHAR CLOB (*) VARCHAR2 (*)

Correct

Correct

7. A table has a column: RESPONSE_TIME. This is used to store the difference between the time a problem was reported and until is was resolved. Data in the RESPONSE_TIME column needs to be stored in days, hours, minutes and seconds. Which data type should you use? Mark for Review (1) Points DATETIME TIMESTAMP

INTERVAL YEAR TO MONTH INTERVAL DAY TO SECOND (*)

Correct

Correct 8.

Evaluate this CREATE TABLE statement:

CREATE TABLE sales ( sales_id NUMBER(9), customer_id NUMBER(9), employee_id NUMBER(9), description VARCHAR2(30), sale_date TIMESTAMP WITH LOCAL TIME ZONE DEFAULT SYSDATE, sale_amount NUMBER(7,2)); Which business requirement will this statement accomplish? Mark for Review (1) Points Sales identification values could be either numbers or characters, or a combination of both. All employee identification values are only 6 digits so the column should be variable in length. Description values can range from 0 to 30 characters so the column should be fixed in length. Today's date will be used if no value is provided for the sale date. (*)

Correct

Correct

9. The SPEED_TIME column should store a fractional second value. Which data type should you use? Mark for Review (1) Points DATE

DATETIME TIMESTAMP (*) INTERVAL DAY TO SECOND

Correct

Correct

10. You need to store the SEASONAL data in months and years. Which data type should you use? Mark for Review (1) Points DATE TIMESTAMP INTERVAL YEAR TO MONTH (*) INTERVAL DAY TO SECOND

Correct

Correct

Page 1 of 10

Next

Summary

Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 8 Lesson 2 11. A column that will be used to store binary data up to 4 Gigabyes in size should be defined as which datatype? Mark for Review (1) Points LONG NUMBER BLOB (*)

LONGRAW

Correct

Correct

12. You need to store the HIRE_DATE value with a time zone displacement value and allow data to be returned in the user's local session time zone. Which data type should you use? Mark for Review (1) Points DATETIME TIMESTAMP TIMESTAMP WITH TIME ZONE TIMESTAMP WITH LOCAL TIME ZONE (*)

Correct

Correct

Section 8 Lesson 3 13. You want to issue the following command on a database that includes your company's inventory information: ALTER TABLE products SET UNUSED COLUMN color; What will be the result of issuing this command? Mark for Review (1) Points The column named COLOR in the table named PRODUCTS will be assigned default values. The column named COLOR in the table named PRODUCTS will be created. The column named COLOR in the table named PRODUCTS will be deleted.

The column named COLOR in the table named PRODUCTS will not be returned in subsequent reads of the table by Oracle, as is has been deleted logically. (*)

Correct

Correct

14. You need to remove all the rows from the SALES_HIST table. You want to release the storage space, but do not want to remove the table structure. Which statement should you use? Mark for Review (1) Points the DROP TABLE statement the ALTER TABLE statement the DELETE statement the TRUNCATE TABLE statement (*)

Correct

Correct 15.

The EMPLOYEES table contains these columns:

EMPLOYEE_ID NUMBER(9) Primary Key LAST_NAME VARCHAR2 (20) FIRST_NAME VARCHAR2 (20) DEPARTMENT_ID NUMBER(9) SALARY NUMBER(8,2) Which statement will permanently remove all the data in the EMPLOYEES table, but will retain the table's structure and storage space? Mark for Review (1) Points DROP TABLE employees; DELETE employees; COMMIT; (*) TRUNCATE TABLE employees;

ALTER TABLE employees SET UNUSED (employee_id, last_name, first_name, department_id, salary);

Incorrect

Incorrect. Refer to Section 8 Lesson 3 16.

Evaluate this statement:

ALTER TABLE employees SET UNUSED (fax); Which task will this statement accomplish? Mark for Review (1) Points Deletes the FAX column Frees the disk space used by the data in the FAX column Prevents data in the FAX column from being displayed, by performing a logical drop of the column. (*) Prevents a new FAX column from being added to the EMPLOYEES table

Correct

Correct 17.

The EMPLOYEES contains these columns:

LAST_NAME VARCHAR2(15) NOT NULL FIRST_NAME VARCHAR2(10) NOT NULL EMPLOYEE_ID NUMBER(4) NOT NULL HIRE_DATE DATE NOT NULL You need to remove the EMPLOYEE_ID column from the EMPLOYEES table. Which statement could you use to accomplish this task? Mark for Review (1) Points ALTER TABLE employees MODIFY (employee_id NUMBER(5)); ALTER TABLE employees DELETE employee_id;

ALTER TABLE employees DROP COLUMN employee_id; (*) DELETE FROM employees WHERE column = employee_id;

Correct

Correct 18.

Evaluate this statement:

TRUNCATE TABLE employees; Which statement about this TRUNCATE TABLE statement is true? Mark for Review (1) Points You can produce the same results by issuing the 'DROP TABLE employees' statement. You can issue this statement to retain the structure of the employees table. (*) You can reverse this statement by issuing the ROLLBACK statement. You can produce the same results by issuing the 'DELETE employees' statement.

Incorrect

Incorrect. Refer to Section 8 Lesson 3

19. Which command could you use to quickly remove all data from the rows in a table without deleting the table itself? Mark for Review (1) Points ALTER TABLE DROP TABLE MODIFY TRUNCATE TABLE (*)

Correct

Correct

20. Comments on tables and columns can be stored for documentation by: Mark for Review (1) Points Embedding /* comment */ within the definition of the table. Using the ALTER TABLE CREATE COMMENT syntax Using the COMMENT ON TABLE or COMMENT on COLUMN (*) Using an UPDATE statement on the USER_COMMENTS table

Correct

Correct

Previous Page 2 of 10 Next Summary Se ignorã elementele de navigare în conþinutul paginii Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 8 Lesson 3 21.

The PLAYERS table contains these columns:

PLAYER_ID NUMBER(9) PRIMARY KEY LAST_NAME VARCHAR2(20) FIRST_NAME VARCHAR2(20) TEAM_ID NUMBER(4) SALARY NUMBER(9,2) Which statement should you use to decrease the width of the FIRST_NAME column to 10 if the column currently contains 1500 records, but none are longer than 10 bytes or characters? Mark for Review (1) Points ALTER players TABLE MODIFY COLUMN first_name VARCHAR2(10); ALTER players TABLE MODIFY COLUMN (first_name VARCHAR2(10));

ALTER TABLE players RENAME first_name VARCHAR2(10); ALTER TABLE players MODIFY (first_name VARCHAR2(10)); (*)

Incorrect

Incorrect. Refer to Section 8 Lesson 3 22.

Evaluate the structure of the EMPLOYEES table:

EMPLOYEE_ID NUMBER(9) LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25) DEPARTMENT_ID NUMBER(9) MANAGER_ID NUMBER(9) SALARY NUMBER(7,2) The EMPLOYEE_ID column currently contains 500 employee identification numbers. Business requirements have changed and you need to allow users to include text characters in the identification values. Which statement should you use to change this column's data type? Mark for Review (1) Points ALTER TABLE employee MODIFY (employee_id VARCHAR2(9)); ALTER TABLE employee REPLACE (employee_id VARCHAR2(9)); ALTER employee TABLE MODIFY COLUMN (employee_id VARCHAR2(15)); You CANNOT modify the data type of the EMPLOYEE_ID column, as the table is not empty. (*)

Incorrect

Incorrect. Refer to Section 8 Lesson 3 23.

Which statement about a column is true?

Review (1) Points You cannot increase the width of a CHAR column.

Mark for

You can modify the data type of a column if the column contains non-null data. (*) You can convert a CHAR data type column to the VARCHAR2 data type. You can convert a DATE date type column to a VARCHAR2 column.

Correct

Correct

Section 9 Lesson 1 24. True or False? (1) Points

A table can only have one unique key constraint defined. Mark for Review

True False (*)

Correct

Correct

25. Primary Key, Foreign Key, Unique Key and Check Constraints can be added at which two levels? (Choose two) Mark for Review (1) Points (Choose all correct answers) Null Field Table (*) Row Dictionary Column (*)

Correct

Correct

26. You need to add a NOT NULL constraint to the COST column in the PART table. Which statement should you use to complete this task? Mark for Review (1) Points ALTER TABLE part MODIFY (cost part_cost_nn NOT NULL); ALTER TABLE part MODIFY (cost CONSTRAINT part_cost_nn NOT NULL); (*) ALTER TABLE part MODIFY COLUMN (cost part_cost_nn NOT NULL); ALTER TABLE part ADD (cost CONSTRAINT part_cost_nn NOT NULL);

Incorrect

Incorrect. Refer to Section 9 27.

Which statement about constraints is true?

Mark for

Review (1) Points A single column can have only one constraint applied. PRIMARY KEY constraints can only be specified at the column level. NOT NULL constraints can only be specified at the column level. (*) UNIQUE constraints are identical to PRIMARY KEY constraints.

Correct

Correct

28. Which two statements about NOT NULL constraints are true? (Choose two) Mark for Review (1) Points (Choose all correct answers)

The Oracle Server creates a name for an unnamed NOT NULL constraint. (*) A NOT NULL constraint can be defined at either the table or column level. The NOT NULL constraint requires that every value in a column be unique. Columns without the NOT NULL constraint can contain null values by default. You CANNOT add a NOT NULL constraint to an existing column using the ALTER TABLE ADD CONSTRAINT statement. (*)

Correct

Correct

29. You need to ensure that each value in the SEAT_ID column is unique or null. Which constraint should you define on the SEAT_ID column? Mark for Review (1) Points CHECK UNIQUE (*) NOT NULL PRIMARY KEY

Incorrect

Incorrect. Refer to Section 9

Section 9 Lesson 2 30.

Evaluate this CREATE TABLE statement:

1. CREATE TABLE part(

2. part_id NUMBER, 3. part_name VARCHAR2(25), 4. manufacturer_id NUMBER(9), 5. cost NUMBER(7,2), 6. retail_price NUMBER(7,2) NOT NULL, 7. CONSTRAINT part_id_pk PRIMARY KEY(part_id), 8. CONSTRAINT cost_nn NOT NULL(cost), 9. CONSTRAINT FOREIGN KEY (manufacturer_id) REFERENCES manufacturer(id)); Which line will cause an error? Mark for Review (1) Points 6 7 8 (*) 9

Correct Previous

Correct Page 3 of 10

Next

Summary

Se ignorã elementele de navigare în conþinutul paginii Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 9 Lesson 2 31. You need to create a composite primary key constraint on the EMPLOYEE table. Which statement is true? Mark for Review (1) Points The PRIMARY KEY constraint must be defined at the table level. (*) A PRIMARY KEY constraint must be defined for each column in the composite primary key. The PRIMARY KEY constraint must be defined for the first column of the composite primary key.

The PRIMARY KEY constraint must be defined at the table level and for each column in the composite primary key.

Correct

Correct

32. Which type of constraint by default requires that a column be both unique and not null? Mark for Review (1) Points FOREIGN KEY PRIMARY KEY (*) UNIQUE CHECK

Correct

Correct

33. How many PRIMARY KEY constraints can be created for each table? Mark for Review (1) Points none one and only one (*) one or two unlimited

Incorrect

Incorrect. Refer to Section 9 34.

DONATIONS

Evaluate the structure of the DONATIONS table.

PLEDGE_ID NUMBER NOT NULL, Primary Key DONOR_ID NUMBER Foreign key to DONOR_ID column of DONORS table PLEDGE_DT DATE AMOUNT_PLEDGED NUMBER (7,2) AMOUNT_PAID NUMBER (7,2) PAYMENT_DT DATE Which CREATE TABLE statement should you use to create the DONATIONS table? Mark for Review (1) Points CREATE TABLE donations (pledge_id NUMBER PRIMARY KEY, donor_id NUMBER FOREIGN KEY REFERENCES donors(donor_id), pledge_date DATE, amount_pledged NUMBER, amount_paid NUMBER, payment_dt DATE);

CREATE TABLE donations (pledge_id NUMBER PRIMARY KEY NOT NULL, donor_id NUMBER FOREIGN KEY donors(donor_id), pledge_date DATE, amount_pledged NUMBER(7,2), amount_paid NUMBER(7,2), payment_dt DATE);

CREATE TABLE donations pledge_id NUMBER PRIMARY KEY, donor_id NUMBER FOREIGN KEY donor_id_fk REFERENCES donors(donor_id), pledge_date DATE, amount_pledged NUMBER(7,2), amount_paid NUMBER(7,2), payment_dt DATE;

CREATE TABLE donations (pledge_id NUMBER PRIMARY KEY, donor_id NUMBER CONSTRAINT donor_id_fk REFERENCES donors(donor_id), pledge_date DATE, amount_pledged NUMBER(7,2), amount_paid NUMBER(7,2), payment_dt DATE); (*)

Correct

Correct

35. When creating a referential constraint, which keyword(s) identifies the table and column in the parent table? Mark for Review (1) Points FOREIGN KEY

REFERENCES (*) ON DELETE CASCADE ON DELETE SET NULL

Correct

Correct

36. Which clause could you use to ensure that cost values are greater than 1.00? Mark for Review (1) Points CONSTRAINT CHECK cost > 1.00 CONSTRAINT part_cost_ck CHECK (cost > 1.00) (*) CHECK CONSTRAINT part_cost_ck (cost > 1.00) CONSTRAINT CHECK part_cost_ck (cost > 1.00)

Incorrect

Incorrect. Refer to Section 9

37. What is an attribute of data that is entered into a primary key column? Mark for Review (1) Points Null and non-unique values cannot be entered into a primary key column. (*) Data that is entered into a primary key column automatically increments by a value of 1 each time a new record is entered into the table. Data that is entered into a primary key column references a column of the same datatype in another table. Data that is entered into a primary key column is restricted to a range of numbers that is defined by the local Oracle database.

Correct

Correct

Section 9 Lesson 3 38. Which statement should you use to add a FOREIGN KEY constraint to the DEPARTMENT_ID column in the EMPLOYEES table to refer to the DEPARTMENT_ID column in the DEPARTMENTS table? Mark for Review (1) Points ALTER TABLE employees MODIFY COLUMN dept_id_fk FOREIGN KEY (department_id) REFERENCES departments(department_id);

ALTER TABLE employees ADD CONSTRAINT dept_id_fk FOREIGN KEY (department_id) REFERENCES departments(department_id); (*) ALTER TABLE employees ADD FOREIGN KEY CONSTRAINT dept_id_fk ON (department_id) REFERENCES departments(department_id);

ALTER TABLE employees ADD FOREIGN KEY departments(department_id) REFERENCES (department_id);

Correct

Correct

39. When dropping a constraint, which keyword(s) specifies that all the referential integrity constraints that refer to the primary and unique keys defined on the dropped columns are dropped as well? Mark for Review (1) Points FOREIGN KEY REFERENCES

CASCADE (*) ON DELETE SET NULL

Correct

Correct

40. You need to remove the EMP_FK_DEPT constraint from the EMPLOYEES table in your schema. Which statement should you use? Mark for Review (1) Points DROP CONSTRAINT EMP_FK_DEPT FROM employees; DELETE CONSTRAINT EMP_FK_DEPT FROM employees; ALTER TABLE employees DROP CONSTRAINT EMP_FK_DEPT; (*) ALTER TABLE employees REMOVE CONSTRAINT EMP_FK_DEPT;

Correct

Correct

Previous Page 4 of 10 Next Summary Se ignorã elementele de navigare în conþinutul paginii Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 9 Lesson 3 41.

The PO_DETAILS table contains these columns:

PO_NUM NUMBER NOT NULL, Primary Key PO_LINE_ID NUMBER NOT NULL, Primary Key PRODUCT_ID NUMBER Foreign Key to PRODUCT_ID column of the PRODUCTS table QUANTITY NUMBER UNIT_PRICE NUMBER(5,2) Evaluate this statement: ALTER TABLE po_details DISABLE CONSTRAINT po_details_pk CASCADE;

For which task would you issue this statement? Mark for Review (1) Points To create a new PRIMARY KEY constraint on the PO_NUM column To drop and recreate the PRIMARY KEY constraint on the PO_NUM column To disable the PRIMARY KEY and any FOREIGN KEY constraints that are dependent on the PO_NUM column (*) To disable the constraint on the PO_NUM column while creating a PRIMARY KEY index

Correct

Correct 42.

This SQL command will do what?

ALTER TABLE employees ADD CONSTRAINT emp_manager_fk FOREIGN KEY(manager_id) REFERENCES employees(employee_id); Mark for Review (1) Points Alter the table employees and disable the emp_manager_fk constraint. Add a FOREIGN KEY constraint to the EMPLOYEES table indicating that a manager must already be an employee. (*) Add a FOREIGN KEY constraint to the EMPLOYEES table restricting manager ID to match every employee ID. Alter table employees and add a FOREIGN KEY constraint that indicates each employee ID must be unique.

Correct

Correct

43. You need to add a NOT NULL constraint to the EMAIL column in the EMPLOYEES table. Which clause should you use? Mark for Review (1) Points ADD CHANGE MODIFY (*) ENABLE

Correct

Correct

44. What is the syntax for removing a PRIMARY KEY constraint and all its dependent constraints? Mark for Review (1) Points ALTER TABLE table_name DROP CONSTRAINT constraint_name CASCADE; (*) ALTER TABLE table_name DROP CONSTRAINT FOREIGN KEY CASCADE;

DROP CONSTRAINT table_name (constraint_name);

ALTER TABLE table_name DROP CONSTRAINT constraint_name;

Correct

Correct 45.

Evaluate this statement

ALTER TABLE employees

ENABLE CONSTRAINT emp_id_pk; For which task would you issue this statement? Mark for Review (1) Points to add a new constraint to the EMPLOYEES table to disable an existing constraint on the EMPLOYEES table to activate a new constraint while preventing the creation of a PRIMARY KEY index to activate the previously disabled constraint on the EMPLOYEE_ID column while creating a PRIMARY KEY index (*)

Correct

Correct

46. What actions can be performed on or with Constraints? Mark for Review (1) Points Add, Drop, Enable, Disable, Cascade (*) Add, Minus, Enable, Disable, Collapse Add, Subtract, Enable, Cascade Add, Drop, Disable, Disregard

Correct

Correct

47. You need to display the names and definitions of constraints only in your schema. Which data dictionary view should you query? Mark for Review (1) Points DBA_CONSTRAINTS

USER_CONSTRAINTS (*) ALL_CONS_COLUMNS USER_CONS_COLUMNS

Correct

Correct

Section 10 Lesson 1 48. Which option would you use to modify a view rather than dropping it and recreating it? Mark for Review (1) Points FORCE NOFORCE CREATE OR REPLACE (*) WITH ADMIN OPTION

Correct

Correct

49. using a view? (1) Points

Which of the following statements is a valid reason for Mark for Review

Views allow access to the data because the view displays all of the columns from the table. Views provide data independence for infrequent users and application programs. One view can be used to retrieve data from several tables. Views can be used to provide data security. (*) Views are used when you only want to restrict DML operations using a WITH CHECK OPTION.

Views are not valid unless you have more than one user.

Correct

Correct

50. You need to create a view that when queried will display the name, employee identification number, first and last name, salary, and department identification number. When queried, the display should be sorted by salary from lowest to highest, then by last name and first name alphabetically. The view definition should be created regardless of the existence of the EMPLOYEES table. No DML may be performed when using this view. Evaluate these statements: CREATE OR REPLACE NOFORCE VIEW EMP_SALARY_V AS SELECT employee_id, last_name, first_name, salary, department_id FROM employees WITH READ ONLY; SELECT * FROM emp_salary_v ORDER BY salary, last_name, first_name; Which statement is true? Mark for Review (1) Points When both statements are executed all of the desired results are achieved. The CREATE VIEW statement will fail if the EMPLOYEES table does not exist. (*) The statements will NOT return all of the desired results because the WITH CHECK OPTION clause is NOT included in the CREATE VIEW statement. To achieve all of the desired results this ORDER ON clause should be added to the CREATE VIEW statement: 'ORDER ON salary, last_name, first_name'.

Correct Previous

Correct Page 5 of 10

Next

Summary

Se ignorã elementele de navigare în conþinutul paginii Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 10 Lesson 1 51. You need to create a view on the SALES table, but the SALES table has not yet been created. Which statement is true? Mark for Review (1) Points You must create the SALES table before creating the view. By default, the view will be created even if the SALES table does not exist. You can create the table and the view at the same time using the FORCE option. You can use the FORCE option to create the view before the SALES table has been created. (*)

Incorrect

Incorrect. Refer to Section 10

52. In order to query a database using a view, which of the following statements applies? Mark for Review (1) Points Use special VIEWSELECT Keyword You can retrieve data from a view as you would from any table. (*) You can never see all the rows in the table through the view. The tables you are selecting from can be empty, yet the view still returns the original data from those tables.

Correct

Correct

53. Which keyword(s) would you include in a CREATE VIEW statement to create the view regardless of whether or not the base table exists? Mark for Review (1) Points FORCE (*) NOFORCE OR REPLACE WITH READ ONLY

Correct

Correct

54. Which statement about the CREATE VIEW statement is True? Mark for Review (1) Points A CREATE VIEW statement CAN contain a join query. (*) A CREATE VIEW statement CANNOT contain an ORDER BY clause. A CREATE VIEW statement CANNOT contain a function. A CREATE VIEW statement CANNOT contain a GROUP BY clause.

Incorrect

Incorrect. Refer to Section 10 55.

Evaluate this view definition:

CREATE OR REPLACE VIEW part_name_v AS SELECT DISTINCT part_name FROM parts WHERE cost >= 45; Which of the following statements using the PART_NAME_V view will execute successfully? Mark for Review (1) Points

SELECT * FROM part_name_v; (*) UPDATE part_name_v SET cost = cost * 1.23 WHERE part_id = 56990;

DELETE FROM part_name_v WHERE part_id = 56897;

INSERT INTO part_name_v (part_id, part_name, product_id, cost) VALUES (857986, 'cylinder', 8790, 3.45);

Incorrect

Incorrect. Refer to Section 10

Section 10 Lesson 2 56. You administer an Oracle database. Jack manages the Sales department. He and his employees often find it necessary to query the database to identify customers and their orders. He has asked you to create a view that will simplify this procedure for himself and his staff. The view should not accept INSERT, UPDATE or DELETE operations. Which of the following statements should you issue? Mark for Review (1) Points CREATE VIEW sales_view AS (SELECT companyname, city, orderid, orderdate, total FROM customers, orders WHERE custid = custid) WITH READ ONLY;

CREATE VIEW sales_view (SELECT c.companyname, c.city, o.orderid, o. orderdate, o.total FROM customers c, orders o WHERE c.custid = o.custid) WITH READ ONLY;

CREATE VIEW sales_view AS (SELECT c.companyname, c.city, o.orderid, o.orderdate, o.total FROM customers c, orders o WHERE c.custid = o.custid);

CREATE VIEW sales_view AS (SELECT c.companyname, c.city, o.orderid, o.orderdate, o.total FROM customers c, orders o WHERE c.custid = o.custid) WITH READ ONLY; (*)

Correct

Correct

57. Which option would you use when creating a view to ensure that no DML operations occur on the view? Mark for Review (1) Points FORCE NOFORCE WITH READ ONLY (*) WITH ADMIN OPTION

Incorrect

Incorrect. Refer to Section 10

58. You cannot modify data in a view if the view contains ______. Mark for Review (1) Points the DISTINCT keyword (*) a WHERE clause a subquery in the FROM clause

the WITH CHECK OPTION clause

Correct

Correct

59. You cannot insert data through a view if the view includes ______. Mark for Review (1) Points a WHERE clause a join a column alias a GROUP BY clause (*)

Correct

Correct

60. You create a view on the EMPLOYEES and DEPARTMENTS tables to display salary information per department. What will happen if you issue the following statement: CREATE OR REPLACE VIEW sal_dept AS SELECT SUM(e.salary) sal, d.department_name FROM employees e, departments d WHERE e.department_id = d.department_id GROUP BY d.department_name ORDER BY d.department_name; Mark for Review (1) Points A complex view is created that returns the sum of salaries per department, sorted by department name. (*) A simple view is created that returns the sum of salaries per department, sorted by department name.

A complex view is created that returns the sum of salaries per department, sorted by department id. Nothing, as the statement constains an error and will fail.

Incorrect Previous

Incorrect. Refer to Section 10 Page 6 of 10

Next

Summary

Se ignorã elementele de navigare în conþinutul paginii Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 10 Lesson 2 61. You can create a view if the view subquery contains an inline view. True or False? Mark for Review (1) Points True (*) False

Correct

Correct

62. You need to create a new view on the EMPLOYEES table to update salary information for employees in Department 50. You need to ensure that DML operations through the view do not change the result set of the view. Which clause should include in the CREATE VIEW statement? Mark for Review (1) Points FORCE OR REPLACE WITH READ ONLY WITH CHECK OPTION (*)

Correct

Correct

Section 10 Lesson 3 63.

Which statement about an inline view is true?

Mark

for Review (1) Points An inline view is a schema object. An inline view is a subquery in the FROM clause, often named with an alias. (*) An inline view is a complex view. An inline view can be used to perform DML operations.

Correct

Correct 64.

The EMPLOYEES table contains these columns:

EMPLOYEE_ID NUMBER LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25) DEPARTMENT_ID NUMBER JOB_ID NUMBER MANAGER_ID NUMBER SALARY NUMBER(9,2) COMMISSOIN NUMBER(7,2) HIRE_DATE DATE Which SELECT statement could be used to display the 10 lowest paid clerks that belong to department 70? Mark for Review (1) Points SELECT ROWNUM "Ranking", last_name||' ,'||first_name "Employee", salary "Salary" FROM (SELECT last_name, first_name, salary FROM employees ORDER BY salary) WHERE ROWNUM <=10 AND job_id LIKE 'CLERK' AND department_id = 70;

SELECT ROWNUM "Ranking",last_name||','||first_name "Employee", salary "Salary" FROM (SELECT last_name, first_name, salary, job_id FROM employees WHERE job_id LIKE 'CLERK' AND department_id = 70 ORDER BY salary) WHERE ROWNUM <=10; (*) SELECT ROWNUM "Ranking", last_name||' ,'||first_name "Employee", salary "Salary" FROM (SELECT last_name, first_name, salary,job_id,dept_id FROM employees WHERE ROWNUM <=10 ORDER BY salary) WHERE job_id LIKE 'CLERK' AND department_id = 70;

The only way is to use the data dictionary.

Correct

Correct

65. The EMP_HIST_V view is no longer needed. Which statement should you use to the remove this view? Mark for Review (1) Points DROP emp_hist_v; DELETE emp_hist_v; REMOVE emp_hist_v; DROP VIEW emp_hist_v; (*)

Correct

Correct

66. You must create a view that when queried will display the name, customer identification number, new balance, finance charge and credit limit of all customers. You issue this statement: CREATE OR REPLACE VIEW CUST_CREDIT_V AS SELECT c.last_name, c.customer_id, a.new_balance, a.finance_charge, a.credit_limit FROM customers c, accounts a WHERE c.account_id = a.account_id WITH READ ONLY; Which type of SQL command can be issued on the CUST_CREDIT_V view? Mark for Review (1) Points UPDATE DELETE INSERT SELECT (*)

Correct

Correct

67. You want to create a view based on the SALESREP table. You plan to grant access to this view to members of the Sales department. You want Sales employees to be able to update the SALESREP table through the view, which you plan to name SALESREP_VIEW. What should not be specified in your CREATE VIEW statement? Mark for Review (1) Points the AS keyword a WHERE clause the IN keyword a GROUP BY clause (*)

Correct

Correct

Section 11 Lesson 2 68.

What is the most common use for a Sequence?

Mark for

Review (1) Points To generate primary key values (*) To improve the performance of some queries To give an alternative name for an object To logically represent subsets of data from one or more tables

Incorrect

Incorrect. Refer to Section 11 69.

The ALTER SEQUENCE statement can be used to:

Mark for

Review (1) Points Change the START WITH value of a sequence Change the maximum value to a lower number than was last used Change the name of the sequence Change how much a sequence increments by each time a number is generated (*)

Incorrect

Incorrect. Refer to Section 11 70.

Evaluate this CREATE SEQUENCE statement:

CREATE SEQUENCE line_item_id_seq INCREMENT BY -1; Which statement is true? Mark for Review (1) Points

The statement will not execute successfully. The sequence will generate sequential descending values. (*) The starting value of the LINE_ITEM_ID_SEQ sequence will by -1. The minimum value of the LINE_ITEM_ID_SEQ will be the smallest possible integer value.

Correct Previous

Correct Page 7 of 10

Next

Summary

Se ignorã elementele de navigare în conþinutul paginii Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 11 Lesson 2 71. You created the LOCATION_ID_SEQ sequence to generate sequential values for the LOCATION_ID column in the MANUFACTURERS table. You issue this statement: ALTER TABLE manufacturers MODIFY (location_id NUMBER(6)); Which statement about the LOCATION_ID_SEQ sequence is true? Mark for Review (1) Points The sequence is unchanged. (*) The sequence is deleted and must be recreated. The current value of the sequence is reset to zero. The current value of the sequence is reset to the sequence's START WITH value.

Incorrect

Incorrect. Refer to Section 11

72.

You issue this statement:

ALTER SEQUENCE po_sequence INCREMENT BY 2; Which statement is true? Mark for Review (1) Points Sequence numbers will be cached. Future sequence numbers generated will increase by 2 each time a number is generated. (*) If the PO_SEQUENCE sequence does not exist, it will be created. The statement fails if the current value of the sequence is greater than the START WITH value.

Correct

Correct

Section 11 Lesson 3 73. Which of the following is created automatically by Oracle when a UNIQUE integrity constraint is created? Mark for Review (1) Points a PRIMARY KEY constraint a CHECK constraint an index (*) a FOREIGN KEY constraint

Incorrect

Incorrect. Refer to Section 11

74. Which of the following SQL statements will display the index name, table name, and the uniqueness of the index for all indexes on the EMPLOYEES table? Mark for Review (1) Points CREATE index_name, table_name, uniqueness FROM user_indexes WHERE table_name = 'EMPLOYEES';

SELECT index_name, table_name, uniqueness FROM 'EMPLOYEES';

SELECT index_name, table_name, uniqueness FROM user_indexes WHERE table_name = 'EMPLOYEES'; (*) SELECT index_name, table_name, uniqueness FROM user_indexes WHERE index = EMPLOYEES;

Correct

Correct

75. Unique indexes are automatically created on columns that have which two types of constraints? Mark for Review (1) Points NOT NULL and UNIQUE UNIQUE and PRIMARY KEY (*) UNIQUE and FOREIGN KEY PRIMARY KEY and FOREIGN KEY

Correct

Correct

76. execute faster?

What would you create to make the following statement

SELECT * FROM employees WHERE LOWER(last_name) = 'chang'; Mark for Review (1) Points A synonym. An index, either a normal or a function_based index. (*) A composite index. Nothing; the performance of this statement cannot be improved.

Correct

Correct

77. User Mary's schema contains an EMPLOYEES table. Mary has Database Administrator privileges and executes the following statement: CREATE PUBLIC SYNONYM employees FOR mary.employees; User Susan now needs to SELECT from Mary's EMPLOYEES table. Which of the following SQL statements can she use? (Choose two) Mark for Review (1) Points (Choose all correct answers) CREATE SYNONYM marys_employees FOR mary(employees); SELECT * FROM employees; (*) SELECT * FROM employees.mary; SELECT * FROM mary.employees; (*)

Correct

Correct

78. When creating an index on a table, which of the following statements are true? (Choose two) Mark for Review (1) Points (Choose all correct answers) You should create an index if the table is large and most queries are expected to retrieve less than 2 to 4 percent of the rows. (*) You should always create an index on tables that are frequently updated. You should create an index if one or more columns are frequently used together in a join condition. (*) You should create an index if the table is very small.

Correct

Correct

79. You want to create a composite index on the FIRST_NAME and LAST_NAME columns of the EMPLOYEES table. Which SQL statement will accomplish this task? Mark for Review (1) Points CREATE INDEX fl_idx ON employees(first_name || last_name);

CREATE INDEX fl_idx ON employees(first_name), employees(last_name);

CREATE INDEX fl_idx ON employees(first_name,last_name); (*) CREATE INDEX fl_idx ON employees(first_name); CREATE INDEX fl_idx ON employees(last_name);

Correct

Correct

80.

The CLIENTS table contains these columns:

CLIENT_ID NUMBER(4) NOT NULL PRIMARY KEY LAST_NAME VARCHAR2(15) FIRST_NAME VARCHAR2(10) CITY VARCHAR2(15) STATE VARCHAR2(2) You want to create an index named ADDRESS_INDEX on the CITY and STATE columns of the CLIENTS table. You issue this statement: CREATE INDEX clients ON address_index (city, state); Which result does this statement accomplish? Mark for Review (1) Points An index named ADDRESS_INDEX is created on the CITY and STATE columns. An index named CLIENTS is created on the CITY and STATE columns. An index named CLIENTS_INDEX is created on the CLIENTS table. An error message is produced, and no index is created. (*)

Correct Previous

Correct Page 8 of 10

Next

Summary

Se ignorã elementele de navigare în conþinutul paginii Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 11 Lesson 3 81. Which one of the following statements about indexes is true? Mark for Review (1) Points An index is created automatically when a PRIMARY KEY constraint is created. (*)

An index must be created by a database administrator when a PRIMARY KEY constraint is created. An index is never created for a unique constraint. An index cannot be created before a PRIMARY KEY constraint is created.

Incorrect

Incorrect. Refer to Section 11

82. Which statement would you use to remove the LAST_NAME_IDX index on the LAST_NAME column of the EMPLOYEES table? Mark for Review (1) Points DROP INDEX last_name_idx; (*) DROP INDEX last_name_idx(last_name); DROP INDEX last_name_idx(employees.last_name); ALTER TABLE employees DROP INDEX last_name_idx;

Correct

Correct

83. You need to determine the table name and column name(s) on which the SALES_IDX index is defined. Which data dictionary view would you query? Mark for Review (1) Points USER_INDEXES USER_TABLES USER_OBJECTS USER_IND_COLUMNS (*)

Correct

Correct 84.

For which column would you create an index?

Mark for

Review (1) Points A column which has only 4 distinct values. A column that is updated frequently A column with a large number of null values (*) A column that is infrequently used as a query search condition

Correct

Correct 85.

The EMPLOYEES table contains these columns:

EMPLOYEE_ID NOT NULL, Primary Key SOCIAL_SECURITY_NUMBER NOT NULL, Unique LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25) DEPARTMENT_ID NUMBER Foreign Key to DEPARTMENT_ID column of the DEPARTMENTS table SALARY NUMBER(8,2) You execute this statement: CREATE INDEX emp_name_idx ON employees(last_name, first_name); Which statement is true? Mark for Review (1) Points The statement creates a function-based index. The statement fails because of a syntax error. The statement creates a composite unique index.

The statement creates a composite non-unique index. (*)

Correct

Correct

Section 12 Lesson 2 86. You want to grant user BOB the ability to change other users' passwords. Which privilege should you grant to BOB? Mark for Review (1) Points The ALTER USER privilege (*) The CREATE USER privilege The DROP USER privilege The CREATE PROFILE privilege

Correct

Correct

87. Which of the following privileges must be assigned to a user account in order for that user to connect to an Oracle database? Mark for Review (1) Points ALTER SESSION CREATE SESSION (*) OPEN SESSION START SESSION

Correct

Correct

88. Which of the following are object privileges? (Choose two) Mark for Review (1) Points (Choose all correct answers) SELECT (*) DROP TABLE CREATE TABLE INSERT (*)

Correct

Correct

89. You grant user AMY the CREATE SESSION privilege. Which type of privilege have you granted to AMY? Mark for Review (1) Points A system privilege (*) An object privilege A user privilege An access privilege

Correct

Correct

90. You are the database administrator. You want to create a new user JONES with a password of MARK, and allow this user to create his own tables. Which of the following should you execute? Mark for Review (1) Points CREATE USER jones IDENTIFIED BY mark; GRANT CREATE TABLE TO jones;

CREATE USER jones IDENTIFIED BY mark; GRANT CREATE SESSION TO jones; GRANT CREATE TABLE TO jones; (*) GRANT CREATE SESSION TO jones; GRANT CREATE TABLE TO jones;

CREATE USER jones IDENTIFIED BY mark; GRANT CREATE SESSION TO jones;

Correct Previous

Correct Page 9 of 10

Next

Summary

Se ignorã elementele de navigare în conþinutul paginii Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 12 Lesson 2 91. Which of the following are system privileges? (Choose two) Mark for Review (1) Points (Choose all correct answers) CREATE TABLE (*) UPDATE CREATE SYNONYM (*) INDEX

Correct

Correct

92. User JAMES has created a CUSTOMERS table and wants to allow all other users to SELECT from it. Which command should JAMES use to do this? Mark for Review (1) Points GRANT customers(SELECT) TO PUBLIC; GRANT SELECT ON customers TO ALL; GRANT SELECT ON customers TO PUBLIC; (*) CREATE PUBLIC SYNONYM customers FOR james.customers;

Correct

Correct

Section 12 Lesson 3 93. Which statement would you use to give a role to users? Mark for Review (1) Points GRANT (*) ALTER USER CREATE USER ASSIGN

Correct

privileges? (1) Points

Correct 94.

an index

Which of the following simplifies the administration of Mark for Review

a view a trigger a role (*)

Correct

Correct

95. User BOB's schema contains an EMPLOYEES table. BOB executes the following statement: GRANT SELECT ON employees TO mary WITH GRANT OPTION; Which of the following statements can MARY now execute successfully? (Choose two) Mark for Review (1) Points (Choose all correct answers) SELECT FROM bob.employees; (*) REVOKE SELECT ON bob.employees FROM bob; GRANT SELECT ON bob.employees TO PUBLIC; (*) DROP TABLE bob.employees;

Correct

Correct

96. Which data dictionary view shows which system privileges have been granted to a user? Mark for Review (1) Points USER_TAB_PRIVS USER_SYS_PRIVS (*) USER_SYSTEM_PRIVS

USER_SYSTEM_PRIVILEGES

Correct

Correct

97. Granting an object privilege WITH GRANT OPTION allows the recipient to grant other object privileges on the table to other users. True or False? Mark for Review (1) Points True False (*)

Correct

Correct

98. Which keyword would you use to grant an object privilege to all database users? Mark for Review (1) Points ADMIN ALL PUBLIC (*) USERS

Correct

Correct

Section 14 Lesson 1 99.

Examine the following statements:

UPDATE employees SET salary = 15000; SAVEPOINT upd1_done; UPDATE employees SET salary = 22000;

SAVEPOINT upd2_done; DELETE FROM employees; You want to retain all the employees with a salary of 15000; What statement would you execute next? Mark for Review (1) Points ROLLBACK; ROLLBACK TO SAVEPOINT upd1_done; (*) ROLLBACK TO SAVEPOINT upd2_done; ROLLBACK TO SAVE upd1_done; There is nothing you can do, either all changes must be rolled back, or none of them can be rolled back.

Correct

Correct

100. Table MYTAB contains only one column of datatype CHAR(1). A user executes the following statements in the order shown. INSERT INTO mytab VALUES ('A'); INSERT INTO mytab VALUES ('B'); COMMIT; INSERT INTO mytab VALUES ('C'); ROLLBACK; Which rows does the table now contain? Mark for Review (1) Points A, B and C A and B (*) C None of the above

Correct Previous

Correct Page 10 of 10

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 8 Lesson 1 1. You are creating the EMPLOYEES table. This table should contain the COMMISSION_PCT column and use a value of 10 percent if no commission value is provided when a record is inserted. Which line should you include in the CREATE TABLE statement to accomplish this task? Mark for Review (1) Points commission_pct NUMBER(4,2) DEFAULT 0.10 (*) commission_pct NUMBER(4,2) DEFAULT = 0.10 commission_pct NUMBER(4,2) DEFAULT (0.10) commission_pct NUMBER(4,2) (DEFAULT, 0.10)

Correct

Correct 2.

Evaluate this CREATE TABLE statement:

CREATE TABLE line_item ( line_item_id NUMBER(9), order_id NUMBER(9), product_id NUMBER(9)); You are a member of the SYSDBA role, but are not logged in as SYSDBA. You issue this CREATE TABLE statement. Which statement is true? Mark for Review (1) Points You created the LINE_ITEM table in the public schema. You created the LINE_ITEM table in the SYS schema. You created the table in your schema. (*) You created the table in the SYSDBA schema.

Incorrect

Incorrect. Refer to Section 8 3.

Which CREATE TABLE statement will fail?

Mark for

Review (1) Points CREATE TABLE date_1 (date_1 DATE); CREATE TABLE date (date_id NUMBER(9)); (*) CREATE TABLE time (time_id NUMBER(9)); CREATE TABLE time_date (time NUMBER(9));

Correct

Correct

4. Which statement about table and column names is true? Mark for Review (1) Points Table and column names must begin with a letter. (*) Table and column names can begin with a letter or a number. Table and column names cannot include special characters. If any character other than letters or numbers is used in a table or column name, the name must be enclosed in single quotation marks.

Incorrect

Incorrect. Refer to Section 8 5.

Which statement about creating a table is true?

Mark

for Review (1) Points With a CREATE TABLE statement, a table will always be created in the current user's schema.

If no schema is explicitly included in a CREATE TABLE statement, the table is created in the current user's schema. (*) If no schema is explicitly included in a CREATE TABLE statement, the CREATE TABLE statement will fail. If a schema is explicitly included in a CREATE TABLE statement and the schema does not exist, it will be created.

Correct

Correct

Section 8 Lesson 2 6.

Evaluate this CREATE TABLE statement:

CREATE TABLE sales ( sales_id NUMBER(9), customer_id NUMBER(9), employee_id NUMBER(9), description VARCHAR2(30), sale_date TIMESTAMP WITH LOCAL TIME ZONE DEFAULT SYSDATE, sale_amount NUMBER(7,2)); Which business requirement will this statement accomplish? Mark for Review (1) Points Sales identification values could be either numbers or characters, or a combination of both. All employee identification values are only 6 digits so the column should be variable in length. Description values can range from 0 to 30 characters so the column should be fixed in length. Today's date will be used if no value is provided for the sale date. (*)

Correct

Correct

7.

Which statement about data types is true?

Mark for

Review (1) Points The BFILE data type stores character data up to four gigabytes in the database. The TIMESTAMP data type is a character data type. The VARCHAR2 data type should be used for fixed-length character data. The CHAR data type requires that a minimum size be specified when defining a column of this type. (*)

Correct

Correct

8. The SPEED_TIME column should store a fractional second value. Which data type should you use? Mark for Review (1) Points DATE DATETIME TIMESTAMP (*) INTERVAL DAY TO SECOND

Incorrect

Incorrect. Refer to Section 8 9.

Select two. (1) Points

Which data types stores variable-length character data? Mark for Review (Choose all correct answers)

CHAR NCHAR CLOB (*) VARCHAR2 (*)

Incorrect

Incorrect. Refer to Section 8

10. You are designing a table for the Human Resources department. This table must include a column that contains each employee's hire date. Which data type should you specify for this column? Mark for Review (1) Points CHAR DATE (*) TIMESTAMP INTERVAL YEAR TO MONTH

Correct

Correct

Page 1 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 8 Lesson 2 11. You need to store the SEASONAL data in months and years. Which data type should you use? Mark for Review (1) Points DATE

TIMESTAMP INTERVAL YEAR TO MONTH (*) INTERVAL DAY TO SECOND

Incorrect

Incorrect. Refer to Section 8

12. You are designing a table for the Sales department. You need to include a column that contains each sales total. Which data type should you specify for this column? Mark for Review (1) Points CHAR DATE NUMBER (*) VARCHAR2

Incorrect

Incorrect. Refer to Section 8

Section 8 Lesson 3 13. You need to remove all the data in the SCHEDULE table, the structure of the table, and the indexes associated with the table. Which statement should you use? Mark for Review (1) Points DROP TABLE (*) TRUNCATE TABLE ALTER TABLE

DELETE TABLE

Incorrect

Incorrect. Refer to Section 8 Lesson 3

14. To do a logical delete of a column without the performance penalty of rewriting all the table datablocks you can issue the following command: Mark for Review (1) Points Alter table modify column Alter table drop column Alter table set unused (*) Drop column 'columname'

Correct

Correct

15. Which statement about decreasing the width of a column is true? Mark for Review (1) Points When a character column contains data, you cannot decrease the width of the column. When a character column contains data, you can decrease the width of the column without any restrictions. When a character column contains data, you can decrease the width of the column if the existing data does not violate the new size. (*) You cannot decrease the width of a character column unless the table in which the column resides is empty.

Correct

Correct

16. Comments on tables and columns can be stored for documentation by: Mark for Review (1) Points Embedding /* comment */ within the definition of the table. Using the ALTER TABLE CREATE COMMENT syntax Using the COMMENT ON TABLE or COMMENT on COLUMN (*) Using an UPDATE statement on the USER_COMMENTS table

Incorrect

Incorrect. Refer to Section 8 Lesson 3 17.

Evaluate this statement:

ALTER TABLE inventory MODIFY (backorder_amount NUMBER(8,2)); Which task will this statement accomplish? Mark for Review (1) Points Alters the definition of the BACKORDER_AMOUNT column to NUMBER(8 2) Alters the definition of the BACKORDER_AMOUNT column to NUMBER Alters the definition of the BACKORDER_AMOUNT column to NUMBER(2,8) Alters the definition of the BACKORDER_AMOUNT column to NUMBER(8.2) Changes the definition of the BACKORDER_AMOUNT column to NUMBER(8,2) (*)

Incorrect

Incorrect. Refer to Section 8 Lesson 3 18.

The EMPLOYEES contains these columns:

LAST_NAME VARCHAR2(15) NOT NULL FIRST_NAME VARCHAR2(10) NOT NULL EMPLOYEE_ID NUMBER(4) NOT NULL HIRE_DATE DATE NOT NULL You need to remove the EMPLOYEE_ID column from the EMPLOYEES table. Which statement could you use to accomplish this task? Mark for Review (1) Points ALTER TABLE employees MODIFY (employee_id NUMBER(5)); ALTER TABLE employees DELETE employee_id; ALTER TABLE employees DROP COLUMN employee_id; (*) DELETE FROM employees WHERE column = employee_id;

Incorrect

Incorrect. Refer to Section 8 Lesson 3

19. You need to truncate the EMPLOYEES table. The EMPLOYEES table is not in your schema. Which privilege must you have to truncate the table? Mark for Review (1) Points the DROP ANY TABLE system privilege (*) the TRUNCATE ANY TABLE system privilege the CREATE ANY TABLE system privilege the ALTER ANY TABLE system privilege

Correct

Correct 20.

Evaluate this statement:

ALTER TABLE employees SET UNUSED (fax); Which task will this statement accomplish?

Mark for Review (1) Points Deletes the FAX column Frees the disk space used by the data in the FAX column Prevents data in the FAX column from being displayed, by performing a logical drop of the column. (*) Prevents a new FAX column from being added to the EMPLOYEES table

Incorrect Previous

Incorrect. Refer to Section 8 Lesson 3 Page 2 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 8 Lesson 3 21.

Evaluate the structure of the EMPLOYEES table:

EMPLOYEE_ID NUMBER(9) LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25) DEPARTMENT_ID NUMBER(9) MANAGER_ID NUMBER(9) SALARY NUMBER(7,2) Which statement should you use to increase the LAST_NAME column length to 35 if the column currently contains 200 records? Mark for Review (1) Points ALTER employee TABLE ALTER COLUMN (last_name VARCHAR2(35)); ALTER TABLE employee RENAME last_name VARCHAR2(35); ALTER TABLE employee MODIFY (last_name VARCHAR2(35)); (*) You CANNOT increase the width of the LAST_NAME column.

Correct

Correct

22. You need to remove all the rows from the SALES_HIST table. You want to release the storage space, but do not want to remove the table structure. Which statement should you use? Mark for Review (1) Points the DROP TABLE statement the ALTER TABLE statement the DELETE statement the TRUNCATE TABLE statement (*)

Incorrect

Incorrect. Refer to Section 8 23.

Examine the structure of the DONATIONS table.

DONATIONS: PLEDGE_ID NUMBER DONOR_ID NUMBER PLEDGE_DT DATE AMOUNT_PLEDGED NUMBER (7,2) AMOUNT_PAID NUMBER (7,2) PAYMENT_DT DATE You need to reduce the precision of the AMOUNT_PLEDGED column to 5 with a scale of 2 and ensure that when inserting a row into the DONATIONS table without a value for the AMOUNT_PLEDGED column, a price of $10.00 will automatically be inserted. The DONATIONS table currently contains NO records. Which statement is true? Mark for Review (1) Points You CANNOT decrease the width of the AMOUNT_PLEDGED column. Both changes can be accomplished with one ALTER TABLE statement. (*)

You must drop and recreate the DONATIONS table to achieve these results. You must use the ADD OR REPLACE option to achieve these results.

Incorrect

Incorrect. Refer to Section 8 Lesson 3

Section 9 Lesson 1 24. Which two statements about NOT NULL constraints are true? (Choose two) Mark for Review (1) Points (Choose all correct answers) The Oracle Server creates a name for an unnamed NOT NULL constraint. (*) A NOT NULL constraint can be defined at either the table or column level. The NOT NULL constraint requires that every value in a column be unique. Columns without the NOT NULL constraint can contain null values by default. You CANNOT add a NOT NULL constraint to an existing column using the ALTER TABLE ADD CONSTRAINT statement. (*)

Incorrect

Incorrect. Refer to Section 9

25. You need to ensure that the LAST_NAME column only contains certain character values. No numbers or special characters are allowed. Which type of constraint should you define on the LAST_NAME column? Mark for Review (1) Points CHECK (*)

UNIQUE NOT NULL PRIMARY KEY

Incorrect

Incorrect. Refer to Section 9 26.

Which statement about constraints is true?

Mark for

Review (1) Points A single column can have only one constraint applied. PRIMARY KEY constraints can only be specified at the column level. NOT NULL constraints can only be specified at the column level. (*) UNIQUE constraints are identical to PRIMARY KEY constraints.

Correct

Correct 27.

Evaluate this CREATE TABLE statement:

CREATE TABLE customers (customer_id NUMBER, customer_name VARCHAR2(25),  address VARCHAR2(25),  city VARCHAR2(25),  region VARCHAR2(25),  postal_code VARCHAR2(11),  CONSTRAINT customer_id_un UNIQUE(customer_id),  CONSTRAINT customer_name_nn NOT NULL(customer_name)); Why does this statement fail when executed? Mark for Review (1) Points The NUMBER data types require precision values.

UNIQUE constraints must be defined at the column level. The CREATE TABLE statement does NOT define a PRIMARY KEY. NOT NULL constraints CANNOT be defined at the table level. (*)

Incorrect

Incorrect. Refer to Section 9

28. Which constraint can only be created at the column level? Mark for Review (1) Points NOT NULL (*) FOREIGN KEY UNIQUE CHECK

Incorrect

Incorrect. Refer to Section 9

29. Primary Key, Foreign Key, Unique Key and Check Constraints can be added at which two levels? (Choose two) Mark for Review (1) Points (Choose all correct answers) Null Field Table (*) Row Dictionary

Column (*)

Incorrect

Incorrect. Refer to Section 9

Section 9 Lesson 2 30. When creating the EMPLOYEES table, which clause could you use to ensure that salary values are 1000.00 or more? Mark for Review (1) Points CONSTRAINT CHECK salary > 1000 CHECK CONSTRAINT (salary > 1000) CONSTRAINT employee_salary_min CHECK salary > 1000 CONSTRAINT employee_salary_min CHECK (salary >= 1000) (*) CHECK CONSTRAINT employee_salary_min (salary > 1000)

Incorrect Previous

Incorrect. Refer to Section 9 Page 3 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 9 Lesson 2 31. 1. 2. 3. 4. 5. 6. 7.

Evaluate this CREATE TABLE statement:

CREATE TABLE part( part_id NUMBER, part_name VARCHAR2(25), manufacturer_id NUMBER(9), cost NUMBER(7,2), retail_price NUMBER(7,2) NOT NULL, CONSTRAINT part_id_pk PRIMARY KEY(part_id),

8. CONSTRAINT cost_nn NOT NULL(cost), 9. CONSTRAINT FOREIGN KEY (manufacturer_id) REFERENCES manufacturer(id)); Which line will cause an error? Mark for Review (1) Points 6 7 8 (*) 9

Incorrect

Incorrect. Refer to Section 9

32. What is an attribute of data that is entered into a primary key column? Mark for Review (1) Points Null and non-unique values cannot be entered into a primary key column. (*) Data that is entered into a primary key column automatically increments by a value of 1 each time a new record is entered into the table. Data that is entered into a primary key column references a column of the same datatype in another table. Data that is entered into a primary key column is restricted to a range of numbers that is defined by the local Oracle database.

Incorrect

Incorrect. Refer to Section 9

33. Which of the following FOREIGN KEY Constraint keywords identifies the table and column in the parent table? Mark for Review (1) Points

RESEMBLES ON DELETE CASCADE REFERENTIAL REFERENCES (*)

Incorrect

Incorrect. Refer to Section 9

34. You need to create the PROJECT_HIST table. The table must meet these requirements: 1. The table must contain the EMPLOYEE_ID and TASKED_HOURS columns for numeric data. 2. The table must contain the START_DATE and END_DATE column for date values. 3. The table must contain the HOURLY_RATE and PROJECT_COST columns for numeric data with precision and scale of 5,2 and 10,2 respectively. 4. The table must have a composite primary key on the EMPLOYEE_ID and START_DATE columns. Evaluate this CREATE TABLE statement: CREATE TABLE project_hist ( employee_id NUMBER, start_date DATE, end_date DATE, tasked_hours NUMBER, hourly_rate NUMBER(5,2), project_cost NUMBER(10,2), CONSTRAINT project_hist_pk PRIMARY KEY(employee_id, start_date)); How many of the requirements does the CREATE TABLE statement satisfy? Mark for Review (1) Points None of the four requirements All four of the requirements (*) Only three of the requirements

Only two of the requirements

Incorrect

Incorrect. Refer to Section 9

35. Which of the following best describes the function of a CHECK constraint? Mark for Review (1) Points A CHECK constraint enforces referential data integrity. A CHECK constraint defines restrictions on the values that can be entered in a column or combination of columns. (*) A CHECK constraint enforces uniqueness of the values that can be entered in a column or combination of columns. A CHECK constraint is created automatically when a PRIMARY KEY constraint is created.

Incorrect

Incorrect. Refer to Section 9

36. What must exist on the Parent table before Oracle will allow you to create a FOREIGN KEY constraint from a Child table? Mark for Review (1) Points A FOREIGN KEY constraint on the Parent table.exist in the primary key column of the parent table. A PRIMARY or UNIQUE KEY constraint must exist on the Parent table. (*) An index must exist on the Parent table. A CHECK constraint must exist on the Parent table.

Correct

Correct

37. You need to create a composite primary key constraint on the EMPLOYEE table. Which statement is true? Mark for Review (1) Points The PRIMARY KEY constraint must be defined at the table level. (*) A PRIMARY KEY constraint must be defined for each column in the composite primary key. The PRIMARY KEY constraint must be defined for the first column of the composite primary key. The PRIMARY KEY constraint must be defined at the table level and for each column in the composite primary key.

Incorrect

Incorrect. Refer to Section 9

Section 9 Lesson 3 38. When dropping a constraint, which keyword(s) specifies that all the referential integrity constraints that refer to the primary and unique keys defined on the dropped columns are dropped as well? Mark for Review (1) Points FOREIGN KEY REFERENCES CASCADE (*) ON DELETE SET NULL

Correct

Correct

39. You need to remove the EMP_FK_DEPT constraint from the EMPLOYEES table in your schema. Which statement should you use? Mark for Review

(1) Points DROP CONSTRAINT EMP_FK_DEPT FROM employees; DELETE CONSTRAINT EMP_FK_DEPT FROM employees; ALTER TABLE employees DROP CONSTRAINT EMP_FK_DEPT; (*) ALTER TABLE employees REMOVE CONSTRAINT EMP_FK_DEPT;

Correct

Correct 40.

This SQL command will do what?

ALTER TABLE employees ADD CONSTRAINT emp_manager_fk FOREIGN KEY(manager_id) REFERENCES employees(employee_id); Mark for Review (1) Points Alter the table employees and disable the emp_manager_fk constraint. Add a FOREIGN KEY constraint to the EMPLOYEES table indicating that a manager must already be an employee. (*) Add a FOREIGN KEY constraint to the EMPLOYEES table restricting manager ID to match every employee ID. Alter table employees and add a FOREIGN KEY constraint that indicates each employee ID must be unique.

Incorrect Previous

Incorrect. Refer to Section 9 Page 4 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.

Section 9 Lesson 3 41. You need to add a NOT NULL constraint to the EMAIL column in the EMPLOYEES table. Which clause should you use? Mark for Review (1) Points ADD CHANGE MODIFY (*) ENABLE

Correct

tables.

Correct 42.

Examine the structures of the PRODUCT and SUPPLIER

PRODUCT PRODUCT_ID NUMBER NOT NULL, Primary Key PRODUCT_NAME VARCHAR2 (25) SUPPLIER_ID NUMBER Foreign key to SUPPLIER_ID of the SUPPLIER table LIST_PRICE NUMBER (7,2) COST NUMBER (7,2) QTY_IN_STOCK NUMBER QTY_ON_ORDER NUMBER REORDER_LEVEL NUMBER REORDER_QTY NUMBER SUPPLIER SUPPLIER_ID NUMBER NOT NULL, Primary Key SUPPLIER_NAME VARCHAR2 (25) ADDRESS VARCHAR2 (30) CITY VARCHAR2 (25) REGION VARCHAR2 (10) POSTAL_CODE VARCHAR2 (11) Evaluate this statement: ALTER TABLE suppliers DISABLE CONSTRAINT supplier_id_pk CASCADE; For which task would you issue this statement? Mark for Review (1) Points

To remove all constraint references to SUPPLIERS table To drop the FOREIGN KEY constraint on the PRODUCTS table To remove all constraint references to the PRODUCTS table To disable any dependent integrity constraints on the SUPPLIER_ID column in the PRODUCTS table To disable any dependent integrity constraints on the SUPPLIER_ID column in the SUPPLIERS table (*)

Incorrect

Incorrect. Refer to Section 9 43.

Evaluate this statement

ALTER TABLE employees ENABLE CONSTRAINT emp_id_pk; For which task would you issue this statement? Mark for Review (1) Points to add a new constraint to the EMPLOYEES table to disable an existing constraint on the EMPLOYEES table to activate a new constraint while preventing the creation of a PRIMARY KEY index to activate the previously disabled constraint on the EMPLOYEE_ID column while creating a PRIMARY KEY index (*)

Correct

Correct

44. You need to display the names and definitions of constraints only in your schema. Which data dictionary view should you query? Mark for Review

(1) Points DBA_CONSTRAINTS USER_CONSTRAINTS (*) ALL_CONS_COLUMNS USER_CONS_COLUMNS

Incorrect

Incorrect. Refer to Section 9 45.

The DEPARTMENTS table contains these columns:

DEPARTMENT_ID NUMBER, Primary Key DEPARTMENT_ABBR VARCHAR2(4) DEPARTMENT_NAME VARCHAR2(30) MANAGER_ID NUMBER The EMPLOYEES table contains these columns: EMPLOYEE_ID NUMBER LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25) DEPARTMENT_ID NUMBER JOB_ID NUMBER MANAGER_ID NUMBER SALARY NUMBER(9,2) HIRE_DATE DATE Evaluate this statement: ALTER TABLE employees ADD CONSTRAINT REFERENTIAL (manager_id) TO departments(manager_id); Which statement is true? Mark for Review (1) Points The ALTER TABLE statement creates a referential constraint from the EMPLOYEES table to the DEPARTMENTS table. The ALTER TABLE statement creates a referential constraint from the DEPARTMENTS table to the EMPLOYEES table.

The ALTER TABLE statement fails because the ADD CONSTRAINT clause contains a syntax error. (*) The ALTER TABLE statement succeeds, but does NOT recreate a referential constraint.

Incorrect

Incorrect. Refer to Section 9

46. Which statement should you use to add a FOREIGN KEY constraint to the DEPARTMENT_ID column in the EMPLOYEES table to refer to the DEPARTMENT_ID column in the DEPARTMENTS table? Mark for Review (1) Points ALTER TABLE employees MODIFY COLUMN dept_id_fk FOREIGN KEY (department_id) REFERENCES departments(department_id);

ALTER TABLE employees ADD CONSTRAINT dept_id_fk FOREIGN KEY (department_id) REFERENCES departments(department_id); (*) ALTER TABLE employees ADD FOREIGN KEY CONSTRAINT dept_id_fk ON (department_id) REFERENCES departments(department_id);

ALTER TABLE employees ADD FOREIGN KEY departments(department_id) REFERENCES (department_id);

Incorrect

Incorrect. Refer to Section 9 47.

Evaluate this statement:

ALTER TABLE employees ADD CONSTRAINT employee_id PRIMARY KEY; Which result will the statement provide? Mark for Review

(1) Points A syntax error will be returned. (*) A constraint will be added to the EMPLOYEES table. An existing constraint on the EMPLOYEES table will be overwritten. An existing constraint on the EMPLOYEES table will be enabled.

Incorrect

Incorrect. Refer to Section 9

Section 10 Lesson 1 48. Which of the following keywords cannot be used when creating a view? Mark for Review (1) Points HAVING WHERE ORDER BY They are all valid keywords when creating views. (*)

Incorrect

Incorrect. Refer to Section 10

49. You need to create a view that when queried will display the name, employee identification number, first and last name, salary, and department identification number. When queried, the display should be sorted by salary from lowest to highest, then by last name and first name alphabetically. The view definition should be created regardless of the existence of the EMPLOYEES table. No DML may be performed when using this view. Evaluate these statements: CREATE OR REPLACE NOFORCE VIEW EMP_SALARY_V AS SELECT employee_id, last_name, first_name, salary, department_id FROM employees WITH READ ONLY;

SELECT * FROM emp_salary_v ORDER BY salary, last_name, first_name; Which statement is true? Mark for Review (1) Points When both statements are executed all of the desired results are achieved. The CREATE VIEW statement will fail if the EMPLOYEES table does not exist. (*) The statements will NOT return all of the desired results because the WITH CHECK OPTION clause is NOT included in the CREATE VIEW statement. To achieve all of the desired results this ORDER ON clause should be added to the CREATE VIEW statement: 'ORDER ON salary, last_name, first_name'.

Correct

Correct

50. Which keyword(s) would you include in a CREATE VIEW statement to create the view regardless of whether or not the base table exists? Mark for Review (1) Points FORCE (*) NOFORCE OR REPLACE WITH READ ONLY

Correct

Correct

Previous

Page 5 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 10 Lesson 1 51.

The FACULTY table contains these columns:

FACULTYID VARCHAR2(5) NOT NULL PRIMARY KEY FIRST_NAME VARCHAR2(20) LAST_NAME VARCHAR2(20) ADDRESS VARCHAR2(35) CITY VARCHAR2(15) STATE VARCHAR2(2) ZIP NUMBER(9) TELEPHONE NUMBER(10) STATUS VARCHAR2(2) NOT NULL The COURSE table contains these columns: COURSEID VARCHAR2(5) NOT NULL PRIMARY KEY SUBJECT VARCHAR2(5) TERM VARCHAR2(6 FACULTYID VARCHAR2(5) NOT NULL FOREIGN KEY You have been asked to compile a report that identifies all adjunct professors who will be teaching classes in the upcoming term. You want to create a view that will simplify the creation of this report. Which CREATE VIEW statements will accomplish this task? Mark for Review (1) Points CREATE VIEW (SELECT first_name, last_name, status, courseid, subject, term FROM faculty, course WHERE facultyid = facultyid);

CREATE VIEW pt_view ON (SELECT first_name, last_name, status, courseid, subject, term FROM faculty f and course c WHERE f.facultyid = c.facultyid);

CREATE VIEW pt_view IN (SELECT first_name, last_name, status, courseid, subject, term FROM faculty course);

CREATE VIEW pt_view AS (SELECT first_name, last_name, status, courseid, subject, term FROM faculty f, course c WHERE f.facultyid = c.facultyid); (*)

Incorrect

Incorrect. Refer to Section 10

52. using a view? (1) Points

Which of the following statements is a valid reason for Mark for Review

Views allow access to the data because the view displays all of the columns from the table. Views provide data independence for infrequent users and application programs. One view can be used to retrieve data from several tables. Views can be used to provide data security. (*) Views are used when you only want to restrict DML operations using a WITH CHECK OPTION. Views are not valid unless you have more than one user.

Correct

Correct

53. Which option would you use to modify a view rather than dropping it and recreating it? Mark for Review (1) Points FORCE NOFORCE CREATE OR REPLACE (*) WITH ADMIN OPTION

Incorrect

Incorrect. Refer to Section 10 54.

Evaluate this CREATE VIEW statement:

CREATE VIEW emp_view AS SELECT SUM(salary) FROM employees; Which statement is true? Mark for Review (1) Points You cannot update data in the EMPLOYEES table using the EMP_VIEW view. (*) You can update any data in the EMPLOYEES table using the EMP_VIEW view. You can delete records from the EMPLOYEES table using the EMP_VIEW view. You can update only the SALARY column in the EMPLOYEES table using the EMP_VIEW view.

Incorrect

Incorrect. Refer to Section 10

55. In order to query a database using a view, which of the following statements applies? Mark for Review (1) Points Use special VIEWSELECT Keyword You can retrieve data from a view as you would from any table. (*) You can never see all the rows in the table through the view. The tables you are selecting from can be empty, yet the view still returns the original data from those tables.

Incorrect

Incorrect. Refer to Section 10

Section 10 Lesson 2 56. You cannot modify data in a view if the view contains ______. Mark for Review (1) Points the DISTINCT keyword (*) a WHERE clause a subquery in the FROM clause the WITH CHECK OPTION clause

Incorrect

Incorrect. Refer to Section 10

57. view is true? (1) Points

Which statement about performing DML operations on a Mark for Review

You can delete data in a view if the view contains the DISTINCT keyword. You cannot modify data in a view if the view contains a WHERE clause. You cannot modify data in a view if the view contains a group function. (*) You can modify data in a view if the view contains a GROUP BY clause.

Incorrect

Incorrect. Refer to Section 10

58. view is true?

Which statement about performing DML operations on a Mark for Review

(1) Points You can perform DML operations on simple views. (*) You cannot perform DML operations on a view that contains the WITH CHECK OPTION clause. You can perform DML operations on a view that contains the WITH READ ONLY option. You can perform DML operations on a view that contains columns defined by expressions, such as COST + 1.

Incorrect

Incorrect. Refer to Section 10

59. What is the purpose of including the WITH CHECK OPTION clause when creating a view? Mark for Review (1) Points To make sure that the parent table(s) actually exist To keep views from being queried by unauthorized persons To make sure that data is not duplicated in the view To make sure no rows are updated through the view that will hinder those rows from being returned by the view. (*)

Incorrect

Incorrect. Refer to Section 10

60. Which of the following is TRUE regarding simple views? Mark for Review (1) Points They derive data from many tables, so they typically contain joins. They contain functions or groups of data

They can perform DML operations through the view (*) They are not stored in the Data Dictionary

Incorrect Previous

Incorrect. Refer to Section 10 Page 6 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 10 Lesson 2 61. Your manager has just asked you to create a report that illustrates the salary range of all the employees at your company. Which of the following SQL statements will create a view called SALARY_VU based on the employee last names, department names, salaries, and salary grades for all employees? Use the EMPLOYEES, DEPARTMENTS, and JOB_GRADES tables. Label the columns Employee, Department, Salary, and Grade, respectively. Mark for Review (1) Points CREATE OR REPLACE VIEW salary_vu AS SELECT e.last_name "Employee", d.department_name "Department", e.salary "Salary", j.grade_level "Grade" FROM employees e, departments d, job_grades WHERE e.department_id equals d.department_id AND e.salary BETWEEN j.lowest_sal and j.highest_sal;

CREATE OR REPLACE VIEW salary_vu AS SELECT e.empid "Employee", d.department_name "Department", e.salary "Salary", j.grade_level "Grade" FROM employees e, departments d, job_grades j WHERE e.department_id = d.department_id NOT e.salary BETWEEN j.lowest_sal and j.highest_sal;

CREATE OR REPLACE VIEW salary_vu AS SELECT e.last_name "Employee", d.department_name "Department", e.salary "Salary", j.grade_level "Grade" FROM employees e, departments d, job_grades j WHERE e.department_id = d.department_id AND e.salary BETWEEN j.lowest_sal and j.highest_sal;

(*) CREATE OR REPLACE VIEW salary_vu FROM (SELECT e.last_name "Employee", d.department_name "Department", e.salary "Salary", j.grade_level "Grade" FROM employees emp, departments d, job grades j WHERE e.department_id = d.department_id AND e.salary BETWEEN j.lowest_sal and j.highest_sal);

Incorrect

Incorrect. Refer to Section 10

62. You can create a view if the view subquery contains an inline view. True or False? Mark for Review (1) Points True (*) False

Correct

Correct

Section 10 Lesson 3 63.

Which statement about an inline view is true?

Mark

for Review (1) Points An inline view is a schema object. An inline view is a subquery in the FROM clause, often named with an alias. (*) An inline view is a complex view. An inline view can be used to perform DML operations.

Correct

Correct

64.

Evaluate this CREATE VIEW statement:

CREATE VIEW sales_view AS SELECT customer_id, region, SUM(sales_amount) FROM sales WHERE region IN (10, 20, 30, 40) GROUP BY region, customer_id; Which statement is true? Mark for Review (1) Points You can modify data in the SALES table using the SALES_VIEW view. You cannot modify data in the SALES table using the SALES_VIEW view. (*) You can only insert records into the SALES table using the SALES_VIEW view. The CREATE VIEW statement generates an error.

Incorrect

Incorrect. Refer to Section 10

65. An "inline view" is an unnamed select statement found: Mark for Review (1) Points In the user_views data dictionary view In a special database column of a users table Enclosed in parenthesis within the select list of a surrounding query Enclosed in parenthesis within the from clause of a surrounding query (*)

Incorrect

Incorrect. Refer to Section 10

66.

The CUSTOMER_FINANCE table contains these columns:

CUSTOMER_ID NUMBER(9) NEW_BALANCE NUMBER(7,2) PREV_BALANCE NUMBER(7,2) PAYMENTS NUMBER(7,2) FINANCE_CHARGE NUMBER(7,2) CREDIT_LIMIT NUMBER(7) You created a Top-n query report that displays the account numbers and new balance of the 800 accounts that have the highest new balance value. The results are sorted by payments value from highest to lowest. Which SELECT statement clause is included in your query? Mark for Review (1) Points inner query: ORDER BY new_balance DESC (*) inner query: WHERE ROWNUM = 800 outer query: ORDER BY new_balance DESC inner query: SELECT customer_id, new_balance ROWNUM

Incorrect

Incorrect. Refer to Section 10 67.

The CUSTOMER_FINANCE table contains these columns:

CUSTOMER_ID NUMBER(9) NEW_BALANCE NUMBER(7,2) PREV_BALANCE NUMBER(7,2) PAYMENTS NUMBER(7,2) FINANCE_CHARGE NUMBER(7,2) CREDIT_LIMIT NUMBER(7) You execute this statement: SELECT ROWNUM "Rank", customer_id, new_balancev FROM (SELECT customer_id, new_balance FROM customer_finance) WHERE ROWNUM <= 25 ORDER BY new_balance DESC; What statement is true?

Mark for Review (1) Points The statement failed to execute because an inline view was used. The statement will not necessarily return the 25 highest new balance values, as the inline view has no ORDER BY. (*) The 25 greatest new balance values were displayed from the highest to the lowest. The statement failed to execute because the ORDER BY does NOT use the Top-n column.

Incorrect

Incorrect. Refer to Section 10

Section 11 Lesson 2 68. You need to retrieve the next available value for the SALES_IDX sequence. Which would you include in your SQL statement? Mark for Review (1) Points sales_idx sales_idx.NEXT sales_idx.NEXTVAL (*) sales_idx.CURRVAL

Incorrect

Incorrect. Refer to Section 11 69.

Sequences can be used to: (choose three)

Review (1) Points (Choose all correct answers)

Mark for

Ensure primary key values will be unique and consecutive Ensure primary key values will be unique even though gaps may exist (*) Generate a range of numbers and optionally cycle through them again (*) Set a fixed interval between successively generated numbers. (*) Guarantee that no primary key values are unused

Correct

Correct

70. Which statement would you use to modify the EMP_ID_SEQ sequence used to populate the EMPLOYEE_ID column in the EMPLOYEES table? Mark for Review (1) Points ALTER SEQUENCE emp_id_seq.employee_id …; CREATE SEQUENCE emp_id_seq …; ALTER TABLE employees …; ALTER SEQUENCE emp_id_seq …; (*)

Incorrect Previous

Incorrect. Refer to Section 11 Page 7 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 11 Lesson 2

71. A gap can occur in a sequence because a user generated a number from the sequence and then rolled back the transaction. True or False? Mark for Review (1) Points True (*) False

Incorrect

Incorrect. Refer to Section 11

72. When used in a CREATE SEQUENCE statement, which keyword specifies that a range of sequence values will be preloaded into memory? Mark for Review (1) Points LOAD MEMORY CACHE (*) NOCACHE NOCYCLE

Incorrect

Incorrect. Refer to Section 11

Section 11 Lesson 3 73.

Evaluate this statement:

CREATE PUBLIC SYNONYM testing FOR chan.testing; Which task will this statement accomplish? Mark for Review (1) Points It recreates the synonym if it already exists.

It forces all users to access TESTING using the synonym. It allows only the user CHAN to access TESTING using the synonym. It eliminates the need for all users to qualify TESTING with its schema. (*)

Correct

Correct

74. Unique indexes are automatically created on columns that have which two types of constraints? Mark for Review (1) Points NOT NULL and UNIQUE UNIQUE and PRIMARY KEY (*) UNIQUE and FOREIGN KEY PRIMARY KEY and FOREIGN KEY

Incorrect

Incorrect. Refer to Section 11 75.

Evaluate this statement:

CREATE INDEX sales_idx ON oe.sales (status); Which statement is true? Mark for Review (1) Points The CREATE INDEX creates a function-based index. The CREATE INDEX statement creates a nonunique index. (*) The CREATE INDEX statement creates a unique index.

The CREATE INDEX statement fails because of a syntax error.

Incorrect

Incorrect. Refer to Section 11 76.

The EMPLOYEES table contains these columns:

EMPLOYEE_ID NOT NULL, Primary Key SOCIAL_SECURITY_NUMBER NOT NULL, Unique LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25) DEPARTMENT_ID NUMBER Foreign Key to DEPARTMENT_ID column of the DEPARTMENTS table SALARY NUMBER(8,2) You execute this statement: CREATE INDEX emp_name_idx ON employees(last_name, first_name); Which statement is true? Mark for Review (1) Points The statement creates a function-based index. The statement fails because of a syntax error. The statement creates a composite unique index. The statement creates a composite non-unique index. (*)

Incorrect

Incorrect. Refer to Section 11 77.

Which statement about an index is true?

Review (1) Points An index can only be created on a single table column. Creating an index will always improve query performance.

Mark for

Creating an index reorders the data in the underlying table. An index created on multiple columns is called a composite or concatenated index. (*)

Incorrect

Incorrect. Refer to Section 11

78. execute faster?

What would you create to make the following statement

SELECT * FROM employees WHERE LOWER(last_name) = 'chang'; Mark for Review (1) Points A synonym. An index, either a normal or a function_based index. (*) A composite index. Nothing; the performance of this statement cannot be improved.

Incorrect

Incorrect. Refer to Section 11

79. When creating an index on a table, which of the following statements are true? (Choose two) Mark for Review (1) Points (Choose all correct answers) You should create an index if the table is large and most queries are expected to retrieve less than 2 to 4 percent of the rows. (*) You should always create an index on tables that are frequently updated.

You should create an index if one or more columns are frequently used together in a join condition. (*) You should create an index if the table is very small.

Correct

Correct 80.

The EMPLOYEES table contains these columns:

EMPLOYEE_ID NUMBER NOT NULL, Primary Key LAST_NAME VARCHAR2 (20) FIRST_NAME VARCHAR2 (20) DEPARTMENT_ID NUMBER Foreign Key to PRODUCT_ID column of the PRODUCT table HIRE_DATE DATE DEFAULT SYSDATE SALARY NUMBER (8,2) NOT NULL On which column is an index automatically created for the EMPLOYEES table? Mark for Review (1) Points SALARY LAST_NAME HIRE_DATE EMPLOYEE_ID (*) DEPARTMENT_ID

Incorrect Previous

Incorrect. Refer to Section 11 Page 8 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 11 Lesson 3

81.

The CLIENTS table contains these columns:

CLIENT_ID NUMBER(4) NOT NULL PRIMARY KEY LAST_NAME VARCHAR2(15) FIRST_NAME VARCHAR2(10) CITY VARCHAR2(15) STATE VARCHAR2(2) You want to create an index named ADDRESS_INDEX on the CITY and STATE columns of the CLIENTS table. You issue this statement: CREATE INDEX clients ON address_index (city, state); Which result does this statement accomplish? Mark for Review (1) Points An index named ADDRESS_INDEX is created on the CITY and STATE columns. An index named CLIENTS is created on the CITY and STATE columns. An index named CLIENTS_INDEX is created on the CLIENTS table. An error message is produced, and no index is created. (*)

Incorrect

Incorrect. Refer to Section 11

82. You want to create a composite index on the FIRST_NAME and LAST_NAME columns of the EMPLOYEES table. Which SQL statement will accomplish this task? Mark for Review (1) Points CREATE INDEX fl_idx ON employees(first_name || last_name);

CREATE INDEX fl_idx ON employees(first_name), employees(last_name);

CREATE INDEX fl_idx ON employees(first_name,last_name); (*)

CREATE INDEX fl_idx ON employees(first_name); CREATE INDEX fl_idx ON employees(last_name);

Incorrect

Incorrect. Refer to Section 11

83. Which statement would you use to remove the LAST_NAME_IDX index on the LAST_NAME column of the EMPLOYEES table? Mark for Review (1) Points DROP INDEX last_name_idx; (*) DROP INDEX last_name_idx(last_name); DROP INDEX last_name_idx(employees.last_name); ALTER TABLE employees DROP INDEX last_name_idx;

Correct

Correct

84. Barry creates a table named INVENTORY. Pam must be able to query the table. Barry wants to enable Pam to query the table without being required to specify the table's schema. Which of the following should Barry create? Mark for Review (1) Points A schema An index A view A synonym (*)

Incorrect

Incorrect. Refer to Section 11

85.

For which column would you create an index?

Mark for

Review (1) Points A column which has only 4 distinct values. A column that is updated frequently A column with a large number of null values (*) A column that is infrequently used as a query search condition

Incorrect

Incorrect. Refer to Section 11

Section 12 Lesson 2 86. User ADAM has successfully logged on to the database in the past, but today he receives an error message stating that (although he has entered his password correctly) he cannot log on. What is the most likely cause of the problem? Mark for Review (1) Points One or more object privileges have been REVOKED from Adam. ADAM's CREATE SESSION privilege has been revoked. (*) ADAM's CREATE USER privilege has been revoked. ADAM's user account has been removed from the database.

Incorrect

Incorrect. Refer to Section 12

87. User SUSAN creates an EMPLOYEES table, and then creates a view EMP_VIEW which shows only the FIRST_NAME and LAST_NAME columns of EMPLOYEES. User RUDI needs to be able to access employees' names but no other data from EMPLOYEES. Which statement should SUSAN execute to allow this? Mark for Review (1) Points

SELECT * FROM emp_view FOR rudi; CREATE SYNONYM emp_view FOR employees; GRANT SELECT ON emp_view TO rudi; (*) GRANT SELECT ON emp_view ONLY TO rudi;

Incorrect

Incorrect. Refer to Section 12

88. Which of the following are system privileges? (Choose two) Mark for Review (1) Points (Choose all correct answers) CREATE TABLE (*) UPDATE CREATE SYNONYM (*) INDEX

Incorrect

Incorrect. Refer to Section 12

89. User Kate wants to create indexes on tables in her schema. What privilege must be granted to Kate so that she can do this? Mark for Review (1) Points CREATE INDEX CREATE ANY INDEX ALTER TABLE

None; users do not need extra privileges to create indexes on tables in their own schema (*)

Incorrect

Incorrect. Refer to Section 12

90. Which of the following are object privileges? (Choose two) Mark for Review (1) Points (Choose all correct answers) SELECT (*) DROP TABLE CREATE TABLE INSERT (*)

Incorrect Previous

Incorrect. Refer to Section 12 Page 9 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 12 Lesson 2 91. User JAMES has created a CUSTOMERS table and wants to allow all other users to SELECT from it. Which command should JAMES use to do this? Mark for Review (1) Points GRANT customers(SELECT) TO PUBLIC; GRANT SELECT ON customers TO ALL; GRANT SELECT ON customers TO PUBLIC; (*)

CREATE PUBLIC SYNONYM customers FOR james.customers;

Incorrect

Incorrect. Refer to Section 12

92. Which of the following best describes a role in an Oracle database? Mark for Review (1) Points A role is a type of system privilege. A role is the part that a user plays in querying the database. A role is a name for a group of privileges. (*) A role is an object privilege which allows a user to update a table.

Incorrect

Incorrect. Refer to Section 12

Section 12 Lesson 3 93. privileges? (1) Points

Which of the following simplifies the administration of Mark for Review

an index a view a trigger a role (*)

Incorrect

Incorrect. Refer to Section 12

94. You need to grant user BOB SELECT privileges on the EMPLOYEES table. You want to allow BOB to grant this privileges to other users. Which statement should you use? Mark for Review (1) Points GRANT SELECT ON employees TO bob WITH GRANT OPTION; (*) GRANT SELECT ON employees TO PUBLIC WITH GRANT OPTION; GRANT SELECT ON employees TO bob GRANT SELECT ON employees TO bob WITH ADMIN OPTION;

Incorrect

Incorrect. Refer to Section 12

95. User BOB's schema contains an EMPLOYEES table. BOB executes the following statement: GRANT SELECT ON employees TO mary WITH GRANT OPTION; Which of the following statements can MARY now execute successfully? (Choose two) Mark for Review (1) Points (Choose all correct answers) SELECT FROM bob.employees; (*) REVOKE SELECT ON bob.employees FROM bob; GRANT SELECT ON bob.employees TO PUBLIC; (*) DROP TABLE bob.employees;

Incorrect

Incorrect. Refer to Section 12

96. When granting an object privilege, which option would you include to allow the grantee to grant the privilege to another user? Mark for Review (1) Points WITH GRANT OPTION (*) WITH ADMIN OPTION PUBLIC FORCE

Incorrect

Incorrect. Refer to Section 12

97. Which keyword would you use to grant an object privilege to all database users? Mark for Review (1) Points ADMIN ALL PUBLIC (*) USERS

Correct

Correct

98. Which data dictionary view shows which system privileges have been granted to a user? Mark for Review (1) Points USER_TAB_PRIVS USER_SYS_PRIVS (*)

USER_SYSTEM_PRIVS USER_SYSTEM_PRIVILEGES

Incorrect

Incorrect. Refer to Section 12

Section 14 Lesson 1 99. Table MYTAB contains only one column of datatype CHAR(1). A user executes the following statements in the order shown. INSERT INTO mytab VALUES ('A'); INSERT INTO mytab VALUES ('B'); COMMIT; INSERT INTO mytab VALUES ('C'); ROLLBACK; Which rows does the table now contain? Mark for Review (1) Points A, B and C A and B (*) C None of the above

Incorrect

Incorrect. Refer to Section 14

100. If a database crashes, all uncommitted changes are automatically rolled back. True or False? Mark for Review (1) Points True (*) False

Correct Previous

Correct Page 10 of 10

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 8 Lesson 1 1. You are creating the EMPLOYEES table. This table should contain the COMMISSION_PCT column and use a value of 10 percent if no commission value is provided when a record is inserted. Which line should you include in the CREATE TABLE statement to accomplish this task? Mark for Review (1) Points commission_pct NUMBER(4,2) DEFAULT 0.10 (*) commission_pct NUMBER(4,2) DEFAULT = 0.10 commission_pct NUMBER(4,2) DEFAULT (0.10) commission_pct NUMBER(4,2) (DEFAULT, 0.10)

Correct

Correct 2.

Evaluate this CREATE TABLE statement:

CREATE TABLE line_item ( line_item_id NUMBER(9), order_id NUMBER(9), product_id NUMBER(9)); You are a member of the SYSDBA role, but are not logged in as SYSDBA. You issue this CREATE TABLE statement. Which statement is true? Mark for Review (1) Points You created the LINE_ITEM table in the public schema. You created the LINE_ITEM table in the SYS schema.

You created the table in your schema. (*) You created the table in the SYSDBA schema.

Incorrect

Review (1) Points

Incorrect. Refer to Section 8 3.

Which CREATE TABLE statement will fail?

Mark for

CREATE TABLE date_1 (date_1 DATE); CREATE TABLE date (date_id NUMBER(9)); (*) CREATE TABLE time (time_id NUMBER(9)); CREATE TABLE time_date (time NUMBER(9));

Correct

Correct

4. Which statement about table and column names is true? Mark for Review (1) Points Table and column names must begin with a letter. (*) Table and column names can begin with a letter or a number. Table and column names cannot include special characters. If any character other than letters or numbers is used in a table or column name, the name must be enclosed in single quotation marks.

Incorrect

Incorrect. Refer to Section 8

5.

Which statement about creating a table is true?

Mark

for Review (1) Points With a CREATE TABLE statement, a table will always be created in the current user's schema. If no schema is explicitly included in a CREATE TABLE statement, the table is created in the current user's schema. (*) If no schema is explicitly included in a CREATE TABLE statement, the CREATE TABLE statement will fail. If a schema is explicitly included in a CREATE TABLE statement and the schema does not exist, it will be created.

Correct

Correct

Section 8 Lesson 2 6.

Evaluate this CREATE TABLE statement:

CREATE TABLE sales ( sales_id NUMBER(9), customer_id NUMBER(9), employee_id NUMBER(9), description VARCHAR2(30), sale_date TIMESTAMP WITH LOCAL TIME ZONE DEFAULT SYSDATE, sale_amount NUMBER(7,2)); Which business requirement will this statement accomplish? Mark for Review (1) Points Sales identification values could be either numbers or characters, or a combination of both. All employee identification values are only 6 digits so the column should be variable in length. Description values can range from 0 to 30 characters so the column should be fixed in length.

Today's date will be used if no value is provided for the sale date. (*)

Correct

Correct 7.

Which statement about data types is true?

Mark for

Review (1) Points The BFILE data type stores character data up to four gigabytes in the database. The TIMESTAMP data type is a character data type. The VARCHAR2 data type should be used for fixed-length character data. The CHAR data type requires that a minimum size be specified when defining a column of this type. (*)

Correct

Correct

8. The SPEED_TIME column should store a fractional second value. Which data type should you use? Mark for Review (1) Points DATE DATETIME TIMESTAMP (*) INTERVAL DAY TO SECOND

Incorrect

Incorrect. Refer to Section 8

9. Select two. (1) Points

Which data types stores variable-length character data? Mark for Review (Choose all correct answers)

CHAR NCHAR CLOB (*) VARCHAR2 (*)

Incorrect

Incorrect. Refer to Section 8

10. You are designing a table for the Human Resources department. This table must include a column that contains each employee's hire date. Which data type should you specify for this column? Mark for Review (1) Points CHAR DATE (*) TIMESTAMP INTERVAL YEAR TO MONTH

Correct

Correct

Page 1 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 8 Lesson 2

11. You need to store the SEASONAL data in months and years. Which data type should you use? Mark for Review (1) Points DATE TIMESTAMP INTERVAL YEAR TO MONTH (*) INTERVAL DAY TO SECOND

Incorrect

Incorrect. Refer to Section 8

12. You are designing a table for the Sales department. You need to include a column that contains each sales total. Which data type should you specify for this column? Mark for Review (1) Points CHAR DATE NUMBER (*) VARCHAR2

Incorrect

Incorrect. Refer to Section 8

Section 8 Lesson 3 13. You need to remove all the data in the SCHEDULE table, the structure of the table, and the indexes associated with the table. Which statement should you use? Mark for Review (1) Points DROP TABLE (*)

TRUNCATE TABLE ALTER TABLE DELETE TABLE

Incorrect

Incorrect. Refer to Section 8 Lesson 3

14. To do a logical delete of a column without the performance penalty of rewriting all the table datablocks you can issue the following command: Mark for Review (1) Points Alter table modify column Alter table drop column Alter table set unused (*) Drop column 'columname'

Correct

Correct

15. Which statement about decreasing the width of a column is true? Mark for Review (1) Points When a character column contains data, you cannot decrease the width of the column. When a character column contains data, you can decrease the width of the column without any restrictions. When a character column contains data, you can decrease the width of the column if the existing data does not violate the new size. (*)

You cannot decrease the width of a character column unless the table in which the column resides is empty.

Correct

Correct

16. Comments on tables and columns can be stored for documentation by: Mark for Review (1) Points Embedding /* comment */ within the definition of the table. Using the ALTER TABLE CREATE COMMENT syntax Using the COMMENT ON TABLE or COMMENT on COLUMN (*) Using an UPDATE statement on the USER_COMMENTS table

Incorrect

Incorrect. Refer to Section 8 Lesson 3 17.

Evaluate this statement:

ALTER TABLE inventory MODIFY (backorder_amount NUMBER(8,2)); Which task will this statement accomplish? Mark for Review (1) Points Alters the definition of the BACKORDER_AMOUNT column to NUMBER(8 2) Alters the definition of the BACKORDER_AMOUNT column to NUMBER Alters the definition of the BACKORDER_AMOUNT column to NUMBER(2,8) Alters the definition of the BACKORDER_AMOUNT column to NUMBER(8.2) Changes the definition of the BACKORDER_AMOUNT column to NUMBER(8,2) (*)

Incorrect

Incorrect. Refer to Section 8 Lesson 3 18.

The EMPLOYEES contains these columns:

LAST_NAME VARCHAR2(15) NOT NULL FIRST_NAME VARCHAR2(10) NOT NULL EMPLOYEE_ID NUMBER(4) NOT NULL HIRE_DATE DATE NOT NULL You need to remove the EMPLOYEE_ID column from the EMPLOYEES table. Which statement could you use to accomplish this task? Mark for Review (1) Points ALTER TABLE employees MODIFY (employee_id NUMBER(5)); ALTER TABLE employees DELETE employee_id; ALTER TABLE employees DROP COLUMN employee_id; (*) DELETE FROM employees WHERE column = employee_id;

Incorrect

Incorrect. Refer to Section 8 Lesson 3

19. You need to truncate the EMPLOYEES table. The EMPLOYEES table is not in your schema. Which privilege must you have to truncate the table? Mark for Review (1) Points the DROP ANY TABLE system privilege (*) the TRUNCATE ANY TABLE system privilege the CREATE ANY TABLE system privilege the ALTER ANY TABLE system privilege

Correct

Correct

20.

Evaluate this statement:

ALTER TABLE employees SET UNUSED (fax); Which task will this statement accomplish? Mark for Review (1) Points Deletes the FAX column Frees the disk space used by the data in the FAX column Prevents data in the FAX column from being displayed, by performing a logical drop of the column. (*) Prevents a new FAX column from being added to the EMPLOYEES table

Incorrect Previous

Incorrect. Refer to Section 8 Lesson 3 Page 2 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 8 Lesson 3 21.

Evaluate the structure of the EMPLOYEES table:

EMPLOYEE_ID NUMBER(9) LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25) DEPARTMENT_ID NUMBER(9) MANAGER_ID NUMBER(9) SALARY NUMBER(7,2) Which statement should you use to increase the LAST_NAME column length to 35 if the column currently contains 200 records? Mark for Review (1) Points ALTER employee TABLE ALTER COLUMN (last_name VARCHAR2(35));

ALTER TABLE employee RENAME last_name VARCHAR2(35); ALTER TABLE employee MODIFY (last_name VARCHAR2(35)); (*) You CANNOT increase the width of the LAST_NAME column.

Correct

Correct

22. You need to remove all the rows from the SALES_HIST table. You want to release the storage space, but do not want to remove the table structure. Which statement should you use? Mark for Review (1) Points the DROP TABLE statement the ALTER TABLE statement the DELETE statement the TRUNCATE TABLE statement (*)

Incorrect

Incorrect. Refer to Section 8 23.

Examine the structure of the DONATIONS table.

DONATIONS: PLEDGE_ID NUMBER DONOR_ID NUMBER PLEDGE_DT DATE AMOUNT_PLEDGED NUMBER (7,2) AMOUNT_PAID NUMBER (7,2) PAYMENT_DT DATE You need to reduce the precision of the AMOUNT_PLEDGED column to 5 with a scale of 2 and ensure that when inserting a row into the DONATIONS table without a value for the AMOUNT_PLEDGED column, a price of $10.00 will automatically be inserted. The DONATIONS table currently contains NO records. Which statement is true? Mark for Review (1) Points

You CANNOT decrease the width of the AMOUNT_PLEDGED column.

(*)

Both changes can be accomplished with one ALTER TABLE statement.

You must drop and recreate the DONATIONS table to achieve these results. You must use the ADD OR REPLACE option to achieve these results.

Incorrect

Incorrect. Refer to Section 8 Lesson 3

Section 9 Lesson 1 24. Which two statements about NOT NULL constraints are true? (Choose two) Mark for Review (1) Points (Choose all correct answers) The Oracle Server creates a name for an unnamed NOT NULL constraint. (*) A NOT NULL constraint can be defined at either the table or column level. The NOT NULL constraint requires that every value in a column be unique. Columns without the NOT NULL constraint can contain null values by default. You CANNOT add a NOT NULL constraint to an existing column using the ALTER TABLE ADD CONSTRAINT statement. (*)

Incorrect

Incorrect. Refer to Section 9

25. You need to ensure that the LAST_NAME column only contains certain character values. No numbers or special characters are allowed. Which type of constraint should you define on the LAST_NAME column? Mark for Review (1) Points CHECK (*) UNIQUE NOT NULL PRIMARY KEY

Incorrect

Review (1) Points

Incorrect. Refer to Section 9 26.

Which statement about constraints is true?

Mark for

A single column can have only one constraint applied. PRIMARY KEY constraints can only be specified at the column level. NOT NULL constraints can only be specified at the column level. (*) UNIQUE constraints are identical to PRIMARY KEY constraints.

Correct

Correct 27.

Evaluate this CREATE TABLE statement:

CREATE TABLE customers (customer_id NUMBER, customer_name VARCHAR2(25),  address VARCHAR2(25),  city VARCHAR2(25),  region VARCHAR2(25),  postal_code VARCHAR2(11),

 CONSTRAINT customer_id_un UNIQUE(customer_id),  CONSTRAINT customer_name_nn NOT NULL(customer_name)); Why does this statement fail when executed? Mark for Review (1) Points The NUMBER data types require precision values. UNIQUE constraints must be defined at the column level. The CREATE TABLE statement does NOT define a PRIMARY KEY. NOT NULL constraints CANNOT be defined at the table level. (*)

Incorrect

Incorrect. Refer to Section 9

28. Which constraint can only be created at the column level? Mark for Review (1) Points NOT NULL (*) FOREIGN KEY UNIQUE CHECK

Incorrect

Incorrect. Refer to Section 9

29. Primary Key, Foreign Key, Unique Key and Check Constraints can be added at which two levels? (Choose two) Mark for Review (1) Points (Choose all correct answers) Null Field

Table (*) Row Dictionary Column (*)

Incorrect

Incorrect. Refer to Section 9

Section 9 Lesson 2 30. When creating the EMPLOYEES table, which clause could you use to ensure that salary values are 1000.00 or more? Mark for Review (1) Points CONSTRAINT CHECK salary > 1000 CHECK CONSTRAINT (salary > 1000) CONSTRAINT employee_salary_min CHECK salary > 1000 CONSTRAINT employee_salary_min CHECK (salary >= 1000) (*) CHECK CONSTRAINT employee_salary_min (salary > 1000)

Incorrect Previous

Incorrect. Refer to Section 9 Page 3 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 9 Lesson 2

31.

Evaluate this CREATE TABLE statement:

1. CREATE TABLE part( 2. part_id NUMBER, 3. part_name VARCHAR2(25), 4. manufacturer_id NUMBER(9), 5. cost NUMBER(7,2), 6. retail_price NUMBER(7,2) NOT NULL, 7. CONSTRAINT part_id_pk PRIMARY KEY(part_id), 8. CONSTRAINT cost_nn NOT NULL(cost), 9. CONSTRAINT FOREIGN KEY (manufacturer_id) REFERENCES manufacturer(id)); Which line will cause an error? Mark for Review (1) Points 6 7 8 (*) 9

Incorrect

Incorrect. Refer to Section 9

32. What is an attribute of data that is entered into a primary key column? Mark for Review (1) Points Null and non-unique values cannot be entered into a primary key column. (*) Data that is entered into a primary key column automatically increments by a value of 1 each time a new record is entered into the table. Data that is entered into a primary key column references a column of the same datatype in another table. Data that is entered into a primary key column is restricted to a range of numbers that is defined by the local Oracle database.

Incorrect

Incorrect. Refer to Section 9

33. Which of the following FOREIGN KEY Constraint keywords identifies the table and column in the parent table? Mark for Review (1) Points RESEMBLES ON DELETE CASCADE REFERENTIAL REFERENCES (*)

Incorrect

Incorrect. Refer to Section 9

34. You need to create the PROJECT_HIST table. The table must meet these requirements: 1. The table must contain the EMPLOYEE_ID and TASKED_HOURS columns for numeric data. 2. The table must contain the START_DATE and END_DATE column for date values. 3. The table must contain the HOURLY_RATE and PROJECT_COST columns for numeric data with precision and scale of 5,2 and 10,2 respectively. 4. The table must have a composite primary key on the EMPLOYEE_ID and START_DATE columns. Evaluate this CREATE TABLE statement: CREATE TABLE project_hist ( employee_id NUMBER, start_date DATE, end_date DATE, tasked_hours NUMBER, hourly_rate NUMBER(5,2), project_cost NUMBER(10,2), CONSTRAINT project_hist_pk PRIMARY KEY(employee_id, start_date)); How many of the requirements does the CREATE TABLE statement satisfy? Mark for Review (1) Points

None of the four requirements All four of the requirements (*) Only three of the requirements Only two of the requirements

Incorrect

Incorrect. Refer to Section 9

35. Which of the following best describes the function of a CHECK constraint? Mark for Review (1) Points A CHECK constraint enforces referential data integrity. A CHECK constraint defines restrictions on the values that can be entered in a column or combination of columns. (*) A CHECK constraint enforces uniqueness of the values that can be entered in a column or combination of columns. A CHECK constraint is created automatically when a PRIMARY KEY constraint is created.

Incorrect

Incorrect. Refer to Section 9

36. What must exist on the Parent table before Oracle will allow you to create a FOREIGN KEY constraint from a Child table? Mark for Review (1) Points A FOREIGN KEY constraint on the Parent table.exist in the primary key column of the parent table. A PRIMARY or UNIQUE KEY constraint must exist on the Parent table. (*)

An index must exist on the Parent table. A CHECK constraint must exist on the Parent table.

Correct

Correct

37. You need to create a composite primary key constraint on the EMPLOYEE table. Which statement is true? Mark for Review (1) Points The PRIMARY KEY constraint must be defined at the table level. (*) A PRIMARY KEY constraint must be defined for each column in the composite primary key. The PRIMARY KEY constraint must be defined for the first column of the composite primary key. The PRIMARY KEY constraint must be defined at the table level and for each column in the composite primary key.

Incorrect

Incorrect. Refer to Section 9

Section 9 Lesson 3 38. When dropping a constraint, which keyword(s) specifies that all the referential integrity constraints that refer to the primary and unique keys defined on the dropped columns are dropped as well? Mark for Review (1) Points FOREIGN KEY REFERENCES CASCADE (*) ON DELETE SET NULL

Correct

Correct

39. You need to remove the EMP_FK_DEPT constraint from the EMPLOYEES table in your schema. Which statement should you use? Mark for Review (1) Points DROP CONSTRAINT EMP_FK_DEPT FROM employees; DELETE CONSTRAINT EMP_FK_DEPT FROM employees; ALTER TABLE employees DROP CONSTRAINT EMP_FK_DEPT; (*) ALTER TABLE employees REMOVE CONSTRAINT EMP_FK_DEPT;

Correct

Correct 40.

This SQL command will do what?

ALTER TABLE employees ADD CONSTRAINT emp_manager_fk FOREIGN KEY(manager_id) REFERENCES employees(employee_id); Mark for Review (1) Points Alter the table employees and disable the emp_manager_fk constraint. Add a FOREIGN KEY constraint to the EMPLOYEES table indicating that a manager must already be an employee. (*) Add a FOREIGN KEY constraint to the EMPLOYEES table restricting manager ID to match every employee ID. Alter table employees and add a FOREIGN KEY constraint that indicates each employee ID must be unique.

Incorrect Previous

Incorrect. Refer to Section 9 Page 4 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 9 Lesson 3 41. You need to add a NOT NULL constraint to the EMAIL column in the EMPLOYEES table. Which clause should you use? Mark for Review (1) Points ADD CHANGE MODIFY (*) ENABLE

Correct

Correct 42.

Examine the structures of the PRODUCT and SUPPLIER

tables. PRODUCT PRODUCT_ID NUMBER NOT NULL, Primary Key PRODUCT_NAME VARCHAR2 (25) SUPPLIER_ID NUMBER Foreign key to SUPPLIER_ID of the SUPPLIER table LIST_PRICE NUMBER (7,2) COST NUMBER (7,2) QTY_IN_STOCK NUMBER QTY_ON_ORDER NUMBER REORDER_LEVEL NUMBER REORDER_QTY NUMBER SUPPLIER SUPPLIER_ID NUMBER NOT NULL, Primary Key SUPPLIER_NAME VARCHAR2 (25) ADDRESS VARCHAR2 (30) CITY VARCHAR2 (25) REGION VARCHAR2 (10) POSTAL_CODE VARCHAR2 (11)

Evaluate this statement: ALTER TABLE suppliers DISABLE CONSTRAINT supplier_id_pk CASCADE; For which task would you issue this statement? Mark for Review (1) Points To remove all constraint references to SUPPLIERS table To drop the FOREIGN KEY constraint on the PRODUCTS table To remove all constraint references to the PRODUCTS table To disable any dependent integrity constraints on the SUPPLIER_ID column in the PRODUCTS table To disable any dependent integrity constraints on the SUPPLIER_ID column in the SUPPLIERS table (*)

Incorrect

Incorrect. Refer to Section 9 43.

Evaluate this statement

ALTER TABLE employees ENABLE CONSTRAINT emp_id_pk; For which task would you issue this statement? Mark for Review (1) Points to add a new constraint to the EMPLOYEES table to disable an existing constraint on the EMPLOYEES table to activate a new constraint while preventing the creation of a PRIMARY KEY index to activate the previously disabled constraint on the EMPLOYEE_ID column while creating a PRIMARY KEY index (*)

Correct

Correct

44. You need to display the names and definitions of constraints only in your schema. Which data dictionary view should you query? Mark for Review (1) Points DBA_CONSTRAINTS USER_CONSTRAINTS (*) ALL_CONS_COLUMNS USER_CONS_COLUMNS

Incorrect

Incorrect. Refer to Section 9 45.

The DEPARTMENTS table contains these columns:

DEPARTMENT_ID NUMBER, Primary Key DEPARTMENT_ABBR VARCHAR2(4) DEPARTMENT_NAME VARCHAR2(30) MANAGER_ID NUMBER The EMPLOYEES table contains these columns: EMPLOYEE_ID NUMBER LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25) DEPARTMENT_ID NUMBER JOB_ID NUMBER MANAGER_ID NUMBER SALARY NUMBER(9,2) HIRE_DATE DATE Evaluate this statement: ALTER TABLE employees ADD CONSTRAINT REFERENTIAL (manager_id) TO departments(manager_id); Which statement is true? Mark for Review (1) Points

The ALTER TABLE statement creates a referential constraint from the EMPLOYEES table to the DEPARTMENTS table. The ALTER TABLE statement creates a referential constraint from the DEPARTMENTS table to the EMPLOYEES table. The ALTER TABLE statement fails because the ADD CONSTRAINT clause contains a syntax error. (*) The ALTER TABLE statement succeeds, but does NOT recreate a referential constraint.

Incorrect

Incorrect. Refer to Section 9

46. Which statement should you use to add a FOREIGN KEY constraint to the DEPARTMENT_ID column in the EMPLOYEES table to refer to the DEPARTMENT_ID column in the DEPARTMENTS table? Mark for Review (1) Points ALTER TABLE employees MODIFY COLUMN dept_id_fk FOREIGN KEY (department_id) REFERENCES departments(department_id);

ALTER TABLE employees ADD CONSTRAINT dept_id_fk FOREIGN KEY (department_id) REFERENCES departments(department_id); (*) ALTER TABLE employees ADD FOREIGN KEY CONSTRAINT dept_id_fk ON (department_id) REFERENCES departments(department_id);

ALTER TABLE employees ADD FOREIGN KEY departments(department_id) REFERENCES (department_id);

Incorrect

Incorrect. Refer to Section 9

47.

Evaluate this statement:

ALTER TABLE employees ADD CONSTRAINT employee_id PRIMARY KEY; Which result will the statement provide? Mark for Review (1) Points A syntax error will be returned. (*) A constraint will be added to the EMPLOYEES table. An existing constraint on the EMPLOYEES table will be overwritten. An existing constraint on the EMPLOYEES table will be enabled.

Incorrect

Incorrect. Refer to Section 9

Section 10 Lesson 1 48. Which of the following keywords cannot be used when creating a view? Mark for Review (1) Points HAVING WHERE ORDER BY They are all valid keywords when creating views. (*)

Incorrect

Incorrect. Refer to Section 10

49. You need to create a view that when queried will display the name, employee identification number, first and last name, salary,

and department identification number. When queried, the display should be sorted by salary from lowest to highest, then by last name and first name alphabetically. The view definition should be created regardless of the existence of the EMPLOYEES table. No DML may be performed when using this view. Evaluate these statements: CREATE OR REPLACE NOFORCE VIEW EMP_SALARY_V AS SELECT employee_id, last_name, first_name, salary, department_id FROM employees WITH READ ONLY; SELECT * FROM emp_salary_v ORDER BY salary, last_name, first_name; Which statement is true? Mark for Review (1) Points When both statements are executed all of the desired results are achieved. The CREATE VIEW statement will fail if the EMPLOYEES table does not exist. (*) The statements will NOT return all of the desired results because the WITH CHECK OPTION clause is NOT included in the CREATE VIEW statement. To achieve all of the desired results this ORDER ON clause should be added to the CREATE VIEW statement: 'ORDER ON salary, last_name, first_name'.

Correct

Correct

50. Which keyword(s) would you include in a CREATE VIEW statement to create the view regardless of whether or not the base table exists? Mark for Review (1) Points FORCE (*) NOFORCE OR REPLACE

WITH READ ONLY

Correct Previous

Correct Page 5 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 10 Lesson 1 51.

The FACULTY table contains these columns:

FACULTYID VARCHAR2(5) NOT NULL PRIMARY KEY FIRST_NAME VARCHAR2(20) LAST_NAME VARCHAR2(20) ADDRESS VARCHAR2(35) CITY VARCHAR2(15) STATE VARCHAR2(2) ZIP NUMBER(9) TELEPHONE NUMBER(10) STATUS VARCHAR2(2) NOT NULL The COURSE table contains these columns: COURSEID VARCHAR2(5) NOT NULL PRIMARY KEY SUBJECT VARCHAR2(5) TERM VARCHAR2(6 FACULTYID VARCHAR2(5) NOT NULL FOREIGN KEY You have been asked to compile a report that identifies all adjunct professors who will be teaching classes in the upcoming term. You want to create a view that will simplify the creation of this report. Which CREATE VIEW statements will accomplish this task? Mark for Review (1) Points CREATE VIEW (SELECT first_name, last_name, status, courseid, subject, term FROM faculty, course WHERE facultyid = facultyid);

CREATE VIEW pt_view ON (SELECT first_name, last_name, status, courseid, subject, term FROM faculty f and course c

WHERE f.facultyid = c.facultyid);

CREATE VIEW pt_view IN (SELECT first_name, last_name, status, courseid, subject, term FROM faculty course);

CREATE VIEW pt_view AS (SELECT first_name, last_name, status, courseid, subject, term FROM faculty f, course c WHERE f.facultyid = c.facultyid); (*)

Incorrect

Incorrect. Refer to Section 10

52. using a view? (1) Points

Which of the following statements is a valid reason for Mark for Review

Views allow access to the data because the view displays all of the columns from the table. Views provide data independence for infrequent users and application programs. One view can be used to retrieve data from several tables. Views can be used to provide data security. (*) Views are used when you only want to restrict DML operations using a WITH CHECK OPTION. Views are not valid unless you have more than one user.

Correct

Correct

53. Which option would you use to modify a view rather than dropping it and recreating it? Mark for Review (1) Points FORCE

NOFORCE CREATE OR REPLACE (*) WITH ADMIN OPTION

Incorrect

Incorrect. Refer to Section 10 54.

Evaluate this CREATE VIEW statement:

CREATE VIEW emp_view AS SELECT SUM(salary) FROM employees; Which statement is true? Mark for Review (1) Points You cannot update data in the EMPLOYEES table using the EMP_VIEW view. (*) You can update any data in the EMPLOYEES table using the EMP_VIEW view.

view.

You can delete records from the EMPLOYEES table using the EMP_VIEW

You can update only the SALARY column in the EMPLOYEES table using the EMP_VIEW view.

Incorrect

Incorrect. Refer to Section 10

55. In order to query a database using a view, which of the following statements applies? Mark for Review (1) Points Use special VIEWSELECT Keyword You can retrieve data from a view as you would from any table. (*)

You can never see all the rows in the table through the view. The tables you are selecting from can be empty, yet the view still returns the original data from those tables.

Incorrect

Incorrect. Refer to Section 10

Section 10 Lesson 2 56. You cannot modify data in a view if the view contains ______. Mark for Review (1) Points the DISTINCT keyword (*) a WHERE clause a subquery in the FROM clause the WITH CHECK OPTION clause

Incorrect

Incorrect. Refer to Section 10

57. view is true? (1) Points

Which statement about performing DML operations on a Mark for Review

You can delete data in a view if the view contains the DISTINCT keyword. You cannot modify data in a view if the view contains a WHERE clause. You cannot modify data in a view if the view contains a group function. (*)

You can modify data in a view if the view contains a GROUP BY clause.

Incorrect

Incorrect. Refer to Section 10

58. view is true? (1) Points

Which statement about performing DML operations on a Mark for Review

You can perform DML operations on simple views. (*) You cannot perform DML operations on a view that contains the WITH CHECK OPTION clause. You can perform DML operations on a view that contains the WITH READ ONLY option. You can perform DML operations on a view that contains columns defined by expressions, such as COST + 1.

Incorrect

Incorrect. Refer to Section 10

59. What is the purpose of including the WITH CHECK OPTION clause when creating a view? Mark for Review (1) Points To make sure that the parent table(s) actually exist To keep views from being queried by unauthorized persons To make sure that data is not duplicated in the view To make sure no rows are updated through the view that will hinder those rows from being returned by the view. (*)

Incorrect

Incorrect. Refer to Section 10

60. Which of the following is TRUE regarding simple views? Mark for Review (1) Points They derive data from many tables, so they typically contain joins. They contain functions or groups of data They can perform DML operations through the view (*) They are not stored in the Data Dictionary

Incorrect Previous

Incorrect. Refer to Section 10 Page 6 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 10 Lesson 2 61. Your manager has just asked you to create a report that illustrates the salary range of all the employees at your company. Which of the following SQL statements will create a view called SALARY_VU based on the employee last names, department names, salaries, and salary grades for all employees? Use the EMPLOYEES, DEPARTMENTS, and JOB_GRADES tables. Label the columns Employee, Department, Salary, and Grade, respectively. Mark for Review (1) Points CREATE OR REPLACE VIEW salary_vu AS SELECT e.last_name "Employee", d.department_name "Department", e.salary "Salary", j.grade_level "Grade" FROM employees e, departments d, job_grades WHERE e.department_id equals d.department_id AND e.salary BETWEEN j.lowest_sal and j.highest_sal;

CREATE OR REPLACE VIEW salary_vu AS SELECT e.empid "Employee", d.department_name "Department", e.salary "Salary", j.grade_level "Grade" FROM employees e, departments d, job_grades j WHERE e.department_id = d.department_id NOT e.salary BETWEEN j.lowest_sal and j.highest_sal;

CREATE OR REPLACE VIEW salary_vu AS SELECT e.last_name "Employee", d.department_name "Department", e.salary "Salary", j.grade_level "Grade" FROM employees e, departments d, job_grades j WHERE e.department_id = d.department_id AND e.salary BETWEEN j.lowest_sal and j.highest_sal; (*) CREATE OR REPLACE VIEW salary_vu FROM (SELECT e.last_name "Employee", d.department_name "Department", e.salary "Salary", j.grade_level "Grade" FROM employees emp, departments d, job grades j WHERE e.department_id = d.department_id AND e.salary BETWEEN j.lowest_sal and j.highest_sal);

Incorrect

Incorrect. Refer to Section 10

62. You can create a view if the view subquery contains an inline view. True or False? Mark for Review (1) Points True (*) False

Correct

Correct

Section 10 Lesson 3 63.

Which statement about an inline view is true?

Mark

for Review (1) Points An inline view is a schema object. An inline view is a subquery in the FROM clause, often named with an alias. (*)

An inline view is a complex view. An inline view can be used to perform DML operations.

Correct

Correct 64.

Evaluate this CREATE VIEW statement:

CREATE VIEW sales_view AS SELECT customer_id, region, SUM(sales_amount) FROM sales WHERE region IN (10, 20, 30, 40) GROUP BY region, customer_id; Which statement is true? Mark for Review (1) Points You can modify data in the SALES table using the SALES_VIEW view. You cannot modify data in the SALES table using the SALES_VIEW view. (*) You can only insert records into the SALES table using the SALES_VIEW view. The CREATE VIEW statement generates an error.

Incorrect

Incorrect. Refer to Section 10

65. An "inline view" is an unnamed select statement found: Mark for Review (1) Points In the user_views data dictionary view In a special database column of a users table

Enclosed in parenthesis within the select list of a surrounding query Enclosed in parenthesis within the from clause of a surrounding query (*)

Incorrect

Incorrect. Refer to Section 10 66.

The CUSTOMER_FINANCE table contains these columns:

CUSTOMER_ID NUMBER(9) NEW_BALANCE NUMBER(7,2) PREV_BALANCE NUMBER(7,2) PAYMENTS NUMBER(7,2) FINANCE_CHARGE NUMBER(7,2) CREDIT_LIMIT NUMBER(7) You created a Top-n query report that displays the account numbers and new balance of the 800 accounts that have the highest new balance value. The results are sorted by payments value from highest to lowest. Which SELECT statement clause is included in your query? Mark for Review (1) Points inner query: ORDER BY new_balance DESC (*) inner query: WHERE ROWNUM = 800 outer query: ORDER BY new_balance DESC inner query: SELECT customer_id, new_balance ROWNUM

Incorrect

Incorrect. Refer to Section 10 67.

The CUSTOMER_FINANCE table contains these columns:

CUSTOMER_ID NUMBER(9) NEW_BALANCE NUMBER(7,2) PREV_BALANCE NUMBER(7,2) PAYMENTS NUMBER(7,2) FINANCE_CHARGE NUMBER(7,2) CREDIT_LIMIT NUMBER(7)

You execute this statement: SELECT ROWNUM "Rank", customer_id, new_balancev FROM (SELECT customer_id, new_balance FROM customer_finance) WHERE ROWNUM <= 25 ORDER BY new_balance DESC; What statement is true? Mark for Review (1) Points The statement failed to execute because an inline view was used. The statement will not necessarily return the 25 highest new balance values, as the inline view has no ORDER BY. (*) The 25 greatest new balance values were displayed from the highest to the lowest. The statement failed to execute because the ORDER BY does NOT use the Top-n column.

Incorrect

Incorrect. Refer to Section 10

Section 11 Lesson 2 68. You need to retrieve the next available value for the SALES_IDX sequence. Which would you include in your SQL statement? Mark for Review (1) Points sales_idx sales_idx.NEXT sales_idx.NEXTVAL (*) sales_idx.CURRVAL

Incorrect

Incorrect. Refer to Section 11 69.

Sequences can be used to: (choose three)

Mark for

Review (1) Points (Choose all correct answers) Ensure primary key values will be unique and consecutive Ensure primary key values will be unique even though gaps may exist (*) Generate a range of numbers and optionally cycle through them again (*) Set a fixed interval between successively generated numbers. (*) Guarantee that no primary key values are unused

Correct

Correct

70. Which statement would you use to modify the EMP_ID_SEQ sequence used to populate the EMPLOYEE_ID column in the EMPLOYEES table? Mark for Review (1) Points ALTER SEQUENCE emp_id_seq.employee_id …; CREATE SEQUENCE emp_id_seq …; ALTER TABLE employees …; ALTER SEQUENCE emp_id_seq …; (*)

Incorrect

Incorrect. Refer to Section 11

Previous

Page 7 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 11 Lesson 2 71. A gap can occur in a sequence because a user generated a number from the sequence and then rolled back the transaction. True or False? Mark for Review (1) Points True (*) False

Incorrect

Incorrect. Refer to Section 11

72. When used in a CREATE SEQUENCE statement, which keyword specifies that a range of sequence values will be preloaded into memory? Mark for Review (1) Points LOAD MEMORY CACHE (*) NOCACHE NOCYCLE

Incorrect

Incorrect. Refer to Section 11

Section 11 Lesson 3 73.

Evaluate this statement:

CREATE PUBLIC SYNONYM testing FOR chan.testing; Which task will this statement accomplish? Mark for Review (1) Points It recreates the synonym if it already exists. It forces all users to access TESTING using the synonym. It allows only the user CHAN to access TESTING using the synonym. It eliminates the need for all users to qualify TESTING with its schema. (*)

Correct

Correct

74. Unique indexes are automatically created on columns that have which two types of constraints? Mark for Review (1) Points NOT NULL and UNIQUE UNIQUE and PRIMARY KEY (*) UNIQUE and FOREIGN KEY PRIMARY KEY and FOREIGN KEY

Incorrect

Incorrect. Refer to Section 11 75.

Evaluate this statement:

CREATE INDEX sales_idx ON oe.sales (status); Which statement is true? Mark for Review (1) Points

The CREATE INDEX creates a function-based index. The CREATE INDEX statement creates a nonunique index. (*) The CREATE INDEX statement creates a unique index. The CREATE INDEX statement fails because of a syntax error.

Incorrect

Incorrect. Refer to Section 11 76.

The EMPLOYEES table contains these columns:

EMPLOYEE_ID NOT NULL, Primary Key SOCIAL_SECURITY_NUMBER NOT NULL, Unique LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25) DEPARTMENT_ID NUMBER Foreign Key to DEPARTMENT_ID column of the DEPARTMENTS table SALARY NUMBER(8,2) You execute this statement: CREATE INDEX emp_name_idx ON employees(last_name, first_name); Which statement is true? Mark for Review (1) Points The statement creates a function-based index. The statement fails because of a syntax error. The statement creates a composite unique index. The statement creates a composite non-unique index. (*)

Incorrect

Incorrect. Refer to Section 11 77.

Review

Which statement about an index is true?

Mark for

(1) Points An index can only be created on a single table column. Creating an index will always improve query performance. Creating an index reorders the data in the underlying table. An index created on multiple columns is called a composite or concatenated index. (*)

Incorrect

Incorrect. Refer to Section 11

78. execute faster?

What would you create to make the following statement

SELECT * FROM employees WHERE LOWER(last_name) = 'chang'; Mark for Review (1) Points A synonym. An index, either a normal or a function_based index. (*) A composite index. Nothing; the performance of this statement cannot be improved.

Incorrect

Incorrect. Refer to Section 11

79. When creating an index on a table, which of the following statements are true? (Choose two) Mark for Review (1) Points (Choose all correct answers)

You should create an index if the table is large and most queries are expected to retrieve less than 2 to 4 percent of the rows. (*) You should always create an index on tables that are frequently updated. You should create an index if one or more columns are frequently used together in a join condition. (*) You should create an index if the table is very small.

Correct

Correct 80.

The EMPLOYEES table contains these columns:

EMPLOYEE_ID NUMBER NOT NULL, Primary Key LAST_NAME VARCHAR2 (20) FIRST_NAME VARCHAR2 (20) DEPARTMENT_ID NUMBER Foreign Key to PRODUCT_ID column of the PRODUCT table HIRE_DATE DATE DEFAULT SYSDATE SALARY NUMBER (8,2) NOT NULL On which column is an index automatically created for the EMPLOYEES table? Mark for Review (1) Points SALARY LAST_NAME HIRE_DATE EMPLOYEE_ID (*) DEPARTMENT_ID

Incorrect

Incorrect. Refer to Section 11

Previous

Page 8 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 11 Lesson 3 81.

The CLIENTS table contains these columns:

CLIENT_ID NUMBER(4) NOT NULL PRIMARY KEY LAST_NAME VARCHAR2(15) FIRST_NAME VARCHAR2(10) CITY VARCHAR2(15) STATE VARCHAR2(2) You want to create an index named ADDRESS_INDEX on the CITY and STATE columns of the CLIENTS table. You issue this statement: CREATE INDEX clients ON address_index (city, state); Which result does this statement accomplish? Mark for Review (1) Points An index named ADDRESS_INDEX is created on the CITY and STATE columns. An index named CLIENTS is created on the CITY and STATE columns. An index named CLIENTS_INDEX is created on the CLIENTS table. An error message is produced, and no index is created. (*)

Incorrect

Incorrect. Refer to Section 11

82. You want to create a composite index on the FIRST_NAME and LAST_NAME columns of the EMPLOYEES table. Which SQL statement will accomplish this task? Mark for Review (1) Points CREATE INDEX fl_idx ON employees(first_name || last_name);

CREATE INDEX fl_idx ON employees(first_name), employees(last_name);

CREATE INDEX fl_idx ON employees(first_name,last_name); (*) CREATE INDEX fl_idx ON employees(first_name); CREATE INDEX fl_idx ON employees(last_name);

Incorrect

Incorrect. Refer to Section 11

83. Which statement would you use to remove the LAST_NAME_IDX index on the LAST_NAME column of the EMPLOYEES table? Mark for Review (1) Points DROP INDEX last_name_idx; (*) DROP INDEX last_name_idx(last_name); DROP INDEX last_name_idx(employees.last_name); ALTER TABLE employees DROP INDEX last_name_idx;

Correct

Correct

84. Barry creates a table named INVENTORY. Pam must be able to query the table. Barry wants to enable Pam to query the table without being required to specify the table's schema. Which of the following should Barry create? Mark for Review (1) Points A schema An index A view

A synonym (*)

Incorrect

Incorrect. Refer to Section 11 85.

For which column would you create an index?

Mark for

Review (1) Points A column which has only 4 distinct values. A column that is updated frequently A column with a large number of null values (*) A column that is infrequently used as a query search condition

Incorrect

Incorrect. Refer to Section 11

Section 12 Lesson 2 86. User ADAM has successfully logged on to the database in the past, but today he receives an error message stating that (although he has entered his password correctly) he cannot log on. What is the most likely cause of the problem? Mark for Review (1) Points One or more object privileges have been REVOKED from Adam. ADAM's CREATE SESSION privilege has been revoked. (*) ADAM's CREATE USER privilege has been revoked. ADAM's user account has been removed from the database.

Incorrect

Incorrect. Refer to Section 12

87. User SUSAN creates an EMPLOYEES table, and then creates a view EMP_VIEW which shows only the FIRST_NAME and LAST_NAME columns of EMPLOYEES. User RUDI needs to be able to access employees' names but no other data from EMPLOYEES. Which statement should SUSAN execute to allow this? Mark for Review (1) Points SELECT * FROM emp_view FOR rudi; CREATE SYNONYM emp_view FOR employees; GRANT SELECT ON emp_view TO rudi; (*) GRANT SELECT ON emp_view ONLY TO rudi;

Incorrect

Incorrect. Refer to Section 12

88. Which of the following are system privileges? (Choose two) Mark for Review (1) Points (Choose all correct answers) CREATE TABLE (*) UPDATE CREATE SYNONYM (*) INDEX

Incorrect

Incorrect. Refer to Section 12

89. User Kate wants to create indexes on tables in her schema. What privilege must be granted to Kate so that she can do this? Mark for Review (1) Points

CREATE INDEX CREATE ANY INDEX ALTER TABLE None; users do not need extra privileges to create indexes on tables in their own schema (*)

Incorrect

Incorrect. Refer to Section 12

90. Which of the following are object privileges? (Choose two) Mark for Review (1) Points (Choose all correct answers) SELECT (*) DROP TABLE CREATE TABLE INSERT (*)

Incorrect Previous

Incorrect. Refer to Section 12 Page 9 of 10

Next

Summary

Skip navigation elements to page contents Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 12 Lesson 2 91. User JAMES has created a CUSTOMERS table and wants to allow all other users to SELECT from it. Which command should JAMES use to do this? Mark for Review (1) Points

GRANT customers(SELECT) TO PUBLIC; GRANT SELECT ON customers TO ALL; GRANT SELECT ON customers TO PUBLIC; (*) CREATE PUBLIC SYNONYM customers FOR james.customers;

Incorrect

Incorrect. Refer to Section 12

92. Which of the following best describes a role in an Oracle database? Mark for Review (1) Points A role is a type of system privilege. A role is the part that a user plays in querying the database. A role is a name for a group of privileges. (*) A role is an object privilege which allows a user to update a table.

Incorrect

Incorrect. Refer to Section 12

Section 12 Lesson 3 93. privileges? (1) Points an index a view a trigger

Which of the following simplifies the administration of Mark for Review

a role (*)

Incorrect

Incorrect. Refer to Section 12

94. You need to grant user BOB SELECT privileges on the EMPLOYEES table. You want to allow BOB to grant this privileges to other users. Which statement should you use? Mark for Review (1) Points GRANT SELECT ON employees TO bob WITH GRANT OPTION; (*) GRANT SELECT ON employees TO PUBLIC WITH GRANT OPTION; GRANT SELECT ON employees TO bob GRANT SELECT ON employees TO bob WITH ADMIN OPTION;

Incorrect

Incorrect. Refer to Section 12

95. User BOB's schema contains an EMPLOYEES table. BOB executes the following statement: GRANT SELECT ON employees TO mary WITH GRANT OPTION; Which of the following statements can MARY now execute successfully? (Choose two) Mark for Review (1) Points (Choose all correct answers) SELECT FROM bob.employees; (*) REVOKE SELECT ON bob.employees FROM bob; GRANT SELECT ON bob.employees TO PUBLIC; (*) DROP TABLE bob.employees;

Incorrect

Incorrect. Refer to Section 12

96. When granting an object privilege, which option would you include to allow the grantee to grant the privilege to another user? Mark for Review (1) Points WITH GRANT OPTION (*) WITH ADMIN OPTION PUBLIC FORCE

Incorrect

Incorrect. Refer to Section 12

97. Which keyword would you use to grant an object privilege to all database users? Mark for Review (1) Points ADMIN ALL PUBLIC (*) USERS

Correct

Correct

98. Which data dictionary view shows which system privileges have been granted to a user? Mark for Review (1) Points

USER_TAB_PRIVS USER_SYS_PRIVS (*) USER_SYSTEM_PRIVS USER_SYSTEM_PRIVILEGES

Incorrect

Incorrect. Refer to Section 12

Section 14 Lesson 1 99. Table MYTAB contains only one column of datatype CHAR(1). A user executes the following statements in the order shown. INSERT INTO mytab VALUES ('A'); INSERT INTO mytab VALUES ('B'); COMMIT; INSERT INTO mytab VALUES ('C'); ROLLBACK; Which rows does the table now contain? Mark for Review (1) Points A, B and C A and B (*) C None of the above

Incorrect

Incorrect. Refer to Section 14

100. If a database crashes, all uncommitted changes are automatically rolled back. True or False? Mark for Review (1) Points

True (*) False

Correct Previous

Correct Page 10 of 10

Summary

Section 8 Lesson 1 1. You want to create a table named TRAVEL that is a child of the EMPLOYEES table. Which of the following statements should you issue? Mark for Review (1) Points CREATE TABLE travel (destination_id primary key, departure_date date, return_date date, emp_id REFERENCES employees (emp_id)); CREATE TABLE travel (destination_id number primary key, departure_date date, return_date date, t.emp_id = e.emp_id); CREATE TABLE travel (destination_id number primary key, departure_date date, return_date date, JOIN emp_id number(10) ON employees (emp_id)); CREATE TABLE travel (destination_id number primary key, departure_date date, return_date date, emp_id number(10) REFERENCES employees (emp_id)); (*)

Incorrect

Incorrect. Refer to Section 8

2. You want to create a database table that will contain information regarding products that your company released during 2001. Which name can you assign to the table that you create? Mark for Review (1) Points 2001_PRODUCTS PRODUCTS_2001 (*)

PRODUCTS_(2001) PRODUCTS--2001

Correct

Correct 3.

1. 2. 3. 4.

Evaluate this CREATE TABLE statement:

CREATE TABLE customer#1 ( cust_1 NUMBER(9), sales$ NUMBER(9), 2date DATE DEFAULT SYSDATE);

Which line of this statement will cause an error? Mark for Review (1) Points 1 2 3 4 (*)

Correct

Correct 4.

Evaluate this CREATE TABLE statement:

CREATE TABLE line_item ( line_item_id NUMBER(9), order_id NUMBER(9), product_id NUMBER(9)); You are a member of the SYSDBA role, but are not logged in as SYSDBA. You issue this CREATE TABLE statement. Which statement is true? Mark for Review (1) Points You created the LINE_ITEM table in the public schema. You created the LINE_ITEM table in the SYS schema.

You created the table in your schema. (*) You created the table in the SYSDBA schema.

Correct

Correct 5.

Which CREATE TABLE statement will fail?

Mark for

Review (1) Points CREATE TABLE date_1 (date_1 DATE); CREATE TABLE date (date_id NUMBER(9)); (*) CREATE TABLE time (time_id NUMBER(9)); CREATE TABLE time_date (time NUMBER(9));

Correct

Correct

Section 8 Lesson 2 6. You are designing a table for the Sales department. You need to include a column that contains each sales total. Which data type should you specify for this column? Mark for Review (1) Points CHAR DATE NUMBER (*) VARCHAR2

Correct

Correct

7. A column that will be used to store binary data up to 4 Gigabyes in size should be defined as which datatype? Mark for Review (1) Points LONG NUMBER BLOB (*) LONGRAW

Correct

Correct

8. You need to store the HIRE_DATE value with a time zone displacement value and allow data to be returned in the user's local session time zone. Which data type should you use? Mark for Review (1) Points DATETIME TIMESTAMP TIMESTAMP WITH TIME ZONE TIMESTAMP WITH LOCAL TIME ZONE (*)

Correct

Correct

9. You are designing a table for the Human Resources department. This table must include a column that contains each employee's hire date. Which data type should you specify for this column? Mark for Review (1) Points

CHAR DATE (*) TIMESTAMP INTERVAL YEAR TO MONTH

Correct

Correct 10.

Evaluate this CREATE TABLE statement:

CREATE TABLE sales ( sales_id NUMBER(9), customer_id NUMBER(9), employee_id NUMBER(9), description VARCHAR2(30), sale_date TIMESTAMP WITH LOCAL TIME ZONE DEFAULT SYSDATE, sale_amount NUMBER(7,2)); Which business requirement will this statement accomplish? Mark for Review (1) Points Sales identification values could be either numbers or characters, or a combination of both. All employee identification values are only 6 digits so the column should be variable in length. Description values can range from 0 to 30 characters so the column should be fixed in length. Today's date will be used if no value is provided for the sale date. (*) Section 8 Lesson 2 11. The SPEED_TIME column should store a fractional second value. Which data type should you use? Mark for Review (1) Points DATE

DATETIME TIMESTAMP (*) INTERVAL DAY TO SECOND

Correct

Correct 12.

Evaluate this CREATE TABLE statement:

CREATE TABLE sales (sales_id NUMBER, customer_id NUMBER, employee_id NUMBER, sale_date TIMESTAMP WITH LOCAL TIME ZONE, sale_amount NUMBER(7,2)); Which statement about the SALE_DATE column is true? Mark for Review (1) Points Data will be normalized to the client time zone. Data stored will not include seconds. Data will be stored using a fractional seconds precision of 5. Data stored in the column will be returned in the database's local time zone. (*)

Correct

Correct

Section 8 Lesson 3 13.

The PLAYERS table contains these columns:

PLAYER_ID NUMBER(9) PRIMARY KEY LAST_NAME VARCHAR2(20) FIRST_NAME VARCHAR2(20)

TEAM_ID NUMBER(4) SALARY NUMBER(9,2) Which statement should you use to decrease the width of the FIRST_NAME column to 10 if the column currently contains 1500 records, but none are longer than 10 bytes or characters? Mark for Review (1) Points ALTER players TABLE MODIFY COLUMN first_name VARCHAR2(10); ALTER players TABLE MODIFY COLUMN (first_name VARCHAR2(10)); ALTER TABLE players RENAME first_name VARCHAR2(10); ALTER TABLE players MODIFY (first_name VARCHAR2(10)); (*)

Correct

Correct 14.

Evaluate the structure of the EMPLOYEES table:

EMPLOYEE_ID NUMBER(9) LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25) DEPARTMENT_ID NUMBER(9) MANAGER_ID NUMBER(9) SALARY NUMBER(7,2) Which statement should you use to increase the LAST_NAME column length to 35 if the column currently contains 200 records? Mark for Review (1) Points ALTER employee TABLE ALTER COLUMN (last_name VARCHAR2(35)); ALTER TABLE employee RENAME last_name VARCHAR2(35); ALTER TABLE employee MODIFY (last_name VARCHAR2(35)); (*) You CANNOT increase the width of the LAST_NAME column.

Correct

Correct

15. You want to issue the following command on a database that includes your company's inventory information: ALTER TABLE products SET UNUSED COLUMN color; What will be the result of issuing this command? Mark for Review (1) Points The column named COLOR in the table named PRODUCTS will be assigned default values. The column named COLOR in the table named PRODUCTS will be created. The column named COLOR in the table named PRODUCTS will be deleted. The column named COLOR in the table named PRODUCTS will not be returned in subsequent reads of the table by Oracle, as is has been deleted logically. (*)

Incorrect

Incorrect. Refer to Section 8 Lesson 3 16.

The EMPLOYEES table contains these columns:

EMPLOYEE_ID NUMBER(9) Primary Key LAST_NAME VARCHAR2 (20) FIRST_NAME VARCHAR2 (20) DEPARTMENT_ID NUMBER(9) SALARY NUMBER(8,2) Which statement will permanently remove all the data in the EMPLOYEES table, but will retain the table's structure and storage space? Mark for Review (1) Points DROP TABLE employees; DELETE employees; COMMIT; (*) TRUNCATE TABLE employees;

ALTER TABLE employees SET UNUSED (employee_id, last_name, first_name, department_id, salary);

Incorrect

Incorrect. Refer to Section 8 Lesson 3 17.

The TEAMS table contains these columns:

TEAM_ID NUMBER(4) Primary Key TEAM_NAME VARCHAR2(20) MGR_ID NUMBER(9) The TEAMS table is currently empty. You need to allow users to include text characters in the manager identification values. Which statement should you use to implement this? Mark for Review (1) Points ALTER teams MODIFY (mgr_id VARCHAR2(15)); ALTER TABLE teams MODIFY (mgr_id VARCHAR2(15)); (*) ALTER TABLE teams REPLACE (mgr_id VARCHAR2(15)); ALTER teams TABLE MODIFY COLUMN (mgr_id VARCHAR2(15)); You CANNOT modify the data type of the MGR_ID column.

Incorrect

Incorrect. Refer to Section 8 Lesson 3

18. You need to remove all the rows from the SALES_HIST table. You want to release the storage space, but do not want to remove the table structure. Which statement should you use? Mark for Review (1) Points the DROP TABLE statement the ALTER TABLE statement

the DELETE statement the TRUNCATE TABLE statement (*)

Correct

Correct

19. Your supervisor has asked you to modify the AMOUNT column in the ORDERS table. He wants the column to be configured to accept a default value of 250. The table contains data that you need to keep. Which statement should you issue to accomplish this task? Mark for Review (1) Points ALTER TABLE orders CHANGE DATATYPE amount TO DEFAULT 250;

ALTER TABLE orders MODIFY (amount DEFAULT 250); (*) DROP TABLE orders; CREATE TABLE orders (orderno varchar2(5) CONSTRAINT pk_orders_01 PRIMARY KEY,customerid varchar2(5) REFERENCES customers (customerid), orderdate date, amount DEFAULT 250);

DELETE TABLE orders; CREATE TABLE orders (orderno varchar2(5) CONSTRAINT pk_orders_01 PRIMARY KEY, customerid varchar2(5) REFERENCES customers (customerid), orderdate date, amount DEFAULT 250)

Incorrect

Incorrect. Refer to Section 8 Lesson 3 20.

Evaluate this statement:

TRUNCATE TABLE employees; Which statement about this TRUNCATE TABLE statement is true? Mark for Review (1) Points

You can produce the same results by issuing the 'DROP TABLE employees' statement. You can issue this statement to retain the structure of the employees table. (*) You can reverse this statement by issuing the ROLLBACK statement. You can produce the same results by issuing the 'DELETE employees' statement. Section 8 Lesson 3 21.

Examine the structure of the DONATIONS table.

DONATIONS: PLEDGE_ID NUMBER DONOR_ID NUMBER PLEDGE_DT DATE AMOUNT_PLEDGED NUMBER (7,2) AMOUNT_PAID NUMBER (7,2) PAYMENT_DT DATE You need to reduce the precision of the AMOUNT_PLEDGED column to 5 with a scale of 2 and ensure that when inserting a row into the DONATIONS table without a value for the AMOUNT_PLEDGED column, a price of $10.00 will automatically be inserted. The DONATIONS table currently contains NO records. Which statement is true? Mark for Review (1) Points You CANNOT decrease the width of the AMOUNT_PLEDGED column. Both changes can be accomplished with one ALTER TABLE statement. (*) You must drop and recreate the DONATIONS table to achieve these results. You must use the ADD OR REPLACE option to achieve these results.

Correct

Correct

22. Which command could you use to quickly remove all data from the rows in a table without deleting the table itself? Mark for Review (1) Points ALTER TABLE DROP TABLE MODIFY TRUNCATE TABLE (*)

Correct

Correct 23.

Which statement about a column is true?

Mark for

Review (1) Points You cannot increase the width of a CHAR column. You can modify the data type of a column if the column contains non-null data. (*) You can convert a CHAR data type column to the VARCHAR2 data type. You can convert a DATE date type column to a VARCHAR2 column.

Incorrect

Incorrect. Refer to Section 8 Lesson 3

Section 9 Lesson 1 24. You need to ensure that each value in the SEAT_ID column is unique or null. Which constraint should you define on the SEAT_ID column? Mark for Review (1) Points CHECK

UNIQUE (*) NOT NULL PRIMARY KEY

Incorrect

Incorrect. Refer to Section 9

25. Primary Key, Foreign Key, Unique Key and Check Constraints can be added at which two levels? (Choose two) Mark for Review (1) Points (Choose all correct answers) Null Field Table (*) Row Dictionary Column (*)

Incorrect

Incorrect. Refer to Section 9 26.

Evaluate this CREATE TABLE statement:

CREATE TABLE customers (customer_id NUMBER, customer_name VARCHAR2(25),  address VARCHAR2(25),  city VARCHAR2(25),  region VARCHAR2(25),  postal_code VARCHAR2(11),  CONSTRAINT customer_id_un UNIQUE(customer_id),  CONSTRAINT customer_name_nn NOT NULL(customer_name));

Why does this statement fail when executed? Mark for Review (1) Points The NUMBER data types require precision values. UNIQUE constraints must be defined at the column level. The CREATE TABLE statement does NOT define a PRIMARY KEY. NOT NULL constraints CANNOT be defined at the table level. (*)

Correct

Correct

27. Which statement about the NOT NULL constraint is true? Mark for Review (1) Points The NOT NULL constraint must be defined at the column level. (*) The NOT NULL constraint can be defined at either the column level or the table level. The NOT NULL constraint requires a column to contain alphanumeric values. The NOT NULL constraint prevents a column from containing alphanumeric values.

Incorrect

Incorrect. Refer to Section 9

28. True or False? (1) Points

A table can only have one unique key constraint defined. Mark for Review

True False (*)

Correct

Correct

29. You need to ensure that the LAST_NAME column does not contain null values. Which type of constraint should you define on the LAST_NAME column? Mark for Review (1) Points CHECK UNIQUE NOT NULL (*) PRIMARY KEY

Incorrect

Incorrect. Refer to Section 9

Section 9 Lesson 2 30. Which statement about a FOREIGN KEY constraint is true? Mark for Review (1) Points An index is automatically created for a FOREIGN KEY constraint. A FOREIGN KEY constraint requires the constrained column to contain values that exist in the referenced Primary or Unique key column of the parent table. (*) A FOREIGN KEY constraint allows that a list of allowed values be checked before a value can be added to the constrained column. A FOREIGN KEY column can have a different data type from the primary key column that it references. Section 9 Lesson 2

31. When creating a referential constraint, which keyword(s) identifies the table and column in the parent table? Mark for Review (1) Points FOREIGN KEY REFERENCES (*) ON DELETE CASCADE ON DELETE SET NULL

Incorrect

Incorrect. Refer to Section 9

32. You need to create a composite primary key constraint on the EMPLOYEE table. Which statement is true? Mark for Review (1) Points The PRIMARY KEY constraint must be defined at the table level. (*) A PRIMARY KEY constraint must be defined for each column in the composite primary key. The PRIMARY KEY constraint must be defined for the first column of the composite primary key. The PRIMARY KEY constraint must be defined at the table level and for each column in the composite primary key.

Correct

Correct

33. Which statement about a non-mandatory foreign key constraint is true? Mark for Review (1) Points A foreign key value cannot be null. A foreign key value must be unique.

A foreign key value must match an existing value in the parent table. A foreign key value must either be null or match an existing value in the parent table. (*)

Correct

Correct

34. What is an attribute of data that is entered into a primary key column? Mark for Review (1) Points Null and non-unique values cannot be entered into a primary key column. (*) Data that is entered into a primary key column automatically increments by a value of 1 each time a new record is entered into the table. Data that is entered into a primary key column references a column of the same datatype in another table. Data that is entered into a primary key column is restricted to a range of numbers that is defined by the local Oracle database.

Correct

Correct

35. Which type of constraint by default requires that a column be both unique and not null? Mark for Review (1) Points FOREIGN KEY PRIMARY KEY (*) UNIQUE

CHECK

Incorrect

Incorrect. Refer to Section 9

36. Which clause could you use to ensure that cost values are greater than 1.00? Mark for Review (1) Points CONSTRAINT CHECK cost > 1.00 CONSTRAINT part_cost_ck CHECK (cost > 1.00) (*) CHECK CONSTRAINT part_cost_ck (cost > 1.00) CONSTRAINT CHECK part_cost_ck (cost > 1.00)

Correct

Correct 37.

Evaluate the structure of the DONATIONS table.

DONATIONS PLEDGE_ID NUMBER NOT NULL, Primary Key DONOR_ID NUMBER Foreign key to DONOR_ID column of DONORS table PLEDGE_DT DATE AMOUNT_PLEDGED NUMBER (7,2) AMOUNT_PAID NUMBER (7,2) PAYMENT_DT DATE Which CREATE TABLE statement should you use to create the DONATIONS table? Mark for Review (1) Points CREATE TABLE donations (pledge_id NUMBER PRIMARY KEY, donor_id NUMBER FOREIGN KEY REFERENCES donors(donor_id), pledge_date DATE, amount_pledged NUMBER, amount_paid NUMBER, payment_dt DATE);

CREATE TABLE donations

(pledge_id NUMBER PRIMARY KEY NOT NULL, donor_id NUMBER FOREIGN KEY donors(donor_id), pledge_date DATE, amount_pledged NUMBER(7,2), amount_paid NUMBER(7,2), payment_dt DATE);

CREATE TABLE donations pledge_id NUMBER PRIMARY KEY, donor_id NUMBER FOREIGN KEY donor_id_fk REFERENCES donors(donor_id), pledge_date DATE, amount_pledged NUMBER(7,2), amount_paid NUMBER(7,2), payment_dt DATE;

CREATE TABLE donations (pledge_id NUMBER PRIMARY KEY, donor_id NUMBER CONSTRAINT donor_id_fk REFERENCES donors(donor_id), pledge_date DATE, amount_pledged NUMBER(7,2), amount_paid NUMBER(7,2), payment_dt DATE); (*)

Incorrect

Incorrect. Refer to Section 9

Section 9 Lesson 3 38.

Evaluate this statement

ALTER TABLE employees ENABLE CONSTRAINT emp_id_pk; For which task would you issue this statement? Mark for Review (1) Points to add a new constraint to the EMPLOYEES table to disable an existing constraint on the EMPLOYEES table to activate a new constraint while preventing the creation of a PRIMARY KEY index to activate the previously disabled constraint on the EMPLOYEE_ID column while creating a PRIMARY KEY index (*)

Correct

Correct

39. You disabled the EMPLOYEE_ID_PK PRIMARY KEY constraint on the ID column in the EMPLOYEES table and imported 100 records. You need to enable the constraint and verify that the new and existing ID column values do not violate the PRIMARY KEY constraint. Evaluate this statement: ALTER TABLE employees ENABLE employee_id_pk; Which statement is true? Mark for Review (1) Points The statement will achieve the desired result. The statement will execute, but will ensure that the new ID values are unique. The statement will execute, but will not verify that the existing values are unique. The statement will NOT execute because it contains a syntax error. (*)

Incorrect

Incorrect. Refer to Section 9

40. What is the syntax for removing a PRIMARY KEY constraint and all its dependent constraints? Mark for Review (1) Points ALTER TABLE table_name DROP CONSTRAINT constraint_name CASCADE; (*) ALTER TABLE table_name DROP CONSTRAINT FOREIGN KEY CASCADE;

DROP CONSTRAINT table_name (constraint_name);

ALTER TABLE table_name DROP CONSTRAINT constraint_name; Section 9 Lesson 3 41.

Evaluate this statement:

ALTER TABLE employees ADD CONSTRAINT employee_id PRIMARY KEY; Which result will the statement provide? Mark for Review (1) Points A syntax error will be returned. (*) A constraint will be added to the EMPLOYEES table. An existing constraint on the EMPLOYEES table will be overwritten. An existing constraint on the EMPLOYEES table will be enabled.

Correct

Correct

42. You need to remove the EMP_FK_DEPT constraint from the EMPLOYEES table in your schema. Which statement should you use? Mark for Review (1) Points DROP CONSTRAINT EMP_FK_DEPT FROM employees; DELETE CONSTRAINT EMP_FK_DEPT FROM employees; ALTER TABLE employees DROP CONSTRAINT EMP_FK_DEPT; (*) ALTER TABLE employees REMOVE CONSTRAINT EMP_FK_DEPT;

Incorrect

Incorrect. Refer to Section 9

43.

This SQL command will do what?

ALTER TABLE employees ADD CONSTRAINT emp_manager_fk FOREIGN KEY(manager_id) REFERENCES employees(employee_id); Mark for Review (1) Points Alter the table employees and disable the emp_manager_fk constraint. Add a FOREIGN KEY constraint to the EMPLOYEES table indicating that a manager must already be an employee. (*) Add a FOREIGN KEY constraint to the EMPLOYEES table restricting manager ID to match every employee ID. Alter table employees and add a FOREIGN KEY constraint that indicates each employee ID must be unique.

Correct

Correct

44. You want to disable the FOREIGN KEY constraint that is defined in the EMPLOYEES table on the DEPARTMENT_ID column. The constraint is referenced by the name FK_DEPT_ID_01. Which statement should you issue? Mark for Review (1) Points ALTER TABLE employees DISABLE 'fk_dept_id_01'; ALTER TABLE employees DISABLE CONSTRAINT 'fk_dept_id_01'; ALTER TABLE employees DISABLE fk_dept_id_01; ALTER TABLE employees DISABLE CONSTRAINT fk_dept_id_01; (*)

Incorrect

Incorrect. Refer to Section 9

45. What actions can be performed on or with Constraints? Mark for Review

(1) Points Add, Drop, Enable, Disable, Cascade (*) Add, Minus, Enable, Disable, Collapse Add, Subtract, Enable, Cascade Add, Drop, Disable, Disregard

Correct

Correct

46. Which statement should you use to add a FOREIGN KEY constraint to the DEPARTMENT_ID column in the EMPLOYEES table to refer to the DEPARTMENT_ID column in the DEPARTMENTS table? Mark for Review (1) Points ALTER TABLE employees MODIFY COLUMN dept_id_fk FOREIGN KEY (department_id) REFERENCES departments(department_id);

ALTER TABLE employees ADD CONSTRAINT dept_id_fk FOREIGN KEY (department_id) REFERENCES departments(department_id); (*) ALTER TABLE employees ADD FOREIGN KEY CONSTRAINT dept_id_fk ON (department_id) REFERENCES departments(department_id);

ALTER TABLE employees ADD FOREIGN KEY departments(department_id) REFERENCES (department_id);

Correct

Correct

47. You need to add a NOT NULL constraint to the EMAIL column in the EMPLOYEES table. Which clause should you use? Mark for Review (1) Points ADD CHANGE MODIFY (*) ENABLE

Incorrect

Incorrect. Refer to Section 9

Section 10 Lesson 1 48. You need to create a view on the SALES table, but the SALES table has not yet been created. Which statement is true? Mark for Review (1) Points You must create the SALES table before creating the view. By default, the view will be created even if the SALES table does not exist. You can create the table and the view at the same time using the FORCE option. You can use the FORCE option to create the view before the SALES table has been created. (*)

Incorrect

Incorrect. Refer to Section 10

49. You need to create a view that when queried will display the name, employee identification number, first and last name, salary, and department identification number. When queried, the display should be sorted by salary from lowest to highest, then by last name and first name

alphabetically. The view definition should be created regardless of the existence of the EMPLOYEES table. No DML may be performed when using this view. Evaluate these statements: CREATE OR REPLACE NOFORCE VIEW EMP_SALARY_V AS SELECT employee_id, last_name, first_name, salary, department_id FROM employees WITH READ ONLY; SELECT * FROM emp_salary_v ORDER BY salary, last_name, first_name; Which statement is true? Mark for Review (1) Points When both statements are executed all of the desired results are achieved. The CREATE VIEW statement will fail if the EMPLOYEES table does not exist. (*) The statements will NOT return all of the desired results because the WITH CHECK OPTION clause is NOT included in the CREATE VIEW statement. To achieve all of the desired results this ORDER ON clause should be added to the CREATE VIEW statement: 'ORDER ON salary, last_name, first_name'.

Correct

Correct

50. Which of the following keywords cannot be used when creating a view? Mark for Review (1) Points HAVING WHERE ORDER BY They are all valid keywords when creating views. (*)

Section 10 Lesson 1 51. In order to query a database using a view, which of the following statements applies? Mark for Review (1) Points Use special VIEWSELECT Keyword You can retrieve data from a view as you would from any table. (*) You can never see all the rows in the table through the view. The tables you are selecting from can be empty, yet the view still returns the original data from those tables.

Correct

Correct

52. A view can be used to keep a history record of old data from the underlying tables, so even if a row is deleted from a table, you can still select the row through the view. True or False? Mark for Review (1) Points True False (*)

Incorrect

Incorrect. Refer to Section 10

53. You administer an Oracle database, which contains a table named EMPLOYEES. Luke, a database user, must create a report that includes the names and addresses of all employees. You do not want to grant Luke access to the EMPLOYEES table because it contains sensitive data. Which of the following actions should you perform first? Mark for Review (1) Points Create the report for him. Create a view. (*)

Create a subquery. Create an index.

Incorrect

Incorrect. Refer to Section 10 54.

Evaluate this view definition:

CREATE OR REPLACE VIEW part_name_v AS SELECT DISTINCT part_name FROM parts WHERE cost >= 45; Which of the following statements using the PART_NAME_V view will execute successfully? Mark for Review (1) Points SELECT * FROM part_name_v; (*) UPDATE part_name_v SET cost = cost * 1.23 WHERE part_id = 56990;

DELETE FROM part_name_v WHERE part_id = 56897;

INSERT INTO part_name_v (part_id, part_name, product_id, cost) VALUES (857986, 'cylinder', 8790, 3.45);

Incorrect

Incorrect. Refer to Section 10 55.

for Review (1) Points

Which statement would you use to alter a view?

Mark

ALTER VIEW MODIFY VIEW ALTER TABLE CREATE OR REPLACE VIEW (*)

Correct

Correct

Section 10 Lesson 2 56. Which of the following is TRUE regarding simple views? Mark for Review (1) Points They derive data from many tables, so they typically contain joins. They contain functions or groups of data They can perform DML operations through the view (*) They are not stored in the Data Dictionary

Correct

Correct

57. What is the purpose of including the WITH CHECK OPTION clause when creating a view? Mark for Review (1) Points To make sure that the parent table(s) actually exist To keep views from being queried by unauthorized persons To make sure that data is not duplicated in the view

To make sure no rows are updated through the view that will hinder those rows from being returned by the view. (*)

Correct

Correct

58. Which action can be performed by using DML statements? Mark for Review (1) Points Deleting records in a table (*) Creating PRIMARY KEY constraints Disabling an index Altering a table

Incorrect

Incorrect. Refer to Section 10

59. You can create a view if the view subquery contains an inline view. True or False? Mark for Review (1) Points True (*) False

Correct

Correct

60. Your manager has just asked you to create a report that illustrates the salary range of all the employees at your company. Which of the following SQL statements will create a view called SALARY_VU based on the employee last names, department names, salaries, and salary grades for all employees? Use the EMPLOYEES, DEPARTMENTS, and JOB_GRADES tables. Label the columns Employee, Department, Salary, and Grade, respectively. Mark for Review (1) Points

CREATE OR REPLACE VIEW salary_vu AS SELECT e.last_name "Employee", d.department_name "Department", e.salary "Salary", j.grade_level "Grade" FROM employees e, departments d, job_grades WHERE e.department_id equals d.department_id AND e.salary BETWEEN j.lowest_sal and j.highest_sal;

CREATE OR REPLACE VIEW salary_vu AS SELECT e.empid "Employee", d.department_name "Department", e.salary "Salary", j.grade_level "Grade" FROM employees e, departments d, job_grades j WHERE e.department_id = d.department_id NOT e.salary BETWEEN j.lowest_sal and j.highest_sal;

CREATE OR REPLACE VIEW salary_vu AS SELECT e.last_name "Employee", d.department_name "Department", e.salary "Salary", j.grade_level "Grade" FROM employees e, departments d, job_grades j WHERE e.department_id = d.department_id AND e.salary BETWEEN j.lowest_sal and j.highest_sal; (*) CREATE OR REPLACE VIEW salary_vu FROM (SELECT e.last_name "Employee", d.department_name "Department", e.salary "Salary", j.grade_level "Grade" FROM employees emp, departments d, job grades j WHERE e.department_id = d.department_id AND e.salary BETWEEN j.lowest_sal and j.highest_sal); Section 10 Lesson 2 61. Which option would you use when creating a view to ensure that no DML operations occur on the view? Mark for Review (1) Points FORCE NOFORCE WITH READ ONLY (*) WITH ADMIN OPTION

Correct

Correct

62. view is true? (1) Points

Which statement about performing DML operations on a Mark for Review

You can perform DML operations on simple views. (*) You cannot perform DML operations on a view that contains the WITH CHECK OPTION clause. You can perform DML operations on a view that contains the WITH READ ONLY option. You can perform DML operations on a view that contains columns defined by expressions, such as COST + 1.

Correct

Correct

Section 10 Lesson 3 63.

The CUSTOMER_FINANCE table contains these columns:

CUSTOMER_ID NUMBER(9) NEW_BALANCE NUMBER(7,2) PREV_BALANCE NUMBER(7,2) PAYMENTS NUMBER(7,2) FINANCE_CHARGE NUMBER(7,2) CREDIT_LIMIT NUMBER(7) You execute this statement: SELECT ROWNUM "Rank", customer_id, new_balancev FROM (SELECT customer_id, new_balance FROM customer_finance) WHERE ROWNUM <= 25 ORDER BY new_balance DESC; What statement is true? Mark for Review (1) Points

The statement failed to execute because an inline view was used. The statement will not necessarily return the 25 highest new balance values, as the inline view has no ORDER BY. (*) The 25 greatest new balance values were displayed from the highest to the lowest. The statement failed to execute because the ORDER BY does NOT use the Top-n column.

Correct

Correct 64.

The CUSTOMER_FINANCE table contains these columns:

CUSTOMER_ID NUMBER(9) NEW_BALANCE NUMBER(7,2) PREV_BALANCE NUMBER(7,2) PAYMENTS NUMBER(7,2) FINANCE_CHARGE NUMBER(7,2) CREDIT_LIMIT NUMBER(7) You created a Top-n query report that displays the account numbers and new balance of the 800 accounts that have the highest new balance value. The results are sorted by payments value from highest to lowest. Which SELECT statement clause is included in your query? Mark for Review (1) Points inner query: ORDER BY new_balance DESC (*) inner query: WHERE ROWNUM = 800 outer query: ORDER BY new_balance DESC inner query: SELECT customer_id, new_balance ROWNUM

Correct

Correct 65.

The EMPLOYEES table contains these columns:

EMPLOYEE_ID NUMBER LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25) DEPARTMENT_ID NUMBER JOB_ID NUMBER MANAGER_ID NUMBER SALARY NUMBER(9,2) COMMISSOIN NUMBER(7,2) HIRE_DATE DATE Which SELECT statement could be used to display the 10 lowest paid clerks that belong to department 70? Mark for Review (1) Points SELECT ROWNUM "Ranking", last_name||' ,'||first_name "Employee", salary "Salary" FROM (SELECT last_name, first_name, salary FROM employees ORDER BY salary) WHERE ROWNUM <=10 AND job_id LIKE 'CLERK' AND department_id = 70;

SELECT ROWNUM "Ranking",last_name||','||first_name "Employee", salary "Salary" FROM (SELECT last_name, first_name, salary, job_id FROM employees WHERE job_id LIKE 'CLERK' AND department_id = 70 ORDER BY salary) WHERE ROWNUM <=10; (*) SELECT ROWNUM "Ranking", last_name||' ,'||first_name "Employee", salary "Salary" FROM (SELECT last_name, first_name, salary,job_id,dept_id FROM employees WHERE ROWNUM <=10 ORDER BY salary) WHERE job_id LIKE 'CLERK' AND department_id = 70;

The only way is to use the data dictionary.

Incorrect

Incorrect. Refer to Section 10

66. You want to create a view based on the SALESREP table. You plan to grant access to this view to members of the Sales department. You want Sales employees to be able to update the SALESREP table through the view, which you plan to name SALESREP_VIEW. What should not be specified in your CREATE VIEW statement? Mark for Review (1) Points the AS keyword a WHERE clause the IN keyword a GROUP BY clause (*)

Incorrect

Incorrect. Refer to Section 10 67.

Which of the following describes a top-N query?

Mark

for Review (1) Points A top-N query returns the bottom 15 records from the specified table. A top-N query returns the top 15 records from the specified table. A top-N query returns a result set that is sorted according to the specified column values. A top-N query returns a limited result set, returning data based on highest or lowest criteria. (*)

Correct

Correct

Section 11 Lesson 2

68. Which statement would you use to remove the EMP_ID_SEQ sequence? Mark for Review (1) Points DELETE SEQUENCE emp_id_seq; DROP SEQUENCE emp_id_seq; (*) ALTER SEQUENCE emp_id_seq …; REMOVE SEQUENCE emp_id_seq;

Incorrect

Incorrect. Refer to Section 11 69.

a sequence? (1) Points

Which pseudocolumn returns the latest value supplied by Mark for Review

NEXTVAL CURRVAL (*) CURRENT NEXT

Correct

Correct

70. Which statement would you use to modify the EMP_ID_SEQ sequence used to populate the EMPLOYEE_ID column in the EMPLOYEES table? Mark for Review (1) Points ALTER SEQUENCE emp_id_seq.employee_id …; CREATE SEQUENCE emp_id_seq …;

ALTER TABLE employees …; ALTER SEQUENCE emp_id_seq …; (*) Section 11 Lesson 2 71. You need to retrieve the next available value for the SALES_IDX sequence. Which would you include in your SQL statement? Mark for Review (1) Points sales_idx sales_idx.NEXT sales_idx.NEXTVAL (*) sales_idx.CURRVAL

Correct

Correct

72. Creating a sequence with NOCACHE ensures that all numbers in the sequence's range will be used successfully. True or False? Mark for Review (1) Points True False (*)

Incorrect

Incorrect. Refer to Section 11

Section 11 Lesson 3 73. You need to determine the table name and column name(s) on which the SALES_IDX index is defined. Which data dictionary view would you query? Mark for Review (1) Points

USER_INDEXES USER_TABLES USER_OBJECTS USER_IND_COLUMNS (*)

Incorrect

Incorrect. Refer to Section 11 74.

As user Julie, you issue this statement: CREATE SYNONYM emp FOR sam.employees; Which task was accomplished by this statement? Mark for Review (1) Points You created user Sam. You created that you own. You created owned by user Sam. You created owned by user Sam. (*) Correct

a public synonym on the EMP table owned by a private synonym on the EMPLOYEES table a public synonym on the EMPLOYEES table a private synonym on the EMPLOYEES table

Correct

75. The CUSTOMERS table exists in user Mary's schema. Which statement should you use to create a synonym for all database users on the CUSTOMERS table? Mark for Review (1) Points CREATE PUBLIC SYNONYM cust ON mary.customers;

CREATE PUBLIC SYNONYM cust FOR mary.customers; (*)

CREATE SYNONYM cust ON mary.customers FOR PUBLIC;

CREATE SYNONYM cust ON mary.customers; GRANT SELECT ON cust TO PUBLIC;

Incorrect

Incorrect. Refer to Section 11

76. Which statement would you use to remove the LAST_NAME_IDX index on the LAST_NAME column of the EMPLOYEES table? Mark for Review (1) Points DROP INDEX last_name_idx; (*) DROP INDEX last_name_idx(last_name); DROP INDEX last_name_idx(employees.last_name); ALTER TABLE employees DROP INDEX last_name_idx;

Correct

Correct 77.

The EMPLOYEES table contains these columns:

EMPLOYEE_ID NUMBER NOT NULL, Primary Key LAST_NAME VARCHAR2 (20) FIRST_NAME VARCHAR2 (20) DEPARTMENT_ID NUMBER Foreign Key to PRODUCT_ID column of the PRODUCT table HIRE_DATE DATE DEFAULT SYSDATE SALARY NUMBER (8,2) NOT NULL On which column is an index automatically created for the EMPLOYEES table? Mark for Review (1) Points SALARY

LAST_NAME HIRE_DATE EMPLOYEE_ID (*) DEPARTMENT_ID

Correct

for Review (1) Points

Correct 78.

What is the correct syntax for creating an index?

Mark

CREATE INDEX index_name ON table_name(column_name); (*) CREATE INDEX on table_name(column_name); CREATE index_name INDEX ON table_name.column_name; CREATE OR REPLACE INDEX index_name ON table_name(column_name);

Incorrect

Incorrect. Refer to Section 11

79. User Mary's schema contains an EMPLOYEES table. Mary has Database Administrator privileges and executes the following statement: CREATE PUBLIC SYNONYM employees FOR mary.employees; User Susan now needs to SELECT from Mary's EMPLOYEES table. Which of the following SQL statements can she use? (Choose two) Mark for Review (1) Points (Choose all correct answers) CREATE SYNONYM marys_employees FOR mary(employees);

SELECT * FROM employees; (*) SELECT * FROM employees.mary; SELECT * FROM mary.employees; (*)

Correct

Correct 80.

Evaluate this statement:

CREATE PUBLIC SYNONYM testing FOR chan.testing; Which task will this statement accomplish? Mark for Review (1) Points It recreates the synonym if it already exists. It forces all users to access TESTING using the synonym. It allows only the user CHAN to access TESTING using the synonym. It eliminates the need for all users to qualify TESTING with its schema. (*) Section 11 Lesson 3 81.

The CLIENTS table contains these columns:

CLIENT_ID NUMBER(4) NOT NULL PRIMARY KEY LAST_NAME VARCHAR2(15) FIRST_NAME VARCHAR2(10) CITY VARCHAR2(15) STATE VARCHAR2(2) You want to create an index named ADDRESS_INDEX on the CITY and STATE columns of the CLIENTS table. You issue this statement: CREATE INDEX clients ON address_index (city, state); Which result does this statement accomplish? Mark for Review (1) Points

An index named ADDRESS_INDEX is created on the CITY and STATE columns. An index named CLIENTS is created on the CITY and STATE columns. An index named CLIENTS_INDEX is created on the CLIENTS table. An error message is produced, and no index is created. (*)

Correct

Correct 82.

The EMPLOYEES table contains these columns:

EMPLOYEE_ID NOT NULL, Primary Key SOCIAL_SECURITY_NUMBER NOT NULL, Unique LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25) DEPARTMENT_ID NUMBER Foreign Key to DEPARTMENT_ID column of the DEPARTMENTS table SALARY NUMBER(8,2) You execute this statement: CREATE INDEX emp_name_idx ON employees(last_name, first_name); Which statement is true? Mark for Review (1) Points The statement creates a function-based index. The statement fails because of a syntax error. The statement creates a composite unique index. The statement creates a composite non-unique index. (*)

Correct

Correct

83.

Evaluate this statement:

CREATE INDEX sales_idx ON oe.sales (status); Which statement is true? Mark for Review (1) Points The CREATE INDEX creates a function-based index. The CREATE INDEX statement creates a nonunique index. (*) The CREATE INDEX statement creates a unique index. The CREATE INDEX statement fails because of a syntax error.

Correct

Correct

84. Which of the following best describes the function of an index? Mark for Review (1) Points An index can increase the performance of SQL queries that search large tables. (*) An index can reduce the time required to grant multiple privileges to users. An index can run statement blocks when DML actions occur against a table. An index can prevent users from viewing certain data in a table.

Correct

Correct 85.

You want to speed up the following query by creating an

index: SELECT * FROM employees WHERE (salary * 12) > 100000;

Which of the following will achieve this? Mark for Review (1) Points Create a composite index on (salary,12). Create a function-based index on (salary * 12). (*) Create an index on (salary). Create a function_based index on ((salary * 12) > 100000).

Incorrect

Incorrect. Refer to Section 11

Section 12 Lesson 2 86. You grant user AMY the CREATE SESSION privilege. Which type of privilege have you granted to AMY? Mark for Review (1) Points A system privilege (*) An object privilege A user privilege An access privilege

Correct

Correct

87. You are the database administrator. You want to create a new user JONES with a password of MARK, and allow this user to create his own tables. Which of the following should you execute? Mark for Review (1) Points CREATE USER jones IDENTIFIED BY mark; GRANT CREATE TABLE TO jones;

CREATE USER jones IDENTIFIED BY mark; GRANT CREATE SESSION TO jones; GRANT CREATE TABLE TO jones; (*) GRANT CREATE SESSION TO jones; GRANT CREATE TABLE TO jones;

CREATE USER jones IDENTIFIED BY mark; GRANT CREATE SESSION TO jones;

Incorrect

Incorrect. Refer to Section 12

88. Which of the following are object privileges? (Choose two) Mark for Review (1) Points (Choose all correct answers) SELECT (*) DROP TABLE CREATE TABLE INSERT (*)

Correct

Correct

89. User SUSAN creates an EMPLOYEES table, and then creates a view EMP_VIEW which shows only the FIRST_NAME and LAST_NAME columns of EMPLOYEES. User RUDI needs to be able to access employees' names but no other data from EMPLOYEES. Which statement should SUSAN execute to allow this? Mark for Review (1) Points SELECT * FROM emp_view FOR rudi;

CREATE SYNONYM emp_view FOR employees; GRANT SELECT ON emp_view TO rudi; (*) GRANT SELECT ON emp_view ONLY TO rudi;

Correct 90. Evaluate this statement: ALTER USER bob IDENTIFIED BY jim; Which statement about the result of executing this statement is true? Mark for Review (1) Points A new password is assign to user BOB. (*) A new user JIM is created from user BOB's profile. The user BOB is assigned the same privileges as user JIM. The user BOB is renamed and is accessible as user JIM. Section 12 Lesson 2 91. You want to grant user BOB the ability to change other users' passwords. Which privilege should you grant to BOB? Mark for Review (1) Points The ALTER USER privilege (*) The CREATE USER privilege The DROP USER privilege The CREATE PROFILE privilege

Correct

Correct

92. The database administrator wants to allow user Marco to create new tables in his own schema. Which privilege should be granted to Marco? Mark for Review (1) Points CREATE ANY TABLE SELECT CREATE TABLE (*) CREATE OBJECT

Correct

Correct

Section 12 Lesson 3 93. Which of the following best describes the purpose of the REFERENCES object privilege on a table? Mark for Review (1) Points It allows a user's session to read from the table but only so that foreign key constraints can be checked. (*) It allows a user to refer to the table in a SELECT statement. It allows a user to create foreign key constraints on the table. It allows the user to create new tables which contain the same data as the referenced table.

Incorrect

Incorrect. Refer to Section 12

94. Which keyword would you use to grant an object privilege to all database users? Mark for Review (1) Points

ADMIN ALL PUBLIC (*) USERS

Correct

Correct

95. Which statement would you use to give a role to users? Mark for Review (1) Points GRANT (*) ALTER USER CREATE USER ASSIGN

Incorrect

Incorrect. Refer to Section 12 96.

privileges? (1) Points an index a view a trigger a role (*)

Which of the following simplifies the administration of Mark for Review

Correct

Correct

97. Which data dictionary view shows which system privileges have been granted to a user? Mark for Review (1) Points USER_TAB_PRIVS USER_SYS_PRIVS (*) USER_SYSTEM_PRIVS USER_SYSTEM_PRIVILEGES

Correct

Correct

98. Which statement would you use to add privileges to a role? Mark for Review (1) Points CREATE ROLE ALTER ROLE GRANT (*) ASSIGN

Correct

Correct

Section 14 Lesson 1 99. Which SQL statement is used to remove all the changes made by an uncommitted transaction? Mark for Review (1) Points

UNDO; ROLLBACK; (*) ROLLBACK TO SAVEPOINT; REVOKE …;

Correct

Correct

100. consistency"? (1) Points

Which of the following best describes the term "read Mark for Review

It ensures that all changes to a table are automatically committed It prevents other users from querying a table while updates are being executed on it It prevents other users from seeing changes to a table until those changes have been committed (*) It prevents users from querying tables on which they have not been granted SELECT privilege

1.  Which SQL function can be used to remove heading or trailing characters (or both) from a character  string?  Mark for Review   (1) Points               LPAD           CUT           NVL2           TRIM (*)                     Correct               2.  Which three statements about functions are true? (Choose three.)  Mark for Review   (1) Points              (Choose all correct answers)     

 

            The SYSDATE function returns the Oracle Server date and time. (*)      

    The ROUND number function rounds a value to a specified decimal place or the nearest whole  number. (*)           The CONCAT function can only be used on character strings, not on numbers.           The SUBSTR character function returns a portion of a string beginning at a defined character position  to a specified length. (*)                     Correct         You query the database with this SQL statement:     SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID"  FROM employee;      In which order are the functions evaluated?    Mark for Review   (1) Points               LOWER, SUBSTR, CONCAT           LOWER, CONCAT, SUBSTR           SUBSTR, CONCAT, LOWER  

        CONCAT, SUBSTR, LOWER (*)                     Correct        4.  The STYLES table contains this data:    STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL 85940  11.00    758960  SANDAL  86979 11.00        You query the database and return the value 40. Which script did you use?    Mark for Review   (1) Points               SELECT INSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;  

           SELECT INSTR(category, ‐2,2)   FROM styles   WHERE style_id = 895840;              SELECT SUBSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;  (*)             SELECT SUBSTR(category, ‐2,2)   FROM styles   WHERE style_id = 758960;                       Correct         You issue this SQL statement:     SELECT INSTR ('organizational sales', 'al')   FROM dual;  

    Which value is returned by this command?    Mark for Review   (1) Points               1           2           13 (*)           17                     Correct       6.  You need to display the number of characters in each customer's last name. Which function should  you use?  Mark for Review   (1) Points               LENGTH (*)           LPAD           COUNT  

        SUBSTR                     Correct                7.  What will the following SQL statemtent display?     SELECT last_name, LPAD(salary, 15, '$')SALARY   FROM employees;       Mark for Review   (1) Points               The last name of employees that have a salary that includes a $ in the value, size of 15 and the column  labeled SALARY.           The last name and the format of the salary limited to 15 digits to the left of the decimal and the  column labeled SALARY.           The last name and salary for all employees with the format of the salary 15 characters long, left‐ padded with the $ and the column labeled SALARY. (*)           The query will result in an error: "ORA‐00923: FROM keyword not found where expected."      

              Correct       .  You issue this SQL statement:    SELECT ROUND (1282.248, ‐2)   FROM dual;      What value does this statement produce?    Mark for Review   (1) Points               1200           1282           1282.25           1300 (*)                     Correct        9.  Evaluate this function: MOD (25, 2) Which value is returned?  Mark for Review  

(1) Points               1 (*)           2           25           0                     Correct        10.  Which comparison operator retrieves a list of values?  Mark for Review   (1) Points               IN (*)           LIKE           BETWEEN...IN...           IS NULL              

      Incorrect. Refer to Section 1 Lesson 1        11.  Which function would you use to return the current database server date and time?  Mark for  Review   (1) Points               DATE           SYSDATE (*)           DATETIME           CURRENTDATE                     Correct        12.  You need to display the number of months between today's date and each employee's hiredate.  Which function should you use?  Mark for Review   (1) Points               ROUND           BETWEEN           ADD_MONTHS  

        MONTHS_BETWEEN (*)                     Correct        13.  You need to subtract three months from the current date. Which function should you use?  Mark  for Review   (1) Points               ROUND           TO_DATE           ADD_MONTHS (*)           MONTHS_BETWEEN                     Incorrect. Refer to Section 1               14.  Which of the following Date Functions will add calendar months to a date?  Mark for Review   (1) Points               Months + Calendar (Month)  

        ADD_MONTHS (*)           MONTHS + Date           NEXT_MONTH                     Correct        15.  Evaluate this SELECT statement:    SELECT SYSDATE + 30  FROM dual;      Which value is returned by the query?    Mark for Review   (1) Points               the current date plus 30 hours           the current date plus 30 days (*)           the current date plus 30 months  

        No value is returned because the SELECT statement generates an error.                     Incorrect. Refer to Section 1       16.  Which SQL Statement should you use to display the prices in this format: "$00.30"?  Mark for  Review   (1) Points               SELECT TO_CHAR(price, '$99,900.99') FROM product; (*)           SELECT TO_CHAR(price, "$99,900.99") FROM product;           SELECT TO_CHAR(price, '$99,990.99') FROM product;           SELECT TO_NUMBER(price, '$99,900.99') FROM product;                     Correct        17.  All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a  report that displays each employee's name and salary. Each employee's salary must be displayed in the  following format: $000,000.00. Which function should you include in a SELECT statement to achieve the  desired result?  Mark for Review   (1) Points          

    TO_CHAR (*)           TO_DATE           TO_NUMBER           CHARTOROWID                     Incorrect. Refer to Section 2        18.  The EMPLOYEES table contains these columns:     EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2 (25)   FIRST_NAME VARCHAR2 (25)   HIRE_DATE DATE       You need to display HIRE_DATE values in this format:       January 28, 2000     Which SELECT statement could you use?  

 Mark for Review   (1) Points               SELECT TO_CHAR(hire_date, Month DD, YYYY)  FROM employees;              SELECT TO_CHAR(hire_date, 'Month DD, YYYY')   FROM employees;  (*)             SELECT hire_date(TO_CHAR 'Month DD', ' YYYY')  FROM employees;             SELECT TO_CHAR(hire_date, 'Month DD', ' YYYY')   FROM employees;                       Incorrect. Refer to Section 2       19.  Which two statements concerning SQL functions are true? (Choose two.)  Mark for Review   (1) Points  

           (Choose all correct answers)                Character functions can accept numeric input.           Not all date functions return date values. (*)           Number functions can return number or character values.           Conversion functions convert a value from one data type to another data type. (*)           Single‐row functions manipulate groups of rows to return one result per group of rows.                     Incorrect. Refer to Section 2                20.  The EMPLOYEES table contains these columns:     EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2 (25)   FIRST_NAME VARCHAR2 (25)   SALARY NUMBER(6)      

You need to create a report to display the salaries of all employees. Which script should you use to  display the salaries in format: "$45,000.00"?    Mark for Review   (1) Points               SELECT TO_CHAR(salary, '$999,999')   FROM employees;             SELECT TO_NUM(salary, '$999,990.99')   FROM employees;             SELECT TO_NUM(salary, '$999,999.00')   FROM employees;             SELECT TO_CHAR(salary, '$999,999.00')  FROM employees;  (*)                       Incorrect. Refer to Section 2      

21.  If you use the RR format when writing a query using the date 27‐OCT‐17 and the year is 2001, what  year would be the result?  Mark for Review   (1) Points               2001           1901           2017 (*)           1917                     Correct         22.  Which of the following General Functions will return the first non‐null expression in the expression  list?  Mark for Review   (1) Points               NVL           NVL2           NULLIF           COALESCE (*)  

                  Correct       23.  When executed, which statement displays a zero if the TUITION_BALANCE value is zero and the  HOUSING_BALANCE value is null?  Mark for Review   (1) Points               SELECT NVL (tuition_balance + housing_balance, 0) "Balance Due"   FROM student_accounts;   (*)             SELECT NVL(tuition_balance, 0), NVL (housing_balance), tuition_balance + housing_balance "Balance  Due"   FROM student_accounts;             SELECT tuition_balance + housing_balance   FROM student_accounts;             SELECT TO_NUMBER(tuition_balance, 0), TO_NUMBER (housing_balance, 0), tutition_balance +  housing_balance "Balance Due"   FROM student_accounts;        

              Incorrect. Refer to Section 2               24.  Which statement about group functions is true?  Mark for Review   (1) Points               NVL and NVL2, but not COALESCE, can be used with group functions to replace null values.           NVL and COALESCE, but not NVL2, can be used with group functions to replace null values.           NVL, NVL2, and COALESCE can be used with group functions to replace null values. (*)           COALESCE, but not NVL and NVL2, can be used with group functions to replace null values.                     Correct       25.  When joining 3 tables in a SELECT statement, how many join conditions are needed in the WHERE  clause?  Mark for Review   (1) Points               0           1      

    2 (*)           3                     Correct        26.  You need to create a report that lists all employees in the Sales department who do not earn  $25,000 per year. Which query should you issue to accomplish this task?  Mark for Review   (1) Points               SELECT last_name, first_name, salary   FROM employees   WHERE salary > 25000 AND dept_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary = 25000 AND dept_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary <= 25000 AND dept_id = 10;        

    SELECT last_name, first_name, salary   FROM employees   WHERE salary != 25000 AND dept_id = 10;  (*)                       Correct       27.  The CUSTOMERS and SALES tables contain these columns:   CUSTOMERS   CUST_ID NUMBER(10) PRIMARY KEY   COMPANY VARCHAR2(30)   LOCATION VARCHAR2(20)     SALES   SALES_ID NUMBER(5) PRIMARY KEY   CUST_ID NUMBER(10) FOREIGN KEY   TOTAL_SALES NUMBER(30)     Which SELECT statement will return the customer ID, the company and the total sales?     Mark for Review   (1) Points          

    SELECT c.cust_id, c.company, s.total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id (+);             SELECT cust_id, company, total_sales   FROM customers, sales   WHERE cust_id = cust_id;             SELECT c.cust_id, c.company, s.total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id;  (*)             SELECT cust_id, company, total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id;                       Correct        28.  Your have two tables named EMPLOYEES and SALES. You want to identify the sales representatives  who have generated at least $100,000 in revenue.  

Which query should you issue?  Mark for Review   (1) Points               SELECT e.fname, e.lname, s.sales   FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue > 100000;             SELECT e.fname, e.lname, s.sales   FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue >= 100000;  (*)             SELECT e.fname, e.lname, s.sales   FROM employees, sales   WHERE e.emp_id = s.emp_id AND revenue >= 100000;             SELECT fname, lname, sales   Q FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue > 100000;                

      Correct        29.  What happens when you create a Cartesian product?  Mark for Review   (1) Points               All rows from one table are joined to all rows of another table (*)           The table is joined to itself, one column to the next column, exhausting all possibilities           The table is joined to another equal table           All rows that do not match in the WHERE clause are displayed                     Incorrect. Refer to Section       30.  Which statement about the join syntax of a SELECT statement is true?  Mark for Review   (1) Points               The ON keyword must be included.           The JOIN keyword must be included.           The FROM clause represents the join criteria.      

    The WHERE clause represents the join criteria. (*)                     Incorrect. Refer to Section 3        31.  Which statement about outer joins is true?  Mark for Review   (1) Points               The tables must be aliased.           The FULL, RIGHT, or LEFT keyword must be included.           The OR operator cannot be used to link outer join conditions. (*)           Outer joins are always evaluated before other types of joins in the query.                     Correct        32.  Evaluate this SELECT statement:   SELECT p.player_id, m.last_name, m.first_name, t.team_name   FROM player p   LEFT OUTER JOIN player m ON (p.manager_id = m.player_id)   LEFT OUTER JOIN team t ON (p.team_id = t.team_id);    

Which join is evaluated first?    Mark for Review   (1) Points               the self‐join of the player table (*)           the join between the player table and the team table on TEAM_ID           the join between the player table and the team table on MANAGER_ID           the join between the player table and the team table on PLAYER_ID                     Correct       33.  Which two operators can be used in an outer join condition using the outer join operator (+)?  Mark  for Review   (1) Points               AND and = (*)           OR and =           BETWEEN...AND... and IN           IN and =  

                  Incorrect. Refer to Section 3        34.  Which statement about a natural join is true?  Mark for Review   (1) Points               Columns with the same names must have identical data types.           Columns with the same names must have the same precision and datatype. (*)           Columns with the same names must have compatible data types.           Columns with the same names cannot be included in the SELECT list of the query.                     Incorrect. Refer to Section 4        35.  You need to join all the rows in the EMPLOYEE table to all the rows in the EMP_REFERENCE table.  Which type of join should you create?  Mark for Review   (1) Points               An equijoin           A cross join (*)      

    An inner join           A full outer join                     Incorrect. Refer to Section 4       36.  Which of the following best describes a natural join?  Mark for Review   (1) Points               A join between two tables that includes columns that share the same name, datatypes and lengths (*)           A join that produces a Cartesian product           A join between tables where matching fields do not exist           A join that uses only one table                     Correct                37.  Which SELECT clause creates an equijoin by specifying a column name common to both tables?   Mark for Review   (1) Points          

    A HAVING clause           The FROM clause           The SELECT clause           A USING clause (*)                     Correct        38.  Which of the following statements is the simplest description of a nonequijoin?  Mark for Review   (1) Points               A join condition containing something other than an equality operator (*)           A join condition that is not equal to other joins.           A join condition that includes the (+) on the left hand side.           A join that joins a table to itself                     Incorrect. Refer to Section 4     

 39.  You created the CUSTOMERS and ORDERS tables by issuing these CREATE TABLE statements in  sequence:   CREATE TABLE customers   (custid varchar2(5),   companyname varchar2(30),   contactname varchar2(30),   address varchar2(30),   city varchar2(20),   state varchar2(30),   phone varchar2(20),   constraint pk_customers_01 primary key (custid));     CREATE TABLE orders   (orderid varchar2(5) constraint pk_orders_01 primary key,   orderdate date,   total number(15),   custid varchar2(5) references customers (custid));     You have been instructed to compile a report to present the information about orders placed by  customers who reside in Nashville . Which query should you issue to achieve the desired results?    Mark for Review   (1) Points               SELECT custid, companyname   FROM customers   WHERE city = 'Nashville';  

           SELECT orderid, orderdate, total   FROM orders o   NATURAL JOIN customers c ON o.custid = c.custid   WHERE city = 'Nashville';              SELECT orderid, orderdate, total   FROM orders o   JOIN customers c ON o.custid = c.custid   WHERE city = 'Nashville';   (*)             SELECT orderid, orderdate, total   FROM orders   WHERE city = 'Nashville';                       Correct       40.  Below find the structure of the CUSTOMERS and SALES_ORDER tables:    

CUSTOMERS  CUSTOMER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_NAME VARCHAR2 (30)   CONTACT_NAME VARCHAR2 (30)  CONTACT_TITLE VARCHAR2 (20)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (20)  COUNTRY_ID NUMBER Foreign key to COUNTRY_ID column of the COUNTRY table   PHONE VARCHAR2 (20)  FAX VARCHAR2 (20)   CREDIT_LIMIT NUMBER(7,2)      SALES_ORDER  ORDER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_ID NUMBER Foreign key to CUSTOMER_ID column of the CUSTOMER table  ORDER_DT DATE   ORDER_AMT NUMBER (7,2)   SHIP_METHOD VARCHAR2 (5)       You need to create a report that displays customers without a sales order. Which statement could you  use?    Mark for Review  

(1) Points               SELECT c.customer_name   FROM customers c   WHERE c.customer_id not in (SELECT s.customer_id FROM sales_order s);   (*)             SELECT c.customer_name   FROM customers c, sales_order s   WHERE c.customer_id = s.customer_id(+);              SELECT c.customer_name   FROM customers c, sales_order s   WHERE c.customer_id (+) = s.customer_id;              SELECT c.customer_name   FROM customers c  RIGHT OUTER JOIN sales_order s ON (c.customer_id = s.customer_id);                        Incorrect. Refer to Section 4   

    41.  Which query will retrieve all the rows in the EMPLOYEES table, even if there is no match in the  DEPARTMENTS table?  Mark for Review   (1) Points               SELECT e.last_name, e.department_id, d.department_name   FROM employees e   RIGHT OUTER JOIN departments d ON (e.department_id = d.department_id);              SELECT e.last_name, e.department_id, d.department_name   FROM employees e   NATURAL JOIN departments d;              SELECT e.last_name, e.department_id, d.department_name   FROM employees e  LEFT OUTER JOIN departments d ON (e.department_id = d.department_id);   (*)             SELECT e.last_name, e.department_id, d.department_name   FROM employees e   JOIN departments d USING (e.department_id = d.department_id);         

              Incorrect. Refer to Section 4        42.  Which two sets of join keywords create a join that will include unmatched rows from the first table  specified in the SELECT statement?  Mark for Review   (1) Points               LEFT OUTER JOIN and FULL OUTER JOIN (*)           RIGHT OUTER JOIN and LEFT OUTER JOIN           USING and HAVING           OUTER JOIN and USING                     Incorrect. Refer to Section 4       43.  What should be included in a SELECT statement to return NULL values from all tables?  Mark for  Review   (1) Points               natural joins           left outer joins      

    full outer joins (*)           right outer joins                     Incorrect. Refer to Section 4       44.  If a select list contains both a column as well as a group function then what clause is required?   Mark for Review   (1) Points               having clause           join clause           order by clause           group by clause (*)                     Incorrect. Refer to Section 5       45.  Evaluate this SELECT statement:  SELECT MAX(salary), dept_id   FROM employee   GROUP BY dept_id;  

  Which values are displayed?    Mark for Review   (1) Points               The highest salary for all employees.           The highest salary in each department. (*)           The employees with the highest salaries.           The employee with the highest salary for each department.                     Incorrect. Refer to Section 5        46.  Which statement about group functions is true?  Mark for Review   (1) Points               Group functions ignore null values. (*)           Group functions can only be used in a SELECT list.           Group functions can be used in a WHERE clause.      

    A query that includes a group function in the SELECT list must include a GROUP BY clause.                     Incorrect. Refer to Section 5       47.  What is the best explanation as to why this SQL statement will NOT execute?   SELECT department_id "Department", AVG (salary)"Average"   FROM employees   GROUP BY Department;    Mark for Review   (1) Points               Salaries cannot be averaged as not all the numbers will divide evenly.           You cannot use a column alias in the GROUP BY clause. (*)           The GROUP BY clause must have something to GROUP.           The department id is not listed in the departments table.                     Incorrect. Refer to Section 5       48.  The AVG, SUM, VARIANCE, and STDDEV functions can be used with which of the following?  Mark  for Review   (1) Points  

            Only numeric data types (*)           Integers only           Any data type           All except numeric                     Correct        49.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        You need to determine the average payment amount made by each customer in January, February and  March of 2003. Which SELECT statement should you use?    Mark for Review   (1) Points               SELECT AVG(payment_amount)   FROM payment  

WHERE payment_date BETWEEN '01‐JAN‐2003' AND '31‐MAR‐2003';   (*)             SELECT AVG(payment_amount)   FROM payment;             SELECT SUM(payment_amount)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' and '31‐MAR‐2003';             SELECT AVG(payment_amount)   FROM payment   WHERE TO_CHAR(payment_date) IN (JAN, FEB, MAR);                        Correct       50.  You need to calculate the standard deviation for the cost of products produced in the Birmingham  facility. Which group function will you use?  Mark for Review   (1) Points               STDEV  

        STDDEV (*)           VAR_SAMP           VARIANCE                     Incorrect. Refer to Section 5       51.  The VENDORS table contains these columns:   VENDOR_ID NUMBER Primary Key   NAME VARCHAR2(30)   LOCATION_ID NUMBER   ORDER_DT DATE   ORDER_AMOUNT NUMBER(8,2)     Which two clauses represent valid uses of aggregate functions for this table?    Mark for Review   (1) Points              (Choose all correct answers)                FROM MAX(order_dt)      

    SELECT SUM(order_dt)           SELECT SUM(order_amount) (*)           WHERE MAX(order_dt) = order_dt           SELECT location_id, MIN(AVG(order_amount)) (*)                     Incorrect. Refer to Section 5       52.  Which group function would you use to display the lowest value in the SALES_AMOUNT column?   Mark for Review   (1) Points               AVG           COUNT           MAX           MIN (*)                     Incorrect. Refer to Section 5      

 53.  You need to calculate the average salary of employees in each department. Which group function  will you use?  Mark for Review   (1) Points               AVG (*)           MEAN           MEDIAN           AVERAGE                     Correct        54.  Which group functions below act on character, number and date data types?   (Choose more than one answer)  Mark for Review   (1) Points              (Choose all correct answers)                SUM           MAX (*)           MIN (*)  

        AVG           COUNT (*)                     Correct               55.  The PRODUCTS table contains these columns:  PROD_ID NUMBER(4)   PROD_NAME VARCHAR2(30)  PROD_CAT VARCHAR2(30)  PROD_PRICE NUMBER(3)   PROD_QTY NUMBER(4)    The following statement is issued:     SELECT AVG(prod_price, prod_qty)   FROM products;     What happens when this statement is issued?    Mark for Review   (1) Points          

    Both the average price and the average quantity of the products are returned.           Only the average quantity of the products is returned.           The values in the PROD_PRICE column and the PROD_QTY column are averaged together.           An error occurs. (*)                     Incorrect. Refer to Section 5       56.  The STYLES table contains this data:   STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL  85940  11.00    758960  SANDAL  86979        You issue this SELECT statement:    SELECT COUNT(category) 

FROM styles;     Which value is displayed?    Mark for Review   (1) Points               0           6           7 (*)           The statement will NOT execute successfully.                     Incorrect. Refer to Section 5        57.  Examine the data from the LINE_ITEM table:   LINE_ITEM_ID  ORDER_ID  PRODUCT_ID  PRICE  DISCOUNT    890898  847589  848399  8.99  0.10    768385  862459  849869  5.60  0.05    867950  985490  945809  5.60    954039  439203  438925  5.25  0.15    543949  349302  453235  4.50     

  You query the LINE_ITEM table and a value of 5 is returned. Which SQL statement did you execute?    Mark for Review   (1) Points               SELECT COUNT(discount) FROM line_item;           SELECT COUNT(*) FROM line_item; (*)           SELECT SUM(discount) FROM line_item;           SELECT AVG(discount) FROM line_item;                     Incorrect. Refer to Section 5       58.  Group functions can avoid computations involving duplicate values by including which keyword?   Mark for Review   (1) Points               NULL           DISTINCT (*)           SELECT      

    UNLIKE                     Incorrect. Refer to Section 5               59.  Evaluate this SELECT statement:  SELECT COUNT(*)   FROM products;     Which statement is true?    Mark for Review   (1) Points               The number of rows in the table is displayed. (*)           The number of unique PRODUCT_IDs in the table is displayed.           An error occurs due to an error in the SELECT clause.           An error occurs because no WHERE clause is included in the SELECT statement.                     Incorrect. Refer to Section 5      

60.  The PLAYERS table contains these columns:   PLAYER_ID NUMBER PK   PLAYER_NAME VARCHAR2 (30)   TEAM_ID NUMBER   HIRE_DATE DATE   SALARY NUMBER (8,2)     Which two clauses represent valid uses of aggregate functions? (Choose three.)    Mark for Review   (1) Points              (Choose all correct answers)                ORDER BY AVG(salary)           GROUP BY MAX(salary) (*)           SELECT AVG(NVL(salary, 0)) (*)           HAVING MAX(salary) > 10000 (*)           WHERE hire_date > AVG(hire_date)                     Incorrect. Refer to Section 6   

   61.  The MANUFACTURER table contains these columns:   MANUFACTURER_ID NUMBER   MANUFACTURER_NAME VARCHAR2(30)   TYPE VARCHAR2(25)   LOCATION_ID NUMBER    You need to display the number of unique types of manufacturers at each location. Which SELECT  statement should you use?    Mark for Review   (1) Points               SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer   GROUP BY location_id;  (*)             SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer;             SELECT location_id, COUNT(type)   FROM manufacturer   GROUP BY location_id;    

        SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer   GROUP BY type;                       Correct        62.  What is the correct order of clauses in a SELECT statement?  Mark for Review   (1) Points               SELECT   FROM   WHERE   ORDER BY   HAVING             SELECT   FROM   HAVING   GROUP BY   WHERE  ORDER BY  

           SELECT   FROM   WHERE  GROUP BY   HAVING   ORDER BY  (*)             SELECT   FROM   WHERE   HAVING   ORDER BY   GROUP BY                       Correct        63.  The PRODUCTS table contains these columns:   PROD_ID NUMBER(4)   PROD_NAME VARCHAR(20)  

PROD_CAT VARCHAR2(15)   PROD_PRICE NUMBER(5)  PROD_QTY NUMBER(4)     You need to identify the minimum product price in each product category.  Which statement could you use to accomplish this task?   Mark for Review   (1) Points               SELECT prod_cat, MIN (prod_price)   FROM products  GROUP BY prod_price;             SELECT prod_cat, MIN (prod_price)   FROM products  GROUP BY prod_cat;  (*)             SELECT MIN (prod_price), prod_cat  FROM products   GROUP BY MIN (prod_price), prod_cat;        

    SELECT prod_price, MIN (prod_cat)  FROM products  GROUP BY prod_cat;                       Correct        64.  The EMPLOYEES table contains these columns:   ID_NUMBER NUMBER Primary Key   NAME VARCHAR2 (30)   DEPARTMENT_ID NUMBER   SALARY NUMBER (7,2)   HIRE_DATE DATE    Evaluate this SQL statement:     SELECT id_number, name, department_id, SUM(salary)   FROM employees   WHERE salary > 25000   GROUP BY department_id, id_number, name   ORDER BY hire_date;     Why will this statement cause an error?    Mark for Review  

(1) Points               The HAVING clause is missing.           The WHERE clause contains a syntax error.           The SALARY column is NOT included in the GROUP BY clause.           The HIRE_DATE column is NOT included in the GROUP BY clause. (*)                     Correct        65.  Evaluate this SELECT statement:  SELECT SUM(salary), dept_id, department_name   FROM employee   WHERE dept_id = 1   GROUP BY department;     Which clause of the SELECT statement contains a syntax error?   Mark for Review   (1) Points               SELECT      

    FROM           WHERE           GROUP BY (*)                     Incorrect. Refer to Section       66.  The PLAYERS and TEAMS tables contain these columns:   PLAYERS   PLAYER_ID NUMBER NOT NULL, Primary Key   LAST_NAME VARCHAR2 (30) NOT NULL   FIRST_NAME VARCHAR2 (25) NOT NULL  TEAM_ID NUMBER   POSITION VARCHAR2 (25)    TEAMS   TEAM_ID NUMBER NOT NULL, Primary Key   TEAM_NAME VARCHAR2 (25)     You need to create a report that lists the names of each team with more than five pitchers.   Which SELECT statement will produce the desired result?   Mark for Review   (1) Points  

            SELECT t.team_name, COUNT(p.player_id)  FROM players p, teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'PITCHER'   GROUP BY t.team_name;             SELECT t.team_name, COUNT(p.player_id)   FROM players JOIN teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'PITCHER' HAVING COUNT(p.player_id) > 5;             SELECT t.team_name, COUNT(p.player_id)   FROM players p, teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'PITCHER'   GROUP BY t.team_name HAVING COUNT(p.player_id) > 5;              SELECT t.team_name, COUNT(p.player_id)   FROM players p JOIN teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'PITCHER'   GROUP BY t.team_name HAVING COUNT(p.player_id) > 5;   (*)        

              Incorrect. Refer to Section 6        67.  Which statement about the GROUP BY clause is true?  Mark for Review   (1) Points               To exclude rows before dividing them into groups using the GROUP BY clause, you use should a  WHERE clause. (*)           You can use a column alias in a GROUP BY clause.           By default, rows are not sorted when a GROUP BY clause is used.           You must use the HAVING clause with the GROUP BY clause.                     Incorrect. Refer to Section 6       68.  Using a subquery in which clause will return a syntax error?  Mark for Review   (1) Points               WHERE           FROM           HAVING  

        There are no places you cannot place subqueries. (*)                     Incorrect. Refer to Section 6        69.  Which of the following is TRUE regarding the order of subquery execution?  Mark for Review   (1) Points               The outer query is executed first           The subquery executes once after the main query           The subquery executes once before the main query (*)           The result of the main query is used with the subquery                     Correct        70.  The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns:   TEACHERS  TEACHER_ID NUMBER(5) Primary Key  NAME VARCHAR2 (25)   SUBJECT_ID NUMBER(5)  

    CLASS_ASSIGNMENTS  CLASS_ID NUMBER (5) Primary Key   TEACHER_ID NUMBER (5)  START_DATE DATE  MAX_CAPACITY NUMBER (3)    All MAX_CAPACITY values are greater than 10. Which two SQL statements correctly use subqueries?  (Choose two.)    Mark for Review   (1) Points              (Choose all correct answers)                SELECT *   FROM class_assignments   WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments);  (*)             SELECT *   FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE class_id = 45963);   (*)    

        SELECT *   FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);              SELECT *   FROM teachers   WHERE teacher_id LIKE (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);              SELECT *   FROM class_assignments   WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments GROUP BY teacher_id);                        Incorrect. Refer to Section 6                71.  The EMPLOYEES and ORDERS tables contain these columns:   EMPLOYEES  EMP_ID NUMBER(10) NOT NULL PRIMARY KEY   FNAME VARCHAR2(30)  LNAME VARCHAR2(30) 

ADDRESS VARCHAR2(25)  CITY VARCHAR2(20)  STATE VARCHAR2(2)   ZIP NUMBER(9)  TELEPHONE NUMBER(10)     ORDERS   ORDER_ID NUMBER(10) NOT NULL PRIMARY KEY   EMP_ID NUMBER(10) NOT NULL FOREIGN KEY  ORDER_DATE DATE  TOTAL NUMBER(10)     Which SELECT statement will return all orders generated by a sales representative named Franklin  during the year 2001?    Mark for Review   (1) Points               SELECT order_id, total   FROM ORDERS (SELECT emp_id FROM employees WHERE lname = 'Franklin')   WHERE order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01';              SELECT (SELECT emp_id FROM employees WHERE lname = 'Franklin') AND order_id, total   FROM ORDERS   WHERE order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01';     

        SELECT order_id, emp_id, total   FROM ORDERS   WHERE order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01' AND emp_id = 'Franklin';              SELECT order_id, total   FROM ORDERS  WHERE emp_id = (SELECT emp_id FROM employees WHERE lname = 'Franklin')   AND order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01';   (*)                       Correct       72.  the structures of the CUSTOMER and ORDER_HISTORY tables:   CUSTOMER   CUSTOMER_ID NUMBER(5)  NAME VARCHAR2(25)  CREDIT_LIMIT NUMBER(8,2)  OPEN_DATE DATE       ORDER_HISTORY 

ORDER_ID NUMBER(5)  CUSTOMER_ID NUMBER(5)  ORDER_DATE DATE  TOTAL NUMBER(8,2)     Which of the following scenarios would require a subquery to return the desired results?    Mark for Review   (1) Points               You need to display the date each customer account was opened.           You need to display each date that a customer placed an order.           You need to display all the orders that were placed on a certain date.           You need to display all the orders that were placed on the same day as order number 25950. (*)                     Incorrect. Refer to Section 6       73.  You need to produce a report that contains all employee‐related information for those employees  who have Brad Carter as a supervisor. However, you are not sure which supervisor ID belongs to Brad  Carter. Which query should you issue to accomplish this task?  Mark for Review   (1) Points               SELECT *  

FROM employees   WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');              SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');              SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT employee_id        FROM supervisors        WHERE last_name = 'Carter');             SELECT *   FROM employees 

WHERE supervisor_id =        (SELECT employee_id        FROM employees        WHERE last_name = 'Carter');   (*)                       Incorrect. Refer to Section 6                74.  If a single‐row subquery returns a null value and uses the equality comparison operator, what will  the outer query return?  Mark for Review   (1) Points               no rows (*)           all the rows in the table           a null value           an error                     Incorrect. Refer to Section 6      

 75.  Which best describes a single‐row subquery?  Mark for Review   (1) Points               a query that returns only one row from the inner SELECT statement (*)           a query that returns one or more rows from the inner SELECT statement           a query that returns only one column value from the inner SELECT statement           a query that returns one or more column values from the inner SELECT statement                     Incorrect. Refer to Section 6        76.  Which best describes a multiple‐row subquery?  Mark for Review   (1) Points               A query that returns only one row from the inner SELECT statement           A query that returns one or more rows from the inner SELECT statement (*)           A query that returns only one column value from the inner SELECT statement           A query that returns one or more column values from the inner SELECT statement      

              Incorrect. Refer to Section 6        77.  Which of the following statements contains a comparison operator that is used to restrict rows  based on a list of values returned from an inner query?  Mark for Review   (1) Points               SELECT description   FROM d_types   WHERE code IN (SELECT type_code FROM d_songs);             SELECT description  FROM d_types  WHERE code = ANY (SELECT type_code FROM d_songs);             SELECT description   FROM d_types   WHERE code <> ALL (SELECT type_code FROM d_songs);             All of the above. (*)                     Incorrect. Refer to Section 6   

    78.  Evaluate this SELECT statement:  SELECT customer_id, name   FROM customer   WHERE customer_id IN      (SELECT customer_id       FROM customer       WHERE state_id = 'GA' AND credit_limit > 500.00);     What would happen if the inner query returned null?    Mark for Review   (1) Points               An error would be returned.           No rows would be returned by the outer query. (*)           All the rows in the table would be selected.           Only the rows with CUSTOMER_ID values equal to null would be selected.                     Incorrect. Refer to Section 6       79.  You need to create a SELECT statement that contains a multiple‐row subquery, which comparison  operator(s) can you use?  Mark for Review  

(1) Points               IN, ANY, and ALL (*)           LIKE           BETWEEN...AND...           =, <, and >                     Incorrect. Refer to Section 6       80.  Which of the following best describes the meaning of the ANY operator?  Mark for Review   (1) Points               Equal to any member in the list           Compare value to each value returned by the subquery (*)           Compare value to every value returned by the subquery           Equal to each value in the list              

      Correct        81.  Which operator or keyword cannot be used with a multiple‐row subquery?  Mark for Review   (1) Points               ALL           ANY           = (*)           >                     Incorrect. Refer        82.  What would happen if you attempted to use a single‐row operator with a multiple‐row subquery?   Mark for Review   (1) Points               An error would be returned. (*)           No rows will be selected.           All the rows will be selected.      

    The data returned may or may not be correct.                     Incorrect. Refer to Section 6       83.  Evaluate this SQL statement:   SELECT employee_id, last_name, salary   FROM employees  WHERE department_id IN      (SELECT department_id      FROM employees      WHERE salary > 30000 AND salary < 50000);    Which values will be displayed?    Mark for Review   (1) Points               Only employees who earn more than $30,000.           Only employees who earn less than $50,000.           All employees who work in a department with employees who earn more than $30,000 and more  than $50,000.           All employees who work in a department with employees who earn more than $30,000, but less than  $50,000. (*)  

                  Correct       84.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        This statement fails when executed:     SELECT customer_id, payment_type   FROM payment   WHERE payment_id =      (SELECT payment_id       FROM payment       WHERE payment_amount = 596.00 OR payment_date = '20‐MAR‐2003');     Which change could correct the problem?    Mark for Review   (1) Points               Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)  

        Remove the quotes surrounding the date value in the OR clause.           Remove the parentheses surrounding the nested SELECT statement.           Change the comparison operator to a single‐row operator.                     Incorrect. Refer to Section 6        85.  What is wrong with the following query?   SELECT employee_id, last_name   FROM employees   WHERE salary =     (SELECT MIN(salary) FROM employees GROUP BY department_id);     Mark for Review   (1) Points               Single rows contain multiple values and a logical operator is used.           Subquery returns more than one row and single row comparison operator is used. (*)           Subquery references the wrong table in the WHERE clause.      

    Nothing, it will run without problems.                     Incorrect. Refer to Section 6                86.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        This statement fails when executed:     SELECT payment_date, customer_id, payment_amount   FROM payment   WHERE payment_id =      (SELECT payment_id       FROM payment       WHERE payment_date >= '05‐JAN‐2002' OR payment_amount > 500.00);     Which change could correct the problem?    Mark for Review   (1) Points  

            Remove the subquery WHERE clause.           Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)           Include the PAYMENT_ID column in the select list of the outer query.           Remove the single quotes around the date value in the inner query WHERE clause.                     Incorrect. Refer to Section 6        87.  Assume all the column names are correct. The following SQL statement will execute which of the  following?  INSERT INTO departments (department_id, department_name, manager_id, location_id)   VALUES (70, 'Public Relations', 100, 1700);     Mark for Review   (1) Points               100 will be inserted into the department_id column           1700 will be inserted into the manager_id column           70 will be inserted into the department_id column (*)      

    'Public Relations' will be inserted into the manager_name column                     Incorrect. Refer to Section 7        88.  You need to add a row to an existing table. Which DML statement should you use?  Mark for  Review   (1) Points               UPDATE           INSERT (*)           DELETE           CREATE                     Incorrect. Refer        89.  The PRODUCTS table contains these columns:  PRODUCT_ID NUMBER NOT NULL   PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER NOT NULL  LIST_PRICE NUMBER (7,2)  COST NUMBER (5,2) 

QTY_IN_STOCK NUMBER(4)  LAST_ORDER_DT DATE NOT NULL DEFAULT SYSDATE       Which INSERT statement will execute successfully?    Mark for Review   (1) Points               INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, 700); (*)           INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, SYSDATE);           INSERT INTO products(product_id, product_name) VALUES (2958, 'Cable');           INSERT INTO products(product_id, product_name, supplier_id VALUES (2958, 'Cable', 8690, SYSDATE);                     Incorrect. Refer to Section 7        90.  You need to copy rows from the EMPLOYEE table to the EMPLOYEE_HIST table. What could you use  in the INSERT statement to accomplish this task?  Mark for Review   (1) Points               an ON clause           a SET clause  

        a subquery (*)           a function                     Correct               91.  One of the sales representatives, Janet Roper, has informed you that she was recently married, and  she has requested that you update her name in the employee database. Her new last name is Cooper.  Janet is the only person with the last name of Roper that is employed by the company. The EMPLOYEES  table contains these columns and all data is stored in lowercase:   EMP_ID NUMBER(10) PRIMARY KEY   LNAME VARCHAR2(20)  FNAME VARCHAR2(20)  DEPT VARCHAR2 (20)  HIRE_DATE DATE  SALARY NUMBER(10)    Which UPDATE statement will accomplish your objective?   Mark for Review   (1) Points               UPDATE employees  SET lname = 'cooper'   WHERE lname = 'roper';  

(*)             UPDATE employees lname = 'cooper'   WHERE lname = 'roper';             UPDATE employees  SET lname = 'roper'   WHERE lname = 'cooper';             UPDATE employees  SET cooper = 'lname'   WHERE lname = 'roper';                       Incorrect. Refer to Section 7       92.  You need to remove a row from the EMPLOYEE table. Which statement would you use?  Mark for  Review   (1) Points               UPDATE with a WHERE clause      

    INSERT with a WHERE clause           DELETE with a WHERE clause (*)           MERGE with a WHERE clause                     Correct        93.  Examine the structures of the PLAYERS, MANAGERS, and TEAMS tables:  PLAYERS  PLAYER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (30)  FIRST_NAME VARCHAR2 (25)  TEAM_ID NUMBER  MGR_ID NUMBER  SIGNING_BONUS NUMBER(9,2)  SALARY NUMBER(9,2)    MANAGERS  MANAGER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (20)  FIRST_NAME VARCHAR2 (20)  TEAM_ID NUMBER   

TEAMS  TEAM_ID NUMBER Primary Key  TEAM_NAME VARCHAR2 (20)  OWNER_LAST_NAME VARCHAR2 (20)  OWNER_FIRST_NAME VARCHAR2 (20)    Which situation would require a subquery to return the desired result?    Mark for Review   (1) Points               To display the names each player on the Lions team           To display the maximum and minimum player salary for each team           To display the names of the managers for all the teams owned by a given owner (*)           To display each player, their manager, and their team name for all teams with a id value greater than  5000                     Correct        94.  The EMPLOYEES table contains the following columns:   EMP_ID NUMBER(10) PRIMARY KEY   LNAME VARCHAR2(20)   FNAME VARCHAR2(20) 

DEPT VARCHAR2(20)  HIRE_DATE DATE   SALARY NUMBER(9,2)   BONUS NUMBER(9,2)     You want to execute one DML statement to change the salary of all employees in department 10 to  equal the new salary of employee number 89898. Currently, all employees in department 10 have the  same salary value. Which statement should you execute?    Mark for Review   (1) Points               UPDATE employee   SET salary = SELECT salary   FROM employee   WHERE emp_id = 89898;             UPDATE employee   SET salary = (SELECT salary FROM employee WHERE emp_id = 89898);             UPDATE employee  SET salary = (SELECT salary FROM employee WHERE emp_id = 89898)   WHERE dept = 10;   (*)    

        UPDATE employee   SET salary = (SELECT salary FROM employee WHERE emp_id = 89898 AND dept = 10);                       Incorrect. Refer to Section 7        95.  Evaluate this statement: DELETE FROM customer; Which statement is true?  Mark for Review   (1) Points               The statement deletes all the rows from the CUSTOMER table. (*)           The statement deletes the CUSTOMER column.           The statement deletes the first row in the CUSTOMERS table.           The statement removes the structure of the CUSTOMER table from the database.                     Incorrect. Refer to Section 7       96.  When the WHERE clause is missing in a DELETE statement, what is the result?  Mark for Review   (1) Points          

    All rows are deleted from the table. (*)           The table is removed from the database.           An error message is displayed indicating incorrect syntax.           Nothing. The statement will not execute.                     Correct                97.  The PLAYERS table contains these columns:  PLAYER_ID NUMBER NOT NULL  PLAYER_LNAME VARCHAR2(20) NOT NULL  PLAYER_FNAME VARCHAR2(10) NOT NULL   TEAM_ID NUMBER   SALARY NUMBER(9,2)     You need to increase the salary of each player for all players on the Tiger team by 12.5 percent. The  TEAM_ID value for the Tiger team is 5960. Which statement should you use?    Mark for Review   (1) Points               UPDATE players (salary) SET salary = salary * 1.125;      

    UPDATE players SET salary = salary * .125 WHERE team_id = 5960;           UPDATE players SET salary = salary * 1.125 WHERE team_id = 5960; (*)           UPDATE players (salary) VALUES(salary * 1.125) WHERE team_id = 5960;                     Correct        98.  You need to delete a record in the EMPLOYEES table for Tim Jones, whose unique employee  identification number is 348. The EMPLOYEES table contains these columns:  ID_NUM NUMBER(5) PRIMARY KEY  LNAME VARCHAR2(20)  FNAME VARCHAR2(20)  ADDRESS VARCHAR2(30)  PHONE NUMBER(10)    Which DELETE statement will delete the appropriate record without deleting any additional records?    Mark for Review   (1) Points               DELETE FROM employees WHERE id_num = 348; (*)           DELETE FROM employees WHERE lname = jones;           DELETE * FROM employees WHERE id_num = 348;  

        DELETE 'jones' FROM employees;                     Correct       99.  You need to update the expiration date of products manufactured before June 30th . In which  clause of the UPDATE statement will you specify this condition?  Mark for Review   (1) Points               the ON clause           the WHERE clause (*)           the SET clause           the USING clause                     Correct        100.  You need to update both the DEPARTMENT_ID and LOCATION_ID columns in the EMPLOYEE table  using one UPDATE statement. Which clause should you include in the UPDATE statement to update  multiple columns?  Mark for Review   (1) Points               the USING clause  

        the ON clause           the WHERE clause           the SET clause (*)                     Correct    1. You need to display each employee's name in all uppercase letters. Which function should you use?  Mark for Review   (1) Points   CASE      UCASE      UPPER (*)      TOUPPER    2. You need to return a portion of each employee's last name, beginning with the first character up to  the fifth character. Which character function should you use?  (1) Points   INSTR      TRUNC   

Mark for Review  

  SUBSTR (*)      CONCAT    3.  

Evaluate this SELECT statement: 

  SELECT LENGTH(email)  FROM employee;    What will this SELECT statement display?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

The longest e‐mail address in the EMPLOYEE table. 

 

 

 

 

 

The email address of each employee in the EMPLOYEE table. 

 

 

 

 

 

The number of characters for each value in the EMAIL column in the employees table. (*) 

 

 

 

 

 

The maximum number of characters allowed in the EMAIL column. 

 

 

 

 

 

 

 

 

4.   You need to display the number of characters in each customer's last name. Which function  should you use?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

LENGTH (*) 

 

 

 

 

 

LPAD 

 

 

 

 

 

COUNT 

 

 

 

 

 

SUBSTR 

   

5.   Which functions can be used to manipulate character, number, and date column values?  Mark for Review  

 

 

 

 

 

 

 

 

(1) Points   

 

 

 

 

 

 

 

 

CONCAT, RPAD, and TRIM (*) 

 

 

 

 

 

UPPER, LOWER, and INITCAP 

 

 

 

 

 

 

 

 

 

 

 

ROUND, TRUNC, and MOD 

 

 

 

 

 

ROUND, TRUNC, and ADD_MONTH 

 

 

 

6.  

   

 

 

You query the database with this SQL statement: 

  SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID"  FROM employee;    In which order are the functions evaluated?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

LOWER, SUBSTR, CONCAT 

 

 

 

 

 

LOWER, CONCAT, SUBSTR 

 

 

 

 

 

SUBSTR, CONCAT, LOWER 

 

 

 

 

 

CONCAT, SUBSTR, LOWER (*) 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7.  

Which three statements about functions are true? (Choose three.)  

Mark for Review  

(1) Points   

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

The SYSDATE function returns the Oracle Server date and time. (*) 

 

 

 

 

 

 

 

   

 

 

  The ROUND number function rounds a value to a specified decimal place or the nearest whole  number. (*)   

 

 

 

 

The CONCAT function can only be used on character strings, not on numbers. 

  

Which comparison operator retrieves a list of values?   Mark for Review  

 

 

(1) Points   

 

 

 

 

 

 

 

 

IN (*) 

 

 

 

 

 

 

 

LIKE 

 

 

 

 

 

 

 

BETWEEN...IN... 

 

 

 

 

 

 

 

 

   

IS NULL 

 

 

 

 

 

 

  The SUBSTR character function returns a portion of a string beginning at a defined character  position to a specified length. (*)    10.   Which two functions can be used to manipulate number or date column values, but NOT  character column values? (Choose two.)   Mark for Review   (1) Points   

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

RPAD 

 

 

 

 

 

 

 

TRUNC (*) 

 

 

 

 

 

ROUND (*) 

 

 

 

 

 

INSTR 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CONCAT 

 

11.  

 

Evaluate this SELECT statement: 

  SELECT SYSDATE + 30  FROM dual;    Which value is returned by the query?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

the current date plus 30 hours 

 

 

 

 

 

the current date plus 30 days (*) 

 

 

 

 

 

the current date plus 30 months 

 

 

 

 

 

No value is returned because the SELECT statement generates an error. 

 

 

 

 

 

 

 

 

12.   You need to display the current year as a character value (for example: Two Thousand and One).  Which element would you use?  Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

RR 

 

 

 

 

 

YY 

 

 

 

 

 

YYYY 

 

 

 

 

 

 

 

 

 

 

 

 

   

YEAR (*) 

 

 

 

 

 

 

    13.   You need to display the number of months between today's date and each  employee's hiredate. Which function should you use?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

ROUND 

 

 

 

 

 

BETWEEN 

 

 

 

 

 

ADD_MONTHS 

 

 

 

 

 

 

 

 

 

 

 

 

MONTHS_BETWEEN (*) 

 

 

 

 

 

 

 

 

  14.   Which of the following SQL statements will correctly display the last name and the  number of weeks employed for all employees in department 90?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

 

 

SELECT last_name, (SYSDATE‐hire_date)/7 AS WEEKS 

FROM employees  WHERE department_id = 90;    (*)   

 

 

 

 

SELECT last name, (SYSDATE‐hire_date)/7 DISPLAY WEEKS 

 

 

FROM employees  WHERE department id = 90;     

 

 

 

 

SELECT last_name, # of WEEKS 

 

 

FROM employees  WHERE department_id = 90;   

 

 

 

 

 

SELECT last_name, (SYSDATE‐hire_date)AS WEEK 

 

 

FROM employees  WHERE department_id = 90;   

 

 

 

 

 

16.  

Which statement concerning single row functions is true?  

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

Single row functions can accept only one argument, but can return multiple values. 

 

 

 

 

 

Single row functions cannot modify a data type. 

 

 

 

 

 

Single row functions can be nested. (*) 

 

 

 

 

 

Single row functions return one or more results per row. 

 

 

   

  17.   Which two statements concerning SQL functions are true? (Choose two.)  Mark for Review  

 

 

 

 

 

 

 

 

 

 

 

(1) Points   

 

 

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

 

Character functions can accept numeric input. 

 

 

 

 

 

Not all date functions return date values. (*) 

 

 

 

 

 

Number functions can return number or character values. 

 

 

 

 

 

Conversion functions convert a value from one data type to another data type. (*) 

 

 

 

 

 

Single‐row functions manipulate groups of rows to return one result per group of rows. 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

    18.   Which three statements concerning explicit data type conversions are true?  (Choose three.) Mark for Review   (1) Points   

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

Use the TO_NUMBER function to convert a number to a character string. 

 

 

 

 

 

 

 

 

   

 

 

Use the TO_DATE function to convert a character string to a date value. (*) 

 

 

 

 

 

Use the TO_NUMBER function to convert a character string of digits to a number. (*) 

 

 

 

 

 

Use the TO_DATE function to convert a date value to character string or number. 

 

 

 

 

 

Use the TO_CHAR function to convert a number or date value to character string. (*) 

19.  

The EMPLOYEES table contains these columns: 

 

 

 

 

 

 

  EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2 (25)  FIRST_NAME VARCHAR2 (25)  HIRE_DATE DATE    You need to display HIRE_DATE values in this format:    January 28, 2000    Which SELECT statement could you use?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

 

SELECT TO_CHAR(hire_date, Month DD, YYYY) 

FROM employees;     

 

 

 

 

SELECT TO_CHAR(hire_date, 'Month DD, YYYY') 

 

 

FROM employees;    (*)   

 

 

 

 

SELECT hire_date(TO_CHAR 'Month DD', ' YYYY') 

 

 

FROM employees;     

 

 

 

 

SELECT TO_CHAR(hire_date, 'Month DD', ' YYYY') 

 

 

FROM employees;  20.  

Which arithmetic operation will return a numeric value?  

(1) Points   

 

 

 

 

 

 

 

 

 

 

TO_DATE('01‐JUN‐2004') ‐ TO_DATE('01‐OCT‐2004') (*) 

 

 

Mark for Review  

 

 

 

 

NEXT_DAY(hire_date) + 5 

 

 

 

 

 

SYSDATE ‐ 6 

 

 

 

 

 

SYSDATE + 30 / 24 

 

 

 

 

 

 

 

 

 

    21.   If you use the RR format when writing a query using the date 27‐OCT‐17 and the  year is 2001, what year would be the result?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

2001 

 

 

 

 

 

 

 

1901 

 

 

 

 

 

 

 

2017 (*) 

 

 

 

 

 

1917 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect   

 

 

 

Previous  22.  

 

 

 

 

Incorrect. Refer to Section 2 

 

 

 

Page 21 of 100  Next 

  Summary 

The PRODUCT table contains this column: PRICE NUMBER(7,2) 

Evaluate this statement:    SELECT NVL(10 / price, '0')  FROM PRODUCT;    What would happen if the PRICE column contains null values?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

The statement would fail because values cannot be divided by 0. 

 

 

 

 

 

A value of 0 would be displayed. (*) 

 

 

 

 

 

A value of 10 would be displayed. 

 

 

 

 

 

 

 

 

 

 

 

 

 

The statement would fail because values cannot be divided by null. 

23.   Which of the following General Functions will return the first non‐null expression in the  expression list?  Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

NVL 

 

 

 

 

 

 

 

NVL2 

 

 

 

 

 

 

 

NULLIF 

 

 

 

 

 

 

 

COALESCE (*) 

 

 

 

 

 

 

 

 

    24.   You need to replace null values in the DEPT_ID column with the text "N/A".  Which functions should you use?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

TO_CHAR and NVL (*) 

 

 

 

 

 

TO_CHAR and NULL 

 

 

 

 

 

 

 

 

 

TO_CHAR and NULLIF 

25.  

What happens when you create a Cartesian product?   Mark for Review  

 

 

(1) Points   

 

 

 

 

 

 

 

 

All rows from one table are joined to all rows of another table (*) 

 

 

 

 

 

The table is joined to itself, one column to the next column, exhausting all possibilities 

 

 

 

 

 

The table is joined to another equal table 

 

 

 

 

 

All rows that do not match in the WHERE clause are displayed 

 

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 3 

Incorrect  26.  

 

 

 

 

 

 

 

 

 

The PATIENTS and DOCTORS tables contain these columns: 

  PATIENTS  PATIENT_ID NUMBER(9) 

LAST_NAME VARCHAR2 (20)  FIRST_NAME VARCHAR2 (20)    DOCTORS  DOCTOR_ID NUMBER(9)  LAST_NAME VARCHAR2 (20)  FIRST_NAME VARCHAR2 (20)    You issue this statement:  SELECT patient_id, doctor_id  FROM patients, doctors;    Which result will this statement provide?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

A report containing all possible combinations of the PATIENT_ID and DOCTOR_ID values (*) 

 

 

 

 

 

A report containing each patient's id value and their doctor's id value 

 

 

 

 

 

A report with NO duplicate PATIENT_ID or DOCTOR_ID values 

 

 

 

 

 

 

 

 

 

 

 

 

A syntax error 

 

 

 

 

 

 

 

 

27.   When joining 3 tables in a SELECT statement, how many join conditions are needed in the  WHERE clause?  Mark for Review   (1) Points   

 

 

 

 

 

 

 

 



 

 

 

 

 

 

 



 

 

 

 

 

 

 

2 (*) 

 

 

 

 

 

 

 



 

 

 

 

 

 

 

Incorrect 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 3 

28.   You need to provide a list of the first and last names of all employees who work in the Sales  department who earned a bonus and had sales over $50,000. The company president would like the  sales listed starting with the highest amount first. The EMPLOYEES table and the SALES_DEPT table  contain the following columns: 

  EMPLOYEES  EMP_ID NUMBER(10) PRIMARY KEY  LNAME VARCHAR2(20)  FNAME VARCHAR2(20)  DEPT VARCHAR2(20)  HIRE_DATE DATE  SALARY NUMBER(10)    SALES_DEPT  SALES_ID NUMBER(10) PRIMARY KEY  SALES NUMBER(20)  QUOTA NUMBER(20)  MGR VARCHAR2(30)  BONUS NUMBER(10)  EMP_ID NUMBER(10) FOREIGN KEY    Which SELECT statement will accomplish this task?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

SELECT e.emp_id, e.lname, e.fname, s.emp_id, s.bonus, s.sales 

FROM employees e, sales_dept s  ORDER BY sales DESC 

 

WHERE e.emp_id = s.emp_id AND sales > 50000 AND s.bonus IS NOT NULL;     

 

 

 

 

SELECT e.emp_id, e.lname, e.fname, s.emp_id, s.bonus, s. sales 

 

 

ORDER BY sales DESC  FROM employees e, sales_dept s  WHERE e.emp_id = s.emp_id AND s.bonus IS NOT NULL AND sales > 50000;     

 

 

 

 

SELECT e.emp_id, e.lname, e.fname, s.emp_id, s.bonus, s. sales 

 

 

WHERE e.emp_id = s.emp_id  FROM employees e, sales_dept s AND s.bonus IS NOT NULL AND sales > 50000  ORDER BY sales DESC;     

 

 

 

 

SELECT e.emp_id, e.lname, e.fname, s.emp_id, s.bonus, s. sales 

 

 

FROM employees e, sales_dept s  WHERE e.emp_id = s.emp_id AND s.bonus IS NOT NULL AND sales > 50000  ORDER BY sales DESC;    (*)  29.   You need to create a report that lists all employees in the Sales department who do not earn  $25,000 per year. Which query should you issue to accomplish this task?   Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

 

SELECT last_name, first_name, salary 

FROM employees  WHERE salary > 25000 AND dept_id = 10;     

 

 

 

 

SELECT last_name, first_name, salary 

 

 

FROM employees  WHERE salary = 25000 AND dept_id = 10;     

 

 

 

 

SELECT last_name, first_name, salary 

 

 

FROM employees  WHERE salary <= 25000 AND dept_id = 10;     

 

 

 

 

SELECT last_name, first_name, salary 

 

 

FROM employees  WHERE salary != 25000 AND dept_id = 10;   

(*)  30.  

The CUSTOMERS and SALES tables contain these columns: 

  CUSTOMERS  CUST_ID NUMBER(10) PRIMARY KEY  COMPANY VARCHAR2(30)  LOCATION VARCHAR2(20)    SALES  SALES_ID NUMBER(5) PRIMARY KEY  CUST_ID NUMBER(10) FOREIGN KEY  TOTAL_SALES NUMBER(30)    Which SELECT statement will return the customer ID, the company and the total sales?     

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

SELECT c.cust_id, c.company, s.total_sales 

FROM customers c, sales s  WHERE c.cust_id = s.cust_id (+);     

 

 

 

 

 

 

 

SELECT cust_id, company, total_sales 

FROM customers, sales  WHERE cust_id = cust_id;     

 

 

 

 

SELECT c.cust_id, c.company, s.total_sales 

 

 

FROM customers c, sales s  WHERE c.cust_id = s.cust_id;    (*)   

 

 

 

 

SELECT cust_id, company, total_sales 

 

 

FROM customers c, sales s  WHERE c.cust_id = s.cust_id;  31.   The EMPLOYEE_ID column in the EMPLOYEE table corresponds to the EMPLOYEE_ID column of  the ORDER table. The EMPLOYEE_ID column in the ORDER table contains null values for rows that you  need to display.  Which type of join should you use to display the data?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

natural join 

 

 

 

 

 

 

 

 

 

self‐join 

 

 

 

 

 

outer join (*) 

 

 

 

 

 

equijoin 

32.  

Which statement about outer joins is true?  

 

 

 

 

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

The tables must be aliased. 

 

 

 

 

 

The FULL, RIGHT, or LEFT keyword must be included. 

 

 

 

 

 

The OR operator cannot be used to link outer join conditions. (*) 

 

 

 

 

 

Outer joins are always evaluated before other types of joins in the query. 

    for Review  

 

 

 

 

 

 

 

 

33.  

Which of the following best describes the function of an outer join?  

(1) Points   

 

 

 

 

 

 

 

 

 

Mark 

 

An outer join will return only those rows that do not meet the join criteria. 

 

 

 

 

 

 

  An outer join will return only data from the far left column in one table and the far right column  in the other table.   

 

 

 

 

An outer join will return data only if both tables contain an identical pair of columns. 

 

 

 

 

 

 

 

 

  An outer join will return all rows that meet the join criteria and will return NULL values from one  table if no rows from the other table satisfy the join criteria. (*)  34.   Which of the following conditions will cause an error on a NATURAL JOIN?   Review  

Mark for 

(1) Points   

 

 

 

 

 

 

 

 

When you attempt to write it as an equijoin. 

 

 

 

 

 

 

 

 

  When the NATURAL JOIN clause is based on all columns in the two tables that have the same  name.   

 

 

 

 

If it selects rows from the two tables that have equal values in all matched columns. 

 

 

 

 

 

 

 

 

 

If the columns having the same names have different data types, then an error is returned. (*) 

  35.   A join between tables where the result set includes matching values from both tables  but does NOT return any unmatched rows could be called which of the following? (Choose three)    Mark for Review   (1) Points   

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

Equijoin (*) 

 

 

 

 

 

Self join (*) 

 

 

 

 

 

Nonequijoin 

 

 

 

 

 

Simple join (*) 

 

 

 

 

 

full outer join 

 

 

 

 

 

 

   

 

 

 

 

 

36.   You need to join two tables that have two columns with the same name and compatible data  types. Which type of join would you create to join the tables on both of the columns?   Mark for  Review   (1) Points   

 

 

 

 

 

 

 

 

Natural join (*) 

 

 

 

 

 

Cross join 

 

 

 

 

 

Outer join 

 

 

 

 

 

Self‐join 

 

 

 

 

  37.   for Review  

 

 

 

 

 

 

 

 

 

 

 

Which of the following statements is the simplest description of a nonequijoin?  Mark 

(1) Points   

 

 

 

 

 

 

 

 

A join condition containing something other than an equality operator (*) 

 

 

 

 

 

A join condition that is not equal to other joins. 

 

 

 

 

 

A join condition that includes the (+) on the left hand side. 

 

 

 

 

 

 

 

 

 

 

 

 

A join that joins a table to itself 

 

 

38.  

 

Evaluate this SELECT statement: 

  SELECT a.lname || ', ' || a.fname as "Patient", b.lname || ', ' || b.fname as "Physician", c.admission  FROM patient a  JOIN physician b  ON (b.physician_id = c.physician_id);  JOIN admission c  ON (a.patient_id = c.patient_id);    Which clause generates an error?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

JOIN physician b 

 

 

 

 

 

ON (b.physician_id = c.physician_id); (*) 

 

 

 

 

 

JOIN admission c 

 

 

 

 

 

 

 

 

 

 

 

 

 

ON (a.patient_id = c.patient_id) 

 

 

 

 

 

 

39.  

The primary advantage of using JOIN ON is:  

 

  Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

The join happens automatically based on matching column names and data types 

 

 

 

 

 

It will display rows that do not meet the join condition 

 

 

 

 

 

It permits columns with different names to be joined (*) 

 

 

 

 

 

It permits columns that don't have matching data types to be joined 

 

 

   

  40.   For which condition would you use an equijoin query with the USING keyword?  Mark for Review  

 

 

 

 

 

 

 

 

 

 

 

 

(1) Points   

 

 

 

 

 

 

 

 

 

  You need to perform a join of the CUSTOMER and ORDER tables but limit the number of  columns in the join condition. (*)   

 

 

 

 

 

  The ORDER table contains a column that has a referential constraint to a column in the  PRODUCT table.   

 

 

 

 

The CUSTOMER and ORDER tables have no columns with identical names. 

 

 

 

 

 

 

 

 

  The CUSTOMER and ORDER tables have a corresponding column, CUST_ID. The CUST_ID column  in the ORDER table contains null values that need to be displayed.    41.   Which query will retrieve all the rows in the EMPLOYEES table, even if there is no match in the  DEPARTMENTS table?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

 

 

SELECT e.last_name, e.department_id, d.department_name 

FROM employees e  RIGHT OUTER JOIN departments d ON (e.department_id = d.department_id);     

 

 

 

 

SELECT e.last_name, e.department_id, d.department_name 

 

 

FROM employees e  NATURAL JOIN departments d;     

 

 

 

 

 

 

SELECT e.last_name, e.department_id, d.department_name 

FROM employees e  LEFT OUTER JOIN departments d ON (e.department_id = d.department_id);    (*)   

 

 

 

 

SELECT e.last_name, e.department_id, d.department_name 

 

 

FROM employees e  JOIN departments d USING (e.department_id = d.department_id);     

 

 

 

42.    

Which type of join returns rows from one table that have NO direct match in the other table?  Mark for Review  

 

 

 

(1) Points   

 

 

 

 

 

 

 

 

equijoin 

 

 

 

 

 

self join 

 

 

 

 

 

outer join (*) 

 

 

 

 

 

 

 

 

 

 

 

 

 

natural join 

   

43.   What should be included in a SELECT statement to return NULL values from all tables?  Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

natural joins 

 

 

 

 

 

left outer joins 

 

 

 

 

 

full outer joins (*) 

 

 

 

 

 

right outer joins 

  44.   required?  

 

 

 

 

 

 

 

 

If a select list contains both a column as well as a group function then what clause is  Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

having clause 

 

 

 

 

 

join clause 

 

 

 

 

 

 

 

 

 

order by clause 

 

 

 

 

 

group by clause (*) 

 

 

 

 

  45.  

Evaluate this SELECT statement: 

  SELECT MIN(hire_date), dept_id  FROM employee  GROUP BY dept_id;    Which values are displayed?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

The earliest hire date in each department. (*) 

 

 

 

 

 

The the earliest hire date in the EMPLOYEE table. 

 

 

 

 

 

The latest hire date in the EMPLOYEE table. 

 

 

 

 

 

 

 

 

 

 

 

The hire dates in the EMPLOYEE table that contain NULL values 

 

 

   

 

 

 

 

 

46.  

Which statement about group functions is true?  

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

Group functions ignore null values. (*) 

 

 

 

 

 

Group functions can only be used in a SELECT list. 

 

 

 

 

 

Group functions can be used in a WHERE clause. 

 

 

 

 

 

A query that includes a group function in the SELECT list must include a GROUP BY clause. 

 

 

 

 

47.  

Group functions can be nested to a depth of?   Mark for Review  

 

 

 

 

 

 

 

 

 

 

 

(1) Points   

 

 

 

 

 

 

 

 

 

 

three 

 

 

 

 

 

four 

 

 

 

 

 

two (*) 

 

 

 

 

 

Group functions cannot be nested. 

 

 

 

 

 

 

48.   Which group function would you use to display the total of all salary values in the EMPLOYEE  table?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

SUM (*) 

 

 

 

 

 

AVG 

 

 

 

 

 

COUNT 

 

 

 

 

 

MAX 

 

 

 

 

 

 

 

 

 

49.  

The VENDORS table contains these columns: 

  VENDOR_ID NUMBER Primary Key  NAME VARCHAR2(30)  LOCATION_ID NUMBER  ORDER_DT DATE  ORDER_AMOUNT NUMBER(8,2)    Which two clauses represent valid uses of aggregate functions for this table?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

FROM MAX(order_dt) 

 

 

 

 

 

SELECT SUM(order_dt) 

 

 

 

 

 

SELECT SUM(order_amount) (*) 

 

 

 

 

 

WHERE MAX(order_dt) = order_dt 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SELECT location_id, MIN(AVG(order_amount)) (*) 

 

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 5 

Incorrect 

 

 

 

50.   You need to calculate the standard deviation for the cost of products produced in the  Birmingham facility. Which group function will you use? Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

STDEV 

 

 

 

 

 

 

 

STDDEV (*) 

 

 

 

 

 

VAR_SAMP 

 

 

 

 

 

VARIANCE 

 

 

 

 

 

 

51.   Group functions return a value for ________________ and ________________ null values in  their computations.   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

 

a row set, ignore (*) 

 

 

 

 

 

each row, ignore 

 

 

 

 

 

a row set, include 

 

 

 

 

 

each row, include 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  52.   You need to calculate the average salary of employees in each department. Which group  function will you use?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

AVG (*) 

 

 

 

 

 

MEAN 

 

 

 

 

 

MEDIAN 

 

 

 

 

 

 

 

 

 

 

 

AVERAGE 

53.    

The AVG, SUM, VARIANCE, and STDDEV functions can be used with which of the following?  Mark for Review  

 

 

(1) Points   

 

 

 

 

 

 

 

 

Only numeric data types (*) 

 

 

 

 

 

Integers only 

 

 

 

 

 

Any data type 

 

 

 

 

 

All except numeric 

 

 

 

 

 

 

 

 

  54.  

The PRODUCTS table contains these columns: 

  PROD_ID NUMBER(4)  PROD_NAME VARCHAR2(30)  PROD_CAT VARCHAR2(30)  PROD_PRICE NUMBER(3)  PROD_QTY NUMBER(4) 

  The following statement is issued:    SELECT AVG(prod_price, prod_qty)  FROM products;    What happens when this statement is issued?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

Both the average price and the average quantity of the products are returned. 

 

 

 

 

 

Only the average quantity of the products is returned. 

 

 

 

 

 

The values in the PROD_PRICE column and the PROD_QTY column are averaged together. 

 

 

 

 

 

An error occurs. (*) 

 

 

 

 

55.  

The EMPLOYEES table contains these columns: 

 

 

 

 

 

 

 

 

 

 

 

 

EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2(20)  FIRST_NAME VARCHAR2(20)  SALARY NUMBER(9,2)  HIRE_DATE DATE  BONUS NUMBER(7,2)  COMM_PCT NUMBER(4,2)    Which three functions could be used with the HIRE_DATE, LAST_NAME, or SALARY columns? (Choose  three.)   

Mark for Review  

(1) Points   

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

MAX (*) 

 

 

 

 

 

SUM 

 

 

 

 

 

AVG 

 

 

 

 

 

MIN (*) 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

COUNT (*) 

 

 

 

 

 

 

 

 

 

56.   Which SELECT statement will calculate the number of rows in the PRODUCTS table?   for Review   (1) Points   

 

 

 

 

 

 

 

 

SELECT COUNT(products); 

 

 

 

 

 

SELECT COUNT FROM products; 

 

 

 

 

 

SELECT COUNT (*) FROM products; (*) 

 

 

 

 

 

SELECT ROWCOUNT FROM products 

57.  

Examine the data from the LINE_ITEM table: 

 

 

 

 

 

 

 

 

  LINE_ITEM_ID   ORDER_ID  

PRODUCT_ID   PRICE   DISCOUNT 

890898 847589 848399 8.99  

0.10 

768385 862459 849869 5.60  

0.05 

867950 985490 945809 5.60 

Mark 

954039 439203 438925 5.25  

0.15 

543949 349302 453235 4.50    You query the LINE_ITEM table and a value of 5 is returned. Which SQL statement did you execute?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

SELECT COUNT(discount) FROM line_item; 

 

 

 

 

 

SELECT COUNT(*) FROM line_item; (*) 

 

 

 

 

 

SELECT SUM(discount) FROM line_item; 

 

 

 

 

 

SELECT AVG(discount) FROM line_it 

 

 

 

 

 

 

 

 

  58.  

The EMPLOYEES table contains these columns: 

  EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2(20)  FIRST_NAME VARCHAR2(20)  SALARY NUMBER(7,2) 

DEPARTMENT_ID NUMBER(9)    You need to display the number of employees whose salary is greater than $50,000? Which SELECT  would you use?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

SELECT * FROM employees 

 

WHERE salary > 50000;     

 

 

 

 

SELECT * FROM employees 

 

 

WHERE salary < 50000;     

 

 

 

 

SELECT COUNT(*) FROM employees 

 

 

WHERE salary < 50000;     

 

 

 

 

SELECT COUNT(*) FROM employees 

 

WHERE salary > 50000;   

 

(*)   

 

 

 

 

SELECT COUNT(*) FROM employees 

 

 

WHERE salary > 50000  GROUP BY employee_id, last_name, first_name, salary, department_id;     

 

 

 

59.  

Evaluate this SELECT statement: 

 

 

 

  SELECT COUNT(*)  FROM products;    Which statement is true?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

The number of rows in the table is displayed. (*) 

 

 

 

 

 

The number of unique PRODUCT_IDs in the table is displayed. 

 

 

 

 

 

 

 

 

 

 

 

An error occurs due to an error in the SELECT clause. 

 

 

 

 

 

An error occurs because no WHERE clause is included in the SELECT statement. 

 

 

 

 

 

 

60.  

Evaluate this statement: 

 

 

 

 

  SELECT department_id, AVG(salary)  FROM employees  WHERE job_id <> 69879  GROUP BY job_id, department_id  HAVING AVG(salary) > 35000  ORDER BY department_id;    Which clauses restricts the result? Choose two.   

Mark for Review  

(1) Points   

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

SELECT department_id, AVG(salary) 

 

 

 

 

 

 

 

 

 

 

 

 

WHERE job_id <> 69879 (*) 

 

 

 

 

 

GROUP BY job_id, department_id 

 

 

 

 

 

HAVING AVG(salary) > 35000 (*) 

61.  

The PLAYERS and TEAMS tables contain these columns: 

 

 

 

 

  PLAYERS  PLAYER_ID NUMBER NOT NULL, Primary Key  LAST_NAME VARCHAR2 (30) NOT NULL  FIRST_NAME VARCHAR2 (25) NOT NULL  TEAM_ID NUMBER  POSITION VARCHAR2 (25)    TEAMS  TEAM_ID NUMBER NOT NULL, Primary Key  TEAM_NAME VARCHAR2 (25)    You need to create a report that lists the names of each team with more than five pitchers.  Which SELECT statement will produce the desired result?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

 

SELECT t.team_name, COUNT(p.player_id) 

FROM players p, teams t ON (p.team_id = t.team_id)  WHERE UPPER(p.position) = 'PITCHER'  GROUP BY t.team_name;     

 

 

 

 

SELECT t.team_name, COUNT(p.player_id) 

 

 

FROM players JOIN teams t ON (p.team_id = t.team_id)  WHERE UPPER(p.position) = 'PITCHER' HAVING COUNT(p.player_id) > 5;     

 

 

 

 

SELECT t.team_name, COUNT(p.player_id) 

 

 

FROM players p, teams t ON (p.team_id = t.team_id)  WHERE UPPER(p.position) = 'PITCHER'  GROUP BY t.team_name HAVING COUNT(p.player_id) > 5;     

 

 

 

 

SELECT t.team_name, COUNT(p.player_id) 

 

 

FROM players p JOIN teams t ON (p.team_id = t.team_id)  WHERE UPPER(p.position) = 'PITCHER'  GROUP BY t.team_name HAVING COUNT(p.player_id) > 5; 

  (*)  62.  

The MANUFACTURER table contains these columns: 

  MANUFACTURER_ID NUMBER  MANUFACTURER_NAME VARCHAR2(30)  TYPE VARCHAR2(25)  LOCATION_ID NUMBER    You need to display the number of unique types of manufacturers at each location. Which SELECT  statement should you use?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

 

SELECT location_id, COUNT(DISTINCT type) 

FROM manufacturer  GROUP BY location_id;    (*)   

 

 

 

 

SELECT location_id, COUNT(DISTINCT type) 

 

FROM manufacturer;     

 

 

 

 

 

 

 

SELECT location_id, COUNT(type) 

FROM manufacturer  GROUP BY location_id;     

 

 

 

 

SELECT location_id, COUNT(DISTINCT type) 

 

 

FROM manufacturer  GROUP BY type;  3.  

The PLAYERS table contains these columns: 

  PLAYER_ID NUMBER PK  PLAYER_NAME VARCHAR2 (30)  TEAM_ID NUMBER  HIRE_DATE DATE  SALARY NUMBER (8,2)    Which two clauses represent valid uses of aggregate functions? (Choose three.)   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

 

 

 

 

ORDER BY AVG(salary) 

 

 

 

 

 

GROUP BY MAX(salary) (*) 

 

 

 

 

 

SELECT AVG(NVL(salary, 0)) (*) 

 

 

 

 

 

HAVING MAX(salary) > 10000 (*) 

 

 

 

 

 

WHERE hire_date > AVG(hire_date) 

 

 

 

 

65.  

Which statement about the GROUP BY clause is true?   Mark for Review  

 

 

 

 

 

 

 

 

 

 

 

(1) Points   

 

 

 

 

 

 

 

 

 

  To exclude rows before dividing them into groups using the GROUP BY clause, you use should a  WHERE clause. (*)   

 

 

 

 

You can use a column alias in a GROUP BY clause. 

 

 

 

 

 

 

 

 

 

By default, rows are not sorted when a GROUP BY clause is used. 

 

 

 

 

 

You must use the HAVING clause with the GROUP BY clause. 

 

 

 

 

66.  

Evaluate this SELECT statement: 

 

 

 

 

 

  SELECT SUM(salary), dept_id  FROM employee  GROUP BY dept_id;    How are the results of this statement sorted?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

Ascending order by dept_id (*) 

 

 

 

 

 

Descending order by dept_id 

 

 

 

 

 

Ascending order by cumulative salary 

 

 

 

 

 

 

 

 

 

 

 

 

 

Descending order by cumulative salary 

67.  

The EMPLOYEES table contains these columns: 

  ID_NUMBER NUMBER Primary Key  NAME VARCHAR2 (30)  DEPARTMENT_ID NUMBER  SALARY NUMBER (7,2)  HIRE_DATE DATE    Evaluate this SQL statement:    SELECT id_number, name, department_id, SUM(salary)  FROM employees  WHERE salary > 25000  GROUP BY department_id, id_number, name  ORDER BY hire_date;    Why will this statement cause an error?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

The HAVING clause is missing. 

 

 

 

 

 

 

The WHERE clause contains a syntax error. 

 

 

 

 

 

The SALARY column is NOT included in the GROUP BY clause. 

 

 

 

 

 

The HIRE_DATE column is NOT included in the GROUP BY clause. (*) 

 

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 6 

 

 

Incorrect   

 

 

 

Previous  68.  

 

 

 

 

 

 

 

Page 67 of 100  Next 

 

  Summary 

Examine the structures of the CUSTOMER and ORDER_HISTORY tables: 

  CUSTOMER  CUSTOMER_ID NUMBER(5)  NAME VARCHAR2(25)  CREDIT_LIMIT NUMBER(8,2)  OPEN_DATE DATE    ORDER_HISTORY  ORDER_ID NUMBER(5) 

CUSTOMER_ID NUMBER(5)  ORDER_DATE DATE  TOTAL NUMBER(8,2)    Which of the following scenarios would require a subquery to return the desired results?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

You need to display the date each customer account was opened. 

 

 

 

 

 

You need to display each date that a customer placed an order. 

 

 

 

 

 

You need to display all the orders that were placed on a certain date. 

 

 

 

 

 

You need to display all the orders that were placed on the same day as order number 25950. (*) 

 

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 6 

 

 

Incorrect   

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Previous 

Page 68 of 100  Next 

Summary 

  69.  

Which operator can be used with a multiple‐row subquery?  

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

IN (*) 

 

 

 

 

 

 

 

<> 

 

 

 

 

 

 

 



 

 

 

 

 

 

 

LIKE 

 

 

70.   You need to create a report to display the names of products with a cost value greater than the  average cost of all products. Which SELECT statement should you use?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

SELECT product_name 

 

 

FROM products  WHERE cost > (SELECT AVG(cost) FROM product);    (*) 

 

 

 

 

 

SELECT product_name 

 

 

FROM products  WHERE cost > AVG(cost);     

 

 

 

 

SELECT AVG(cost), product_name 

 

 

FROM products  WHERE cost > AVG(cost)  GROUP by product_name;     

 

 

 

 

SELECT product_name 

 

 

FROM (SELECT AVG(cost) FROM product)  WHERE cost > AVG(cost);    71.  

Using a subquery in which clause will return a syntax error?  

(1) Points   

 

 

 

 

 

 

 

 

WHERE 

 

 

 

 

Mark for Review  

 

 

 

 

 

FROM 

 

 

 

 

 

 

 

HAVING 

 

 

 

 

 

There are no places you cannot place subqueries. (*) 

 

 

72.   You need to display all the players whose salaries are greater than or equal to John Brown's  salary. Which comparison operator should you use?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

 

 



 

 

 

 

 

 

 



 

 

 

 

 

 

 

<= 

 

 

 

 

 

 

 

>= (*) 

 

 

 

 

 

 

 

 

 

 

 

 

 

73.  

Which best describes a single‐row subquery?   Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

a query that returns only one row from the inner SELECT statement (*) 

 

 

 

 

 

a query that returns one or more rows from the inner SELECT statement 

 

 

 

 

 

a query that returns only one column value from the inner SELECT statement 

 

 

 

 

 

a query that returns one or more column values from the inner SELECT statement 

 

 

 

 

74.  

Examine the structure of the EMPLOYEE, DEPARTMENT, and ORDERS tables. 

 

 

 

 

 

 

 

EMPLOYEE  EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2(25)  FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9) 

DEPARTMENT 

 

 

 

 

 

 

DEPARTMENT_ID NUMBER(9)  DEPARTMENT_NAME VARCHAR2(25)  CREATION_DATE DATE    ORDERS  ORDER_ID NUMBER(9)  EMPLOYEE_ID NUMBER(9)  DATE DATE  CUSTOMER_ID NUMBER(9)    You want to display all employees who had an order after the Sales department was established. Which  of the following constructs would you use?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

a group function 

 

 

 

 

 

a single‐row subquery (*) 

 

 

 

 

 

the HAVING clause 

 

 

 

 

 

a MERGE statement 

 

 

 

 

 

 

 

 

75.  

Which statement about the <> operator is true?  

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

The <> operator is NOT a valid SQL operator. 

 

 

 

 

 

The <> operator CANNOT be used in a single‐row subquery. 

 

 

 

 

 

The <> operator returns the same result as the ANY operator in a subquery. 

 

 

 

 

 

The <> operator can be used when a single‐row subquery returns only one row. (*) 

 

 

 

 

 

 

 

 

 

 

76.   Which operator or keyword cannot be used with a multiple‐row subquery?   Review   (1) Points   

 

 

 

 

 

 

 

 

ALL 

 

 

 

 

 

 

 

ANY 

 

 

 

 

 

 

 

 

Mark for 

 

= (*) 

 

 

 

 

 



 

 

   

 

 

 

 

 

 

 

 

 

 

 

    77.   Which comparison operator would you use to compare a value to every value returned  by a subquery?  Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

SOME 

 

 

 

 

 

 

 

ANY 

 

 

 

 

 

 

 

ALL (*) 

 

 

 

 

 

 

 

IN 

Correct      

Correct 

 

 

 

78.  

Evaluate this SELECT statement: 

  SELECT player_id, name  FROM players  WHERE team_id IN     (SELECT team_id      FROM teams      WHERE team_id > 300 AND salary_cap > 400000);    What would happen if the inner query returned a NULL value?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

No rows would be returned by the outer query. (*) 

 

 

 

 

 

A syntax error in the outer query would be returned. 

 

 

 

 

 

A syntax error in the inner query would be returned. 

 

 

 

 

 

All the rows in the PLAYER table would be returned by the outer query. 

 

 

 

 

 

 

 

 

 

 

 

 

  79.   subquery?  

 

 

 

What would happen if you attempted to use a single‐row operator with a multiple‐row  Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

An error would be returned. (*) 

 

 

 

 

 

No rows will be selected. 

 

 

 

 

 

All the rows will be selected. 

 

 

 

 

 

The data returned may or may not be correct. 

 

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 6 

Incorrect  80.  

 

 

 

 

 

 

 

 

 

Which best describes a multiple‐row subquery?  Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

 

A query that returns only one row from the inner SELECT statement 

 

 

 

 

 

 

A query that returns one or more rows from the inner SELECT statement (*) 

 

 

 

 

 

A query that returns only one column value from the inner SELECT statement 

 

 

 

 

 

A query that returns one or more  

81.  

Examine the structures of the PARTS and MANUFACTURERS tables: 

 

 

 

 

 

  PARTS:  PARTS_ID VARCHAR2(25)  PK PARTS_NAME VARCHAR2(50)  MANUFACTURERS_ID NUMBER  COST NUMBER(5,2)  PRICE NUMBER(5,2)    MANUFACTURERS:  ID NUMBER  PK NAME VARCHAR2(30)  LOCATION VARCHAR2(20)    Which SQL statement correctly uses a subquery?   

Mark for Review  

(1) Points 

 

 

 

 

 

 

 

 

 

 

 

UPDATE parts SET price = price * 1.15 

WHERE manufacturers_id =      (SELECT id      FROM manufacturers      WHERE UPPER(location) IN('ATLANTA ', 'BOSTON ', 'DALLAS '));     

 

 

 

 

SELECT parts_name, price, cost 

 

 

FROM parts  WHERE manufacturers_id !=     (SELECT id      FROM manufacturers      WHERE LOWER(name) = 'cost plus');     

 

 

 

 

SELECT parts_name, price, cost 

 

 

FROM parts  WHERE manufacturers_id IN     (SELECT id      FROM manufacturers m      JOIN part p ON (m.id = p.manufacturers_id)); 

  (*)   

 

 

 

 

SELECT parts_name 

 

 

FROM     (SELECT AVG(cost)      FROM manufacturers)      WHERE cost > AVG(cost);     

 

 

 

 

 

 

 

 

 

 

 

 

 

Correct    

 

 

 

Previous 

 

Correct 

 

Page 81 of 100  Next 

  Summary 

    82.   Which of the following best describes the meaning of the ANY operator?   Review   (1) Points   

 

 

 

 

 

 

 

 

 

Equal to any member in the list 

 

 

 

Mark for 

 

 

 

 

Compare value to each value returned by the subquery (*) 

 

 

 

 

 

Compare value to every value returned by the subquery 

 

 

 

 

 

Equal to each value in the list 

 

 

 

 

 

 

 

 

 

 

 

 

83.   Which statement about single‐row and multiple‐row subqueries is true?   Review  

Mark for 

(1) Points   

 

 

 

 

 

 

 

 

Multiple‐row subqueries cannot be used with the LIKE operator. (*) 

 

 

 

 

 

Single‐row operators can be used with both single‐row and multiple‐row subqueries. 

 

 

 

 

 

Multiple‐row subqueries can be used with both single‐row and multiple‐row operators. 

 

 

 

 

 

Multiple‐row subqueries can only be used in SEL 

 

 

 

 

 

 

 

 

 

  84.   Which statement about the ANY operator when used with a multiple‐row subquery is  true?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

The ANY operator compares every value returned by the subquery. (*) 

 

 

 

 

 

The ANY operator can be used with the DISTINCT keyword. 

 

 

 

 

 

The ANY operator is a synonym for the ALL operator. 

 

 

 

 

 

The ANY operator can be used with the LIKE and IN operators. 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

85.   You need to create a SELECT statement that contains a multiple‐row subquery, which  comparison operator(s) can you use?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

IN, ANY, and ALL (*) 

 

 

 

 

 

LIKE 

 

 

 

 

 

 

 

 

 

BETWEEN...AND... 

 

 

 

 

 

=, <, and > 

 

 

 

 

 

 

 

 

    86.   You need to display all the products that cost more than the maximum cost of  every product produced in Japan. Which multiple‐row comparison operator could you use?   Mark  for Review   (1) Points   

 

 

 

 

 

 

 

 

>ANY (*) 

 

 

 

 

 

NOT=ALL 

 

 

 

 

 

IN 

 

 

 

 

 

>IN 

 

 

 

 

 

 

 

 

  87.    

The STUDENTS table contains these columns: 

STU_ID NUMBER(9) NOT NULL  LAST_NAME VARCHAR2 (30) NOT NULL  FIRST_NAME VARCHAR2 (25) NOT NULL  DOB DATE  STU_TYPE_ID VARCHAR2(1) NOT NULL  ENROLL_DATE DATE    You create another table, named FT_STUDENTS, with an identical structure.You want to insert all full‐ time students, who have a STU_TYPE_ID value of "F", into the new table. You execute this INSERT  statement:    INSERT INTO ft_students     (SELECT stu_id, last_name, first_name, dob, stu_type_id, enroll_date     FROM students     WHERE UPPER(stu_type_id) = 'F');    What is the result of executing this INSERT statement?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

All full‐time students are inserted into the FT_STUDENTS table. (*) 

 

 

 

 

 

An error occurs because the FT_STUDENTS table already exists. 

 

 

 

 

 

 

 

 

 

 

An error occurs because you CANNOT use a subquery in an INSERT statement. 

 

 

 

 

 

An error occurs because the INSERT statement does NOT contain a VALUES clause. 

 

 

 

  88.  

The PRODUCTS table contains these columns: 

  PROD_ID NUMBER(4)  PROD_NAME VARCHAR2(25)  PROD_PRICE NUMBER(3)    You want to add the following row data to the PRODUCTS table:  (1) a NULL value in the PROD_ID column  (2) "6‐foot nylon leash" in the PROD_NAME column  (3) "10" in the PROD_PRICE column    You issue this statement:    INSERT INTO products  VALUES (null,'6‐foot nylon leash', 10);    What row data did you add to the table?   

Mark for Review  

(1) Points 

 

 

 

 

 

 

 

 

 

The row was created with the correct data in all three columns. (*) 

 

 

 

 

 

The row was created with the correct data in two of three columns. 

 

 

 

 

 

The row was created with the correct data in one of the three columns. 

 

 

 

 

 

The row was created completely wrong. No data ended up in the correct columns. 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

89.   You have been instructed to add a new customer to the CUSTOMERS table. Because the new  customer has not had a credit check, you should not add an amount to the CREDIT column.  The CUSTOMERS table contains these columns:    CUST_ID NUMBER(10)  COMPANY VARCHAR2(30)  CREDIT NUMBER(10)  POC VARCHAR2(30)  LOCATION VARCHAR2(30)    Which two INSERT statements will accomplish your objective?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

INSERT INTO customers (cust_id, company, poc, location) 

 

   

 

VALUES (200, 'InterCargo', 'tflanders', 'samerica');    (*)   

 

 

 

 

INSERT INTO customers 

 

 

VALUES (200, 'InterCargo', null, 'tflanders', 'samerica');    (*)   

 

 

 

 

INSERT INTO customers 

 

 

VALUES (cust_id, company, credit, poc, location) (200, 'InterCargo', 0, 'tflanders', 'samerica');     

 

 

 

 

INSERT INTO customers 

 

 

VALUES (200, InterCargo, 0, tflanders, samerica);  90.   You need to add a row to an existing table. Which DML statement should you use?   for Review  

Mark 

(1) Points   

 

 

 

 

 

 

 

 

UPDATE 

 

 

 

 

 

INSERT (*) 

 

 

 

 

 

DELETE 

 

 

 

 

 

CREATE 

 

 

 

 

 

 

 

 

  91.   You need to update both the DEPARTMENT_ID and LOCATION_ID columns in the EMPLOYEE  table using one UPDATE statement. Which clause should you include in the UPDATE statement to  update multiple columns?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

the USING clause 

 

 

 

 

 

the ON clause 

 

 

 

 

 

 

 

 

 

 

 

the WHERE clause 

 

 

 

 

 

the SET clause (*) 

 

 

  92.   What keyword in an UPDATE statement speficies the columns you want to change?  for Review  

Mark 

(1) Points   

 

 

 

 

 

 

 

 

SELECT 

 

 

 

 

 

 

 

WHERE 

 

 

 

 

 

 

 

SET (*) 

 

 

 

 

 

 

 

HAVING 

 

 

93.   One of the sales representatives, Janet Roper, has informed you that she was recently married,  and she has requested that you update her name in the employee database. Her new last name is  Cooper. Janet is the only person with the last name of Roper that is employed by the company. The  EMPLOYEES table contains these columns and all data is stored in lowercase:    EMP_ID NUMBER(10) PRIMARY KEY  LNAME VARCHAR2(20) 

FNAME VARCHAR2(20)  DEPT VARCHAR2 (20)  HIRE_DATE DATE  SALARY NUMBER(10)    Which UPDATE statement will accomplish your objective?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

UPDATE employees 

 

 

SET lname = 'cooper'  WHERE lname = 'roper';    (*)   

 

 

 

 

UPDATE employees lname = 'cooper' 

 

 

WHERE lname = 'roper';     

 

 

 

 

UPDATE employees 

 

 

SET lname = 'roper'  WHERE lname = 'cooper'; 

   

 

 

 

 

UPDATE employees 

 

 

SET cooper = 'lname'  WHERE lname = 'roper';     

 

 

 

 

 

 

  94.   Which two commands can be used to modify existing data in a database row?   Mark for  Review   (1) Points   

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

DELETE 

 

 

 

 

 

 

 

INSERT (*) 

 

 

 

 

 

SELECT 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

UPDATE (*) 

  95.   You need to delete a record in the EMPLOYEES table for Tim Jones, whose unique employee  identification number is 348. The EMPLOYEES table contains these columns:    ID_NUM NUMBER(5) PRIMARY KEY  LNAME VARCHAR2(20)  FNAME VARCHAR2(20)  ADDRESS VARCHAR2(30)  PHONE NUMBER(10)    Which DELETE statement will delete the appropriate record without deleting any additional records?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

DELETE FROM employees WHERE id_num = 348; (*) 

 

 

 

 

 

DELETE FROM employees WHERE lname = jones; 

 

 

 

 

 

DELETE * FROM employees WHERE id_num = 348; 

 

 

 

 

 

DELETE 'jones' FROM employees; 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 7 

Incorrect  96.  

 

The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns: 

  TEACHERS  TEACHER_ID NUMBER(5)  NAME VARCHAR2(25)  SUBJECT_ID NUMBER(5)  HIRE_DATE DATE  SALARY NUMBER(9,2)    CLASS_ASSIGNMENTS  CLASS_ID NUMBER(5)  TEACHER_ID NUMBER(5)  START_DATE DATE  MAX_CAPACITY NUMBER(3)    Which scenario would require a subquery to return the desired results?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

 

You need to display the start date for each class taught by a given teacher. 

 

 

 

 

 

You need to create a report to display the teachers who were hired more than five years ago. 

 

 

 

 

 

 

 

 

  You need to display the names of the teachers who teach classes that start within the next  week.   

 

 

 

 

 

  You need to create a report to display the teachers who teach more classes than the average  number of classes taught by each teacher. (*)   

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 7 

Incorrect  96.  

 

The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns: 

  TEACHERS  TEACHER_ID NUMBER(5)  NAME VARCHAR2(25)  SUBJECT_ID NUMBER(5)  HIRE_DATE DATE  SALARY NUMBER(9,2)    CLASS_ASSIGNMENTS  CLASS_ID NUMBER(5) 

TEACHER_ID NUMBER(5)  START_DATE DATE  MAX_CAPACITY NUMBER(3)    Which scenario would require a subquery to return the desired results?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

You need to display the start date for each class taught by a given teacher. 

 

 

 

 

 

You need to create a report to display the teachers who were hired more than five years ago. 

 

 

 

 

 

 

 

 

 

 

  You need to display the names of the teachers who teach classes that start within the next  week.   

 

 

 

 

 

  You need to create a report to display the teachers who teach more classes than the average  number of classes taught by each teacher. (*)     

 

97.  

Examine the structures of the PRODUCTS and SUPPLIERS tables: 

  SUPPLIERS  SUPPLIER_ID NUMBER NOT NULL, Primary Key 

SUPPLIER_NAME VARCHAR2 (25)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (11)    PRODUCTS  PRODUCT_ID NUMBER NOT NULL, Primary Key  PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER Foreign key to SUPPLIER_ID of the SUPPLIERS table  CATEGORY_ID NUMBER  QTY_PER_UNIT NUMBER  UNIT_PRICE NUMBER (7,2)  QTY_IN_STOCK NUMBER  QTY_ON_ORDER NUMBER  REORDER_LEVEL NUMBER    You want to delete any products supplied by the five suppliers located in Atlanta. Which script should  you use?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

DELETE FROM products 

WHERE supplier_id IN     (SELECT supplier_id 

 

 

    FROM suppliers      WHERE UPPER(city) = 'ATLANTA');    (*)   

 

 

 

 

DELETE FROM products 

 

 

WHERE UPPER(city) = 'ATLANTA';     

 

 

 

 

DELETE FROM products 

 

 

WHERE supplier_id =      (SELECT supplier_id      FROM suppliers      WHERE UPPER(city) = 'ATLANTA');     

 

 

 

 

DELETE FROM products 

 

 

WHERE supplier_id IN      (SELECT supplier_id      FROM suppliers      WHERE UPPER(city) = 'ALANTA');  97.  

Examine the structures of the PRODUCTS and SUPPLIERS tables: 

  SUPPLIERS  SUPPLIER_ID NUMBER NOT NULL, Primary Key  SUPPLIER_NAME VARCHAR2 (25)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (11)    PRODUCTS  PRODUCT_ID NUMBER NOT NULL, Primary Key  PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER Foreign key to SUPPLIER_ID of the SUPPLIERS table  CATEGORY_ID NUMBER  QTY_PER_UNIT NUMBER  UNIT_PRICE NUMBER (7,2)  QTY_IN_STOCK NUMBER  QTY_ON_ORDER NUMBER  REORDER_LEVEL NUMBER    You want to delete any products supplied by the five suppliers located in Atlanta. Which script should  you use?   

Mark for 

98.   What would happen if you issued a DELETE statement without a WHERE clause?   for Review   (1) Points 

Mark 

 

 

 

 

 

 

 

 

 

All the rows in the table would be deleted. (*) 

 

 

 

 

 

An error message would be returned. 

 

 

 

 

 

No rows would be deleted. 

 

 

 

 

 

Only one row would be deleted. 

 

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 7 

Incorrect 

 

 

 

 

 

 

 

 

 

  99.  

The EMPLOYEES table contains the following columns: 

  EMP_ID NUMBER(10) PRIMARY KEY  LNAME VARCHAR2(20)  FNAME VARCHAR2(20)  DEPT VARCHAR2(20)  HIRE_DATE DATE  SALARY NUMBER(9,2) 

BONUS NUMBER(9,2)    You want to execute one DML statement to change the salary of all employees in department 10 to  equal the new salary of employee number 89898. Currently, all employees in department 10 have the  same salary value. Which statement should you execute?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

UPDATE employee 

 

 

SET salary = SELECT salary  FROM employee  WHERE emp_id = 89898;     

 

 

 

 

UPDATE employee 

 

 

SET salary = (SELECT salary FROM employee WHERE emp_id = 89898);     

 

 

 

 

UPDATE employee 

 

 

SET salary = (SELECT salary FROM employee WHERE emp_id = 89898)  WHERE dept = 10;    (*) 

 

 

 

 

 

UPDATE employee 

 

 

SET salary = (SELECT salary FROM employee WHERE emp_id = 89898 AND dept = 10);    100.   for Review  

Which of the following represents the correct syntax for an INSERT statement?   Mark 

(1) Points   

 

 

 

 

 

 

 

 

INSERT VALUES INTO customers (3178 J. Smith 123 Main Street Nashville TN 37777; 

 

 

 

 

 

INSERT INTO customers VALUES '3178' 'J.' 'Smith' '123 Main Street' 'Nashville' 'TN' '37777'; 

 

 

 

 

  (*) 

INSERT INTO customers VALUES ('3178', 'J.', 'Smith', '123 Main Street', 'Nashville', 'TN', '37777'); 

 

 

 

 

 

INSERT customers VALUES 3178, J., Smith, 123 Main Street, Nashville, TN, 37777; 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Test: Mid Term Exam ‐ Database Programming with SQL          

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 1 Lesson 1    (Answer all questions in this section)             1.  Which SQL function can be used to remove heading or trailing characters (or both) from a character  string?  Mark for Review   (1) Points               LPAD           CUT           NVL2           TRIM (*)                     Correct                  2.  Which three statements about functions are true? (Choose three.)  Mark for Review   (1) Points              (Choose all correct answers)           

    The SYSDATE function returns the Oracle Server date and time. (*)           The ROUND number function rounds a value to a specified decimal place or the nearest whole  number. (*)           The CONCAT function can only be used on character strings, not on numbers.           The SUBSTR character function returns a portion of a string beginning at a defined character position  to a specified length. (*)                     Correct                  3.  You query the database with this SQL statement:     SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID"  FROM employee;      In which order are the functions evaluated?    Mark for Review   (1) Points               LOWER, SUBSTR, CONCAT      

    LOWER, CONCAT, SUBSTR           SUBSTR, CONCAT, LOWER           CONCAT, SUBSTR, LOWER (*)                     Correct                  4.  You need to return a portion of each employee's last name, beginning with the first character up to  the fifth character. Which character function should you use?  Mark for Review   (1) Points               INSTR           TRUNC           SUBSTR (*)           CONCAT                     Correct               

  5.  You issue this SQL statement:     SELECT INSTR ('organizational sales', 'al')   FROM dual;       Which value is returned by this command?    Mark for Review   (1) Points               1           2           13 (*)           17                     Correct                  6.  What will the following SQL statemtent display?     SELECT last_name, LPAD(salary, 15, '$')SALARY  

FROM employees;       Mark for Review   (1) Points               The last name of employees that have a salary that includes a $ in the value, size of 15 and the column  labeled SALARY.           The last name and the format of the salary limited to 15 digits to the left of the decimal and the  column labeled SALARY.           The last name and salary for all employees with the format of the salary 15 characters long, left‐ padded with the $ and the column labeled SALARY. (*)           The query will result in an error: "ORA‐00923: FROM keyword not found where expected."                     Correct                  7.  Evaluate this SELECT statement:    SELECT LENGTH(email)  FROM employee;     

What will this SELECT statement display?    Mark for Review   (1) Points               The longest e‐mail address in the EMPLOYEE table.           The email address of each employee in the EMPLOYEE table.           The number of characters for each value in the EMAIL column in the employees table. (*)           The maximum number of characters allowed in the EMAIL column.                     Correct                            Section 1 Lesson 2    (Answer all questions in this section)             8.  Which two functions can be used to manipulate number or date column values, but NOT character  column values? (Choose two.)  Mark for Review   (1) Points              (Choose all correct answers)   

            RPAD           TRUNC (*)           ROUND (*)           INSTR           CONCAT                     Correct                  9.  Which script displays '01‐MAY‐04' when the HIRE_DATE value is '20‐MAY‐04'?  Mark for Review   (1) Points               SELECT TRUNC(hire_date, 'MONTH')   FROM employee;  (*)             SELECT ROUND(hire_date, 'MONTH')   FROM employee; 

           SELECT ROUND(hire_date, 'MON')   FROM employee;             SELECT TRUNC(hire_date, 'MI')   FROM employee;                       Incorrect. Refer to Section 1 Lesson 3                  10.  You issue this SQL statement:     SELECT TRUNC(751.367,‐1)   FROM dual;      Which value does this statement display?    Mark for Review   (1) Points               700  

        750 (*)           751           751.3                     Correct                  Page 1 of 10     Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 1 Lesson 3    (Answer all questions in this section)             11.  Which SELECT statement will NOT return a date value?  Mark for Review   (1) Points          

    SELECT (30 + hire_date) + 1440/24   FROM employees;             SELECT (SYSDATE ‐ hire_date) + 10*8   FROM employees;  (*)             SELECT SYSDATE ‐ TO_DATE('25‐JUN‐02') + hire_date   FROM employees;             SELECT (hire_date ‐ SYSDATE) + TO_DATE('25‐JUN‐02')   FROM employees;                       Correct                  12.  You need to subtract three months from the current date. Which function should you use?  Mark  for Review   (1) Points               ROUND  

        TO_DATE           ADD_MONTHS (*)           MONTHS_BETWEEN                     Correct                  13.  You need to display the number of months between today's date and each employee's hiredate.  Which function should you use?  Mark for Review   (1) Points               ROUND           BETWEEN           ADD_MONTHS           MONTHS_BETWEEN (*)                     Correct       

          14.  You need to display the current year as a character value (for example: Two Thousand and One).  Which element would you use?  Mark for Review   (1) Points               RR           YY           YYYY           YEAR (*)                     Correct                  15.  Evaluate this SELECT statement:    SELECT SYSDATE + 30  FROM dual;      Which value is returned by the query?    Mark for Review   (1) Points  

            the current date plus 30 hours           the current date plus 30 days (*)           the current date plus 30 months           No value is returned because the SELECT statement generates an error.                     Correct                            Section 2 Lesson 1    (Answer all questions in this section)             16.  All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a  report that displays each employee's name and salary. Each employee's salary must be displayed in the  following format: $000,000.00. Which function should you include in a SELECT statement to achieve the  desired result?  Mark for Review   (1) Points               TO_CHAR (*)           TO_DATE  

        TO_NUMBER           CHARTOROWID                     Correct                  17.  Which best describes the TO_CHAR function?  Mark for Review   (1) Points               The TO_CHAR function can be used to specify meaningful column names in an SQL statement's result  set.           The TO_CHAR function can be used to remove text from column data that will be returned by the  database.           The TO_CHAR function can be used to display dates and numbers according to formatting conventions  that are supported by Oracle. (*)           The TO_CHAR function can only be used on DATE columns.                     Correct               

  18.  You have been asked to create a report that lists all customers who have placed orders of at least  $2,500. The report's date should be displayed in the Day, Date Month, Year format (For example,  Tuesday, 13 April, 2004 ). Which statement should you issue?  Mark for Review   (1) Points               SELECT companyname, TO_CHAR (sysdate, 'fmdd, dy month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;              SELECT companyname, TO_DATE (date, 'day, dd month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;             SELECT companyname, TO_DATE (sysdate, 'dd, dy month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;             SELECT companyname, TO_CHAR (sysdate, 'fmDay, dd Month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;  (*)        

              Incorrect. Refer to Section 2                  19.  Which SQL Statement should you use to display the prices in this format: "$00.30"?  Mark for  Review   (1) Points               SELECT TO_CHAR(price, '$99,900.99') FROM product; (*)           SELECT TO_CHAR(price, "$99,900.99") FROM product;           SELECT TO_CHAR(price, '$99,990.99') FROM product;           SELECT TO_NUMBER(price, '$99,900.99') FROM product;                     Correct                  20.  Which statement concerning single row functions is true?  Mark for Review   (1) Points               Single row functions can accept only one argument, but can return multiple values.           Single row functions cannot modify a data type.  

        Single row functions can be nested. (*)           Single row functions return one or more results per row.                     Correct                   Page 2 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 2 Lesson 1    (Answer all questions in this section)  

          21.  The EMPLOYEES table contains these columns:     EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2 (25)   FIRST_NAME VARCHAR2 (25)   SALARY NUMBER(6)       You need to create a report to display the salaries of all employees. Which script should you use to  display the salaries in format: "$45,000.00"?    Mark for Review   (1) Points               SELECT TO_CHAR(salary, '$999,999')   FROM employees;             SELECT TO_NUM(salary, '$999,990.99')   FROM employees;             SELECT TO_NUM(salary, '$999,999.00')   FROM employees;        

    SELECT TO_CHAR(salary, '$999,999.00')  FROM employees;  (*)                       Correct                            Section 2 Lesson 2    (Answer all questions in this section)             22.  Which statement about group functions is true?  Mark for Review   (1) Points               NVL and NVL2, but not COALESCE, can be used with group functions to replace null values.           NVL and COALESCE, but not NVL2, can be used with group functions to replace null values.           NVL, NVL2, and COALESCE can be used with group functions to replace null values. (*)           COALESCE, but not NVL and NVL2, can be used with group functions to replace null values.      

              Correct                  23.  The STYLES table contains this data:     STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL  85940  11.00    758960  SANDAL  86979        Evaluate this SELECT statement:     SELECT style_id, style_name, category, cost   FROM styles   WHERE style_name LIKE 'SANDAL' AND NVL(cost, 0) < 15.00   ORDER BY category, cost;     Which result will the query provide?    Mark for Review  

(1) Points               STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    758960  SANDAL  86979                 STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85909  12.00    968950 SANDAL  85909  10.00    869506  SANDAL  89690  15.00    758960  SANDAL  86979                 STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85909  12.00    968950  SANDAL  85909  10.00    758960  SANDAL  86979    869506  SANDAL  89690  15.00            

    STYLE_ID  STYLE_NAME  CATEGORY  COST    968950  SANDAL  85909  10.00    895840  SANDAL  85940  12.00    758960  SANDAL  86979      (*)                       Correct                  24.  You need to replace null values in the DEPT_ID column with the text "N/A". Which functions should  you use?  Mark for Review   (1) Points               TO_CHAR and NVL (*)           TO_CHAR and NULL           TO_CHAR and NULLIF           TO_NUMBER and NULLIF                     Correct   

                        Section 3 Lesson 2    (Answer all questions in this section)             25.  Your have two tables named EMPLOYEES and SALES. You want to identify the sales representatives  who have generated at least $100,000 in revenue.   Which query should you issue?  Mark for Review   (1) Points               SELECT e.fname, e.lname, s.sales   FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue > 100000;             SELECT e.fname, e.lname, s.sales   FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue >= 100000;  (*)             SELECT e.fname, e.lname, s.sales   FROM employees, sales   WHERE e.emp_id = s.emp_id AND revenue >= 100000; 

           SELECT fname, lname, sales   Q FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue > 100000;                       Correct                  26.  What is produced when a join condition is not specified in a multiple‐table query?  Mark for  Review   (1) Points               a self‐join           an outer join           an equijoin           a Cartesian product (*)                     Correct       

          27.  What happens when you create a Cartesian product?  Mark for Review   (1) Points               All rows from one table are joined to all rows of another table (*)           The table is joined to itself, one column to the next column, exhausting all possibilities           The table is joined to another equal table           All rows that do not match in the WHERE clause are displayed                     Correct                  28.  Which statement about the join syntax of a SELECT statement is true?  Mark for Review   (1) Points               The ON keyword must be included.           The JOIN keyword must be included.           The FROM clause represents the join criteria.      

    The WHERE clause represents the join criteria. (*)                     Correct                  29.  The CUSTOMERS and SALES tables contain these columns:   CUSTOMERS   CUST_ID NUMBER(10) PRIMARY KEY   COMPANY VARCHAR2(30)   LOCATION VARCHAR2(20)     SALES   SALES_ID NUMBER(5) PRIMARY KEY   CUST_ID NUMBER(10) FOREIGN KEY   TOTAL_SALES NUMBER(30)     Which SELECT statement will return the customer ID, the company and the total sales?     Mark for Review   (1) Points               SELECT c.cust_id, c.company, s.total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id (+); 

           SELECT cust_id, company, total_sales   FROM customers, sales   WHERE cust_id = cust_id;             SELECT c.cust_id, c.company, s.total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id;  (*)             SELECT cust_id, company, total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id;                       Correct                  30.  You need to create a report that lists all employees in the Sales department who do not earn  $25,000 per year. Which query should you issue to accomplish this task?  Mark for Review   (1) Points          

    SELECT last_name, first_name, salary   FROM employees   WHERE salary > 25000 AND dept_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary = 25000 AND dept_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary <= 25000 AND dept_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary != 25000 AND dept_id = 10;  (*)                       Correct               

   Page 3 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 3 Lesson 4    (Answer all questions in this section)             31.  Which two operators can be used in an outer join condition using the outer join operator (+)?   Mark for Review   (1) Points               AND and = (*)           OR and =           BETWEEN...AND... and IN  

        IN and =                     Correct                  32.  Which operator would you use after one of the column names in the WHERE clause when creating  an outer join?  Mark for Review   (1) Points               (+) (*)           *           +           =                     Correct                  33.  Which of the following best describes the function of an outer join?  Mark for Review   (1) Points          

    An outer join will return only those rows that do not meet the join criteria.           An outer join will return only data from the far left column in one table and the far right column in the  other table.           An outer join will return data only if both tables contain an identical pair of columns.           An outer join will return all rows that meet the join criteria and will return NULL values from one table  if no rows from the other table satisfy the join criteria. (*)                     Correct                            Section 4 Lesson 2    (Answer all questions in this section)             34.  You need to join all the rows in the EMPLOYEE table to all the rows in the EMP_REFERENCE table.  Which type of join should you create?  Mark for Review   (1) Points               An equijoin           A cross join (*)      

    An inner join           A full outer join                     Correct                  35.  Which statement about a natural join is true?  Mark for Review   (1) Points               Columns with the same names must have identical data types.           Columns with the same names must have the same precision and datatype. (*)           Columns with the same names must have compatible data types.           Columns with the same names cannot be included in the SELECT list of the query.                     Correct                  36.  A join between tables where the result set includes matching values from both tables but does  NOT return any unmatched rows could be called which of the following? (Choose three)  Mark for  Review  

(1) Points              (Choose all correct answers)                Equijoin (*)           Self join (*)           Nonequijoin           Simple join (*)           full outer join                     Incorrect. Refer to Section 4                            Section 4 Lesson 3    (Answer all questions in this section)             37.  Evaluate this SELECT statement:   

SELECT a.lname || ', ' || a.fname as "Patient", b.lname || ', ' || b.fname as "Physician", c.admission   FROM patient a   JOIN physician b   ON (b.physician_id = c.physician_id);   JOIN admission c   ON (a.patient_id = c.patient_id);     Which clause generates an error?    Mark for Review   (1) Points               JOIN physician b           ON (b.physician_id = c.physician_id); (*)           JOIN admission c           ON (a.patient_id = c.patient_id)                     Correct                  38.  Which of the following statements is the simplest description of a nonequijoin?  Mark for Review   (1) Points  

            A join condition containing something other than an equality operator (*)           A join condition that is not equal to other joins.           A join condition that includes the (+) on the left hand side.           A join that joins a table to itself                     Correct                  39.  Which SELECT clause creates an equijoin by specifying a column name common to both tables?   Mark for Review   (1) Points               A HAVING clause           The FROM clause           The SELECT clause           A USING clause (*)              

      Correct                  40.  For which condition would you use an equijoin query with the USING keyword?  Mark for Review   (1) Points               You need to perform a join of the CUSTOMER and ORDER tables but limit the number of columns in  the join condition. (*)           The ORDER table contains a column that has a referential constraint to a column in the PRODUCT  table.           The CUSTOMER and ORDER tables have no columns with identical names.           The CUSTOMER and ORDER tables have a corresponding column, CUST_ID. The CUST_ID column in the  ORDER table contains null values that need to be displayed.                     Correct                   Page 4 of 10                

     Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 4 Lesson 4    (Answer all questions in this section)             41.  What should be included in a SELECT statement to return NULL values from all tables?  Mark for  Review   (1) Points               natural joins           left outer joins           full outer joins (*)           right outer joins                     Incorrect. Refer to Section 4       

          42.  Which two sets of join keywords create a join that will include unmatched rows from the first table  specified in the SELECT statement?  Mark for Review   (1) Points               LEFT OUTER JOIN and FULL OUTER JOIN (*)           RIGHT OUTER JOIN and LEFT OUTER JOIN           USING and HAVING           OUTER JOIN and USING                     Correct                  43.  Which query will retrieve all the rows in the EMPLOYEES table, even if there is no match in the  DEPARTMENTS table?  Mark for Review   (1) Points               SELECT e.last_name, e.department_id, d.department_name   FROM employees e   RIGHT OUTER JOIN departments d ON (e.department_id = d.department_id);         

    SELECT e.last_name, e.department_id, d.department_name   FROM employees e   NATURAL JOIN departments d;              SELECT e.last_name, e.department_id, d.department_name   FROM employees e  LEFT OUTER JOIN departments d ON (e.department_id = d.department_id);   (*)             SELECT e.last_name, e.department_id, d.department_name   FROM employees e   JOIN departments d USING (e.department_id = d.department_id);                        Correct                            Section 5 Lesson 1    (Answer all questions in this section)          

  44.  What will the following SQL Statement do?   SELECT job_id, COUNT(*)   FROM employees   GROUP BY job_id;     Mark for Review   (1) Points               Displays all the employees and groups them by job.           Displays each job id and the number of people assigned to that job id. (*)           Displays only the number of job_ids.           Displays all the jobs with as many people as there are jobs.                     Correct                  45.  What is the best explanation as to why this SQL statement will NOT execute?   SELECT department_id "Department", AVG (salary)"Average"   FROM employees   GROUP BY Department;    Mark for Review  

(1) Points               Salaries cannot be averaged as not all the numbers will divide evenly.           You cannot use a column alias in the GROUP BY clause. (*)           The GROUP BY clause must have something to GROUP.           The department id is not listed in the departments table.                     Correct                  46.  Which statement about the GROUP BY clause is true?  Mark for Review   (1) Points               The first column listed in the GROUP BY clause is the most major grouping. (*)           The last column listed in the GROUP BY clause is the most major grouping.           The GROUP BY clause can contain an aggregate function.           A GROUP BY clause cannot be used without an ORDER BY clause.      

              Correct                  47.  Group functions can be nested to a depth of?  Mark for Review   (1) Points               three           four           two (*)           Group functions cannot be nested.                     Correct                            Section 5 Lesson 2    (Answer all questions in this section)             48.  Which group functions below act on character, number and date data types?  

(Choose more than one answer)  Mark for Review   (1) Points              (Choose all correct answers)                SUM           MAX (*)           MIN (*)           AVG           COUNT (*)                     Correct                  49.  You need to calculate the standard deviation for the cost of products produced in the Birmingham  facility. Which group function will you use?  Mark for Review   (1) Points               STDEV           STDDEV (*)  

        VAR_SAMP           VARIANCE                     Correct                  50.  The CUSTOMER table contains these columns:   CUSTOMER_ID NUMBER(9)   FNAME VARCHAR2(25)   LNAME VARCHAR2(30)   CREDIT_LIMIT NUMBER (7,2)  CATEGORY VARCHAR2(20)     You need to calculate the average credit limit for all the customers in each category. The average should  be calculated based on all the rows in the table excluding any customers who have not yet been  assigned a credit limit value. Which group function should you use to calculate this value?    Mark for Review   (1) Points               AVG (*)           SUM      

    COUNT           STDDEV                     Correct                   Page 5 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 5 Lesson 2    (Answer all questions in this section)          

  51.  Which group function would you use to display the average price of all products in the PRODUCTS  table?  Mark for Review   (1) Points               SUM           AVG (*)           COUNT           MAX                     Correct                  52.  Which group function would you use to display the highest salary value in the EMPLOYEE table?   Mark for Review   (1) Points               AVG           COUNT           MAX (*)      

    MIN                     Correct                  53.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        You need to determine the average payment amount made by each customer in January, February and  March of 2003. Which SELECT statement should you use?    Mark for Review   (1) Points               SELECT AVG(payment_amount)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '31‐MAR‐2003';   (*)             SELECT AVG(payment_amount)   FROM payment; 

           SELECT SUM(payment_amount)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' and '31‐MAR‐2003';             SELECT AVG(payment_amount)   FROM payment   WHERE TO_CHAR(payment_date) IN (JAN, FEB, MAR);                        Correct                  54.  The EMPLOYEES table contains these columns:   EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2(20)  FIRST_NAME VARCHAR2(20)   SALARY NUMBER(9,2)  HIRE_DATE DATE   BONUS NUMBER(7,2)   COMM_PCT NUMBER(4,2)    

Which three functions could be used with the HIRE_DATE, LAST_NAME, or SALARY columns? (Choose  three.)    Mark for Review   (1) Points              (Choose all correct answers)                MAX (*)           SUM           AVG           MIN (*)           COUNT (*)                     Correct                  55.  Group functions return a value for ________________ and ________________ null values in their  computations.  Mark for Review   (1) Points               a row set, ignore (*)  

        each row, ignore           a row set, include           each row, include                     Correct                            Section 5 Lesson 3    (Answer all questions in this section)             56.  Which statement about the COUNT function is true?  Mark for Review   (1) Points               The COUNT function ignores duplicates by default.           The COUNT function always ignores null values by default. (*)           The COUNT function can be used to find the maximum value in each column.      

    The COUNT function can be used to determine the number of unique, non‐null values in a column.                     Incorrect. Refer to Section 5                  57.  The EMPLOYEES table contains these columns:   EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   SALARY NUMBER(7,2)   DEPARTMENT_ID NUMBER(9)     You need to display the number of employees whose salary is greater than $50,000? Which SELECT  would you use?    Mark for Review   (1) Points               SELECT * FROM employees   WHERE salary > 50000;              SELECT * FROM employees   WHERE salary < 50000;         

    SELECT COUNT(*) FROM employees   WHERE salary < 50000;              SELECT COUNT(*) FROM employees   WHERE salary > 50000;   (*)             SELECT COUNT(*) FROM employees   WHERE salary > 50000   GROUP BY employee_id, last_name, first_name, salary, department_id;                        Correct                  58.  Group functions can avoid computations involving duplicate values by including which keyword?   Mark for Review   (1) Points               NULL           DISTINCT (*)      

    SELECT           UNLIKE                     Correct                  59.  Examine the data from the LINE_ITEM table:   LINE_ITEM_ID  ORDER_ID  PRODUCT_ID  PRICE  DISCOUNT    890898  847589  848399  8.99  0.10    768385  862459  849869  5.60  0.05    867950  985490  945809  5.60    954039  439203  438925  5.25  0.15    543949  349302  453235  4.50        You query the LINE_ITEM table and a value of 5 is returned. Which SQL statement did you execute?    Mark for Review   (1) Points               SELECT COUNT(discount) FROM line_item;           SELECT COUNT(*) FROM line_item; (*)      

    SELECT SUM(discount) FROM line_item;           SELECT AVG(discount) FROM line_item;                     Correct                            Section 6 Lesson 1    (Answer all questions in this section)             60.  The PRODUCTS table contains these columns:   PRODUCT_ID NUMBER(9) PK   CATEGORY_ID VARCHAR2(10)   LOCATION_ID NUMBER(9)   DESCRIPTION VARCHAR2(30)   COST NUMBER(7,2)   PRICE NUMBER(7,2)  QUANTITY NUMBER    You display the total of the extended costs for each product category by location. You need to include  only the products that have a price less than $25.00. The extended cost of each item equals the quantity  value multiplied by the cost value.   Which SQL statement will display the desired result? 

 Mark for Review   (1) Points               SELECT category_id, SUM(cost * quantity) TOTAL,location_id   FROM products   WHERE price > 25.00   GROUP BY category_id, location_id;             SELECT SUM(cost * quantity) TOTAL, location_id   FROM products   WHERE price < 25.00   GROUP BY location_id;             SELECT category_id, SUM(cost * quantity) TOTAL, location_id   FROM products   WHERE price < 25.00   GROUP BY category_id, location_id;  (*)             SELECT SUM(cost * quantity) TOTAL  FROM products   WHERE price < 25.00; 

                     Incorrect. Refer to Section 6                   Page 6 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 1    (Answer all questions in this section)             61.  Evaluate this SELECT statement:  SELECT SUM(salary), dept_id  

FROM employee   GROUP BY dept_id;     How are the results of this statement sorted?   Mark for Review   (1) Points               Ascending order by dept_id (*)           Descending order by dept_id           Ascending order by cumulative salary           Descending order by cumulative salary                     Correct                  62.  The PLAYERS table contains these columns:   PLAYER_ID NUMBER PK   PLAYER_NAME VARCHAR2 (30)   TEAM_ID NUMBER   HIRE_DATE DATE   SALARY NUMBER (8,2)  

  Which two clauses represent valid uses of aggregate functions? (Choose three.)    Mark for Review   (1) Points              (Choose all correct answers)                ORDER BY AVG(salary)           GROUP BY MAX(salary) (*)           SELECT AVG(NVL(salary, 0)) (*)           HAVING MAX(salary) > 10000 (*)           WHERE hire_date > AVG(hire_date)                     Correct                  63.  Evaluate this SELECT statement:   SELECT SUM(salary), dept_id, mgr_id  FROM employee   GROUP BY dept_id, mgr_id;  

  Which SELECT statement clause allows you to restrict the rows returned, based on a group function?    Mark for Review   (1) Points               HAVING SUM(salary) > 100000 (*)           WHERE SUM(salary) > 100000           WHERE salary > 100000           HAVING salary > 100000                     Incorrect. Refer to Section 6                  64.  The MANUFACTURER table contains these columns:   MANUFACTURER_ID NUMBER   MANUFACTURER_NAME VARCHAR2(30)   TYPE VARCHAR2(25)   LOCATION_ID NUMBER    You need to display the number of unique types of manufacturers at each location. Which SELECT  statement should you use?    Mark for Review  

(1) Points               SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer   GROUP BY location_id;  (*)             SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer;             SELECT location_id, COUNT(type)   FROM manufacturer   GROUP BY location_id;             SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer   GROUP BY type;                       Incorrect. Refer to Section 6       

          65.  Evaluate this SELECT statement:  SELECT SUM(salary), dept_id, department_name   FROM employee   WHERE dept_id = 1   GROUP BY department;     Which clause of the SELECT statement contains a syntax error?   Mark for Review   (1) Points               SELECT           FROM           WHERE           GROUP BY (*)                     Incorrect. Refer to Section 6                  66.  Which statement about the GROUP BY clause is true?  Mark for Review   (1) Points  

            To exclude rows before dividing them into groups using the GROUP BY clause, you use should a  WHERE clause. (*)           You can use a column alias in a GROUP BY clause.           By default, rows are not sorted when a GROUP BY clause is used.           You must use the HAVING clause with the GROUP BY clause.                     Correct                  67.  The PAYMENT table contains these columns:   PAYMENT_ID NUMBER(9) PK  PAYMENT_DATE DATE   CUSTOMER_ID NUMBER(9)     Which SELECT statement could you use to display the number of times each customer made a payment  between January 1, 2003 and June 30, 2003 ?   Mark for Review   (1) Points               SELECT customer_id, COUNT(payment_id)   FROM payment  

WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003'   GROUP BY customer_id;  (*)             SELECT COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003';             SELECT customer_id, COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003';             SELECT COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003'   GROUP BY customer_id;                       Incorrect. Refer to Section 6               

            Section 6 Lesson 2    (Answer all questions in this section)             68.  Which statement about subqueries is true?  Mark for Review   (1) Points               Subqueries should be enclosed in double quotation marks.           Subqueries cannot contain group functions.           Subqueries are often used in a WHERE clause to return values for an unknown conditional value. (*)           Subqueries generally execute last, after the main or outer query executes.                     Correct                  69.  Which operator can be used with subqueries that return only one row?  Mark for Review   (1) Points               LIKE (*)      

    ANY           ALL           IN                     Correct                  70.  If you use the equality operator (=) with a subquery, how many values can the subquery return?   Mark for Review   (1) Points               only 1 (*)           up to 2           up to 5           unlimited                     Correct               

   Page 7 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 2    (Answer all questions in this section)             71.  You need to display all the players whose salaries are greater than or equal to John Brown's salary.  Which comparison operator should you use?  Mark for Review   (1) Points               =           >           <=  

        >= (*)                     Correct                  72.  Examine the structures of the CUSTOMER and ORDER_HISTORY tables:   CUSTOMER   CUSTOMER_ID NUMBER(5)  NAME VARCHAR2(25)  CREDIT_LIMIT NUMBER(8,2)  OPEN_DATE DATE       ORDER_HISTORY  ORDER_ID NUMBER(5)  CUSTOMER_ID NUMBER(5)  ORDER_DATE DATE  TOTAL NUMBER(8,2)     Which of the following scenarios would require a subquery to return the desired results?    Mark for Review   (1) Points          

    You need to display the date each customer account was opened.           You need to display each date that a customer placed an order.           You need to display all the orders that were placed on a certain date.           You need to display all the orders that were placed on the same day as order number 25950. (*)                     Correct                            Section 6 Lesson 3    (Answer all questions in this section)             73.  You need to produce a report that contains all employee‐related information for those employees  who have Brad Carter as a supervisor. However, you are not sure which supervisor ID belongs to Brad  Carter. Which query should you issue to accomplish this task?  Mark for Review   (1) Points               SELECT *   FROM employees   WHERE supervisor_id =        (SELECT supervisor_id  

     FROM employees        WHERE last_name = 'Carter');              SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');              SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT employee_id        FROM supervisors        WHERE last_name = 'Carter');             SELECT *   FROM employees  WHERE supervisor_id =        (SELECT employee_id        FROM employees  

     WHERE last_name = 'Carter');   (*)                       Correct                  74.  Examine the structure of the EMPLOYEE, DEPARTMENT, and ORDERS tables.   EMPLOYEE  EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2(25)  FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)     DEPARTMENT   DEPARTMENT_ID NUMBER(9)  DEPARTMENT_NAME VARCHAR2(25)  CREATION_DATE DATE    ORDERS   ORDER_ID NUMBER(9)  EMPLOYEE_ID NUMBER(9)  DATE DATE   CUSTOMER_ID NUMBER(9) 

  You want to display all employees who had an order after the Sales department was established. Which  of the following constructs would you use?    Mark for Review   (1) Points               a group function           a single‐row subquery (*)           the HAVING clause           a MERGE statement                     Incorrect. Refer to Section 6                  75.  Which best describes a single‐row subquery?  Mark for Review   (1) Points               a query that returns only one row from the inner SELECT statement (*)           a query that returns one or more rows from the inner SELECT statement           a query that returns only one column value from the inner SELECT statement  

        a query that returns one or more column values from the inner SELECT statement                     Correct                            Section 6 Lesson 4    (Answer all questions in this section)             76.  Evaluate this SELECT statement:  SELECT customer_id, name   FROM customer   WHERE customer_id IN      (SELECT customer_id       FROM customer       WHERE state_id = 'GA' AND credit_limit > 500.00);     What would happen if the inner query returned null?    Mark for Review   (1) Points               An error would be returned.  

        No rows would be returned by the outer query. (*)           All the rows in the table would be selected.           Only the rows with CUSTOMER_ID values equal to null would be selected.                     Correct                  77.  Which of the following best describes the meaning of the ANY operator?  Mark for Review   (1) Points               Equal to any member in the list           Compare value to each value returned by the subquery (*)           Compare value to every value returned by the subquery           Equal to each value in the list                     Correct       

          78.  Which of the following statements contains a comparison operator that is used to restrict rows  based on a list of values returned from an inner query?  Mark for Review   (1) Points               SELECT description   FROM d_types   WHERE code IN (SELECT type_code FROM d_songs);             SELECT description  FROM d_types  WHERE code = ANY (SELECT type_code FROM d_songs);             SELECT description   FROM d_types   WHERE code <> ALL (SELECT type_code FROM d_songs);             All of the above. (*)                     Correct               

  79.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        This statement fails when executed:     SELECT customer_id, payment_type   FROM payment   WHERE payment_id =      (SELECT payment_id       FROM payment       WHERE payment_amount = 596.00 OR payment_date = '20‐MAR‐2003');     Which change could correct the problem?    Mark for Review   (1) Points               Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)           Remove the quotes surrounding the date value in the OR clause.           Remove the parentheses surrounding the nested SELECT statement.  

        Change the comparison operator to a single‐row operator.                     Correct                  80.  What is wrong with the following query?   SELECT employee_id, last_name   FROM employees   WHERE salary =     (SELECT MIN(salary) FROM employees GROUP BY department_id);     Mark for Review   (1) Points               Single rows contain multiple values and a logical operator is used.           Subquery returns more than one row and single row comparison operator is used. (*)           Subquery references the wrong table in the WHERE clause.           Nothing, it will run without problems.              

      Correct                   Page 8 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 4    (Answer all questions in this section)             81.  Evaluate this SELECT statement:  SELECT player_id, name   FROM players   WHERE team_id IN      (SELECT team_id  

    FROM teams       WHERE team_id > 300 AND salary_cap > 400000);     What would happen if the inner query returned a NULL value?    Mark for Review   (1) Points               No rows would be returned by the outer query. (*)           A syntax error in the outer query would be returned.           A syntax error in the inner query would be returned.           All the rows in the PLAYER table would be returned by the outer query.                     Correct                  82.  Evaluate this SELECT statement that includes a subquery:  SELECT last_name, first_name   FROM customer  WHERE area_code IN       (SELECT area_code FROM sales WHERE salesperson_id = 20);    

Which statement is true about the given subquery?    Mark for Review   (1) Points               The outer query executes before the nested subquery.           The results of the inner query are returned to the outer query. (*)           An error occurs if the either the inner or outer queries do not return a value.           Both the inner and outer queries must return a value, or an error occurs.                     Correct                  83.  Which statement about single‐row and multiple‐row subqueries is true?  Mark for Review   (1) Points               Multiple‐row subqueries cannot be used with the LIKE operator. (*)           Single‐row operators can be used with both single‐row and multiple‐row subqueries.           Multiple‐row subqueries can be used with both single‐row and multiple‐row operators.      

    Multiple‐row subqueries can only be used in SELECT statements.                     Correct                  84.  You need to create a SELECT statement that contains a multiple‐row subquery, which comparison  operator(s) can you use?  Mark for Review   (1) Points               IN, ANY, and ALL (*)           LIKE           BETWEEN...AND...           =, <, and >                     Correct                  85.  Which statement about the ANY operator when used with a multiple‐row subquery is true?  Mark  for Review   (1) Points          

    The ANY operator compares every value returned by the subquery. (*)           The ANY operator can be used with the DISTINCT keyword.           The ANY operator is a synonym for the ALL operator.           The ANY operator can be used with the LIKE and IN operators.                     Correct                  86.  What would happen if you attempted to use a single‐row operator with a multiple‐row subquery?   Mark for Review   (1) Points               An error would be returned. (*)           No rows will be selected.           All the rows will be selected.           The data returned may or may not be correct.                     Correct   

                        Section 7 Lesson 1    (Answer all questions in this section)             87.  You need to copy rows from the EMPLOYEE table to the EMPLOYEE_HIST table. What could you  use in the INSERT statement to accomplish this task?  Mark for Review   (1) Points               an ON clause           a SET clause           a subquery (*)           a function                     Correct                  88.  The PRODUCTS table contains these columns:  PRODUCT_ID NUMBER NOT NULL   PRODUCT_NAME VARCHAR2 (25) 

SUPPLIER_ID NUMBER NOT NULL  LIST_PRICE NUMBER (7,2)  COST NUMBER (5,2)  QTY_IN_STOCK NUMBER(4)  LAST_ORDER_DT DATE NOT NULL DEFAULT SYSDATE       Which INSERT statement will execute successfully?    Mark for Review   (1) Points               INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, 700); (*)           INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, SYSDATE);           INSERT INTO products(product_id, product_name) VALUES (2958, 'Cable');           INSERT INTO products(product_id, product_name, supplier_id VALUES (2958, 'Cable', 8690, SYSDATE);                     Correct                  89.  You have been instructed to add a new customer to the CUSTOMERS table. Because the new  customer has not had a credit check, you should not add an amount to the CREDIT column.   The CUSTOMERS table contains these columns:  

CUST_ID NUMBER(10)   COMPANY VARCHAR2(30)   CREDIT NUMBER(10)   POC VARCHAR2(30)   LOCATION VARCHAR2(30)    Which two INSERT statements will accomplish your objective?    Mark for Review   (1) Points              (Choose all correct answers)                INSERT INTO customers (cust_id, company, poc, location)   VALUES (200, 'InterCargo', 'tflanders', 'samerica');   (*)             INSERT INTO customers   VALUES (200, 'InterCargo', null, 'tflanders', 'samerica');   (*)             INSERT INTO customers   VALUES (cust_id, company, credit, poc, location) (200, 'InterCargo', 0, 'tflanders', 'samerica');     

        INSERT INTO customers   VALUES (200, InterCargo, 0, tflanders, samerica);                        Correct                 90.  Assume all the column names are correct. The following SQL statement will execute which of the  following?  INSERT INTO departments (department_id, department_name, manager_id, location_id)   VALUES (70, 'Public Relations', 100, 1700);     Mark for Review   (1) Points               100 will be inserted into the department_id column           1700 will be inserted into the manager_id column           70 will be inserted into the department_id column (*)           'Public Relations' will be inserted into the manager_name column              

      Correct                   Page 9 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 7 Lesson 2    (Answer all questions in this section)             91.  You need to remove a row from the EMPLOYEE table. Which statement would you use?  Mark for  Review   (1) Points               UPDATE with a WHERE clause      

    INSERT with a WHERE clause           DELETE with a WHERE clause (*)           MERGE with a WHERE clause                     Correct                  92.  One of your employees was recently married. Her employee ID is still 189, however, her last name  is now Rockefeller. Which SQL statement will allow you to reflect this change?  Mark for Review   (1) Points               INSERT INTO my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;           INSERT my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;           UPDATE INTO my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;           UPDATE my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189; (*)                     Correct               

  93.  You want to enter a new record into the CUSTOMERS table. Which two commands can be used to  create new rows?  Mark for Review   (1) Points               INSERT, CREATE           MERGE, CREATE           INSERT, MERGE (*)           INSERT, UPDATE                     Correct                  94.  The EMPLOYEES table contains the following columns:   EMP_ID NUMBER(10) PRIMARY KEY  LNAME VARCHAR2(20)  FNAME VARCHAR2(20)  DEPT VARCHAR2(20)   HIRE_DATE DATE   SALARY NUMBER(9,2)  BONUS NUMBER(9,2)    

You need to increase the salary for all employees in department 10 by 10 percent. You also need to  increase the bonus for all employees in department 10 by 15 percent. Which statement should you use?    Mark for Review   (1) Points               UPDATE employees  SET salary = salary * 1.10, bonus = bonus * 1.15   WHERE dept = 10;   (*)             UPDATE employees   SET salary = salary * 1.10 AND bonus = bonus * 1.15   WHERE dept = 10;              UPDATE employees   SET (salary = salary * 1.10) SET (bonus = bonus * 1.15)   WHERE dept = 10;              UPDATE employees  SET salary = salary * .10, bonus = bonus * .15   WHERE dept = 10;         

              Incorrect. Refer to Section 7                  95.  One of the sales representatives, Janet Roper, has informed you that she was recently married, and  she has requested that you update her name in the employee database. Her new last name is Cooper.  Janet is the only person with the last name of Roper that is employed by the company. The EMPLOYEES  table contains these columns and all data is stored in lowercase:   EMP_ID NUMBER(10) PRIMARY KEY   LNAME VARCHAR2(20)  FNAME VARCHAR2(20)  DEPT VARCHAR2 (20)  HIRE_DATE DATE  SALARY NUMBER(10)    Which UPDATE statement will accomplish your objective?   Mark for Review   (1) Points               UPDATE employees  SET lname = 'cooper'   WHERE lname = 'roper';   (*)             UPDATE employees lname = 'cooper'   WHERE lname = 'roper'; 

           UPDATE employees  SET lname = 'roper'   WHERE lname = 'cooper';             UPDATE employees  SET cooper = 'lname'   WHERE lname = 'roper';                       Correct                  96.  What would happen if you issued a DELETE statement without a WHERE clause?  Mark for Review   (1) Points               All the rows in the table would be deleted. (*)           An error message would be returned.           No rows would be deleted.      

    Only one row would be deleted.                     Correct                  97.  Which of the following represents the correct syntax for an INSERT statement?  Mark for Review   (1) Points               INSERT VALUES INTO customers (3178 J. Smith 123 Main Street Nashville TN 37777;           INSERT INTO customers VALUES '3178' 'J.' 'Smith' '123 Main Street' 'Nashville' 'TN' '37777';           INSERT INTO customers VALUES ('3178', 'J.', 'Smith', '123 Main Street', 'Nashville', 'TN', '37777'); (*)           INSERT customers VALUES 3178, J., Smith, 123 Main Street, Nashville, TN, 37777;                     Correct                  98.  The PLAYERS table contains these columns:  PLAYER_ID NUMBER NOT NULL  PLAYER_LNAME VARCHAR2(20) NOT NULL  PLAYER_FNAME VARCHAR2(10) NOT NULL  

TEAM_ID NUMBER   SALARY NUMBER(9,2)     You need to increase the salary of each player for all players on the Tiger team by 12.5 percent. The  TEAM_ID value for the Tiger team is 5960. Which statement should you use?    Mark for Review   (1) Points               UPDATE players (salary) SET salary = salary * 1.125;           UPDATE players SET salary = salary * .125 WHERE team_id = 5960;           UPDATE players SET salary = salary * 1.125 WHERE team_id = 5960; (*)           UPDATE players (salary) VALUES(salary * 1.125) WHERE team_id = 5960;                     Correct                  99.  You need to update the expiration date of products manufactured before June 30th . In which  clause of the UPDATE statement will you specify this condition?  Mark for Review   (1) Points               the ON clause      

    the WHERE clause (*)           the SET clause           the USING clause                     Correct                  100.  You need to delete a record in the EMPLOYEES table for Tim Jones, whose unique employee  identification number is 348. The EMPLOYEES table contains these columns:  ID_NUM NUMBER(5) PRIMARY KEY  LNAME VARCHAR2(20)  FNAME VARCHAR2(20)  ADDRESS VARCHAR2(30)  PHONE NUMBER(10)    Which DELETE statement will delete the appropriate record without deleting any additional records?    Mark for Review   (1) Points               DELETE FROM employees WHERE id_num = 348; (*)           DELETE FROM employees WHERE lname = jones;      

    DELETE * FROM employees WHERE id_num = 348;           DELETE 'jones' FROM employees;                     Correct                   Page 10 of 10                  1.  Which SQL function can be used to remove heading or trailing characters (or both) from a character  string?  Mark for Review   (1) Points               LPAD           CUT           NVL2           TRIM (*)      

              Correct               2.  Which three statements about functions are true? (Choose three.)  Mark for Review   (1) Points              (Choose all correct answers)                The SYSDATE function returns the Oracle Server date and time. (*)           The ROUND number function rounds a value to a specified decimal place or the nearest whole  number. (*)           The CONCAT function can only be used on character strings, not on numbers.           The SUBSTR character function returns a portion of a string beginning at a defined character position  to a specified length. (*)                     Correct         You query the database with this SQL statement:  

  SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID"  FROM employee;      In which order are the functions evaluated?    Mark for Review   (1) Points               LOWER, SUBSTR, CONCAT           LOWER, CONCAT, SUBSTR           SUBSTR, CONCAT, LOWER           CONCAT, SUBSTR, LOWER (*)                     Correct        4.  The STYLES table contains this data:    STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00   

869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL 85940  11.00    758960  SANDAL  86979 11.00        You query the database and return the value 40. Which script did you use?    Mark for Review   (1) Points               SELECT INSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;              SELECT INSTR(category, ‐2,2)   FROM styles   WHERE style_id = 895840;              SELECT SUBSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;  (*) 

           SELECT SUBSTR(category, ‐2,2)   FROM styles   WHERE style_id = 758960;                       Correct         You issue this SQL statement:     SELECT INSTR ('organizational sales', 'al')   FROM dual;       Which value is returned by this command?    Mark for Review   (1) Points               1           2           13 (*)  

        17                     Correct       6.  You need to display the number of characters in each customer's last name. Which function should  you use?  Mark for Review   (1) Points               LENGTH (*)           LPAD           COUNT           SUBSTR                     Correct                7.  What will the following SQL statemtent display?     SELECT last_name, LPAD(salary, 15, '$')SALARY   FROM employees; 

     Mark for Review   (1) Points               The last name of employees that have a salary that includes a $ in the value, size of 15 and the column  labeled SALARY.           The last name and the format of the salary limited to 15 digits to the left of the decimal and the  column labeled SALARY.           The last name and salary for all employees with the format of the salary 15 characters long, left‐ padded with the $ and the column labeled SALARY. (*)           The query will result in an error: "ORA‐00923: FROM keyword not found where expected."                     Correct       .  You issue this SQL statement:    SELECT ROUND (1282.248, ‐2)   FROM dual;      What value does this statement produce?    Mark for Review  

(1) Points               1200           1282           1282.25           1300 (*)                     Correct        9.  Evaluate this function: MOD (25, 2) Which value is returned?  Mark for Review   (1) Points               1 (*)           2           25           0              

      Correct        10.  Which comparison operator retrieves a list of values?  Mark for Review   (1) Points               IN (*)           LIKE           BETWEEN...IN...           IS NULL                     Incorrect. Refer to Section 1 Lesson 1        11.  Which function would you use to return the current database server date and time?  Mark for  Review   (1) Points               DATE           SYSDATE (*)           DATETIME      

    CURRENTDATE                     Correct        12.  You need to display the number of months between today's date and each employee's hiredate.  Which function should you use?  Mark for Review   (1) Points               ROUND           BETWEEN           ADD_MONTHS           MONTHS_BETWEEN (*)                     Correct        13.  You need to subtract three months from the current date. Which function should you use?  Mark  for Review   (1) Points               ROUND      

    TO_DATE           ADD_MONTHS (*)           MONTHS_BETWEEN                     Incorrect. Refer to Section 1               14.  Which of the following Date Functions will add calendar months to a date?  Mark for Review   (1) Points               Months + Calendar (Month)           ADD_MONTHS (*)           MONTHS + Date           NEXT_MONTH                     Correct        15.  Evaluate this SELECT statement: 

  SELECT SYSDATE + 30  FROM dual;      Which value is returned by the query?    Mark for Review   (1) Points               the current date plus 30 hours           the current date plus 30 days (*)           the current date plus 30 months           No value is returned because the SELECT statement generates an error.                     Incorrect. Refer to Section 1       16.  Which SQL Statement should you use to display the prices in this format: "$00.30"?  Mark for  Review   (1) Points               SELECT TO_CHAR(price, '$99,900.99') FROM product; (*)      

    SELECT TO_CHAR(price, "$99,900.99") FROM product;           SELECT TO_CHAR(price, '$99,990.99') FROM product;           SELECT TO_NUMBER(price, '$99,900.99') FROM product;                     Correct        17.  All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a  report that displays each employee's name and salary. Each employee's salary must be displayed in the  following format: $000,000.00. Which function should you include in a SELECT statement to achieve the  desired result?  Mark for Review   (1) Points               TO_CHAR (*)           TO_DATE           TO_NUMBER           CHARTOROWID                     Incorrect. Refer to Section 2        18.  The EMPLOYEES table contains these columns:  

  EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2 (25)   FIRST_NAME VARCHAR2 (25)   HIRE_DATE DATE       You need to display HIRE_DATE values in this format:       January 28, 2000     Which SELECT statement could you use?    Mark for Review   (1) Points               SELECT TO_CHAR(hire_date, Month DD, YYYY)  FROM employees;              SELECT TO_CHAR(hire_date, 'Month DD, YYYY')   FROM employees;  (*)        

    SELECT hire_date(TO_CHAR 'Month DD', ' YYYY')  FROM employees;             SELECT TO_CHAR(hire_date, 'Month DD', ' YYYY')   FROM employees;                       Incorrect. Refer to Section 2       19.  Which two statements concerning SQL functions are true? (Choose two.)  Mark for Review   (1) Points              (Choose all correct answers)                Character functions can accept numeric input.           Not all date functions return date values. (*)           Number functions can return number or character values.           Conversion functions convert a value from one data type to another data type. (*)           Single‐row functions manipulate groups of rows to return one result per group of rows.  

                  Incorrect. Refer to Section 2                20.  The EMPLOYEES table contains these columns:     EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2 (25)   FIRST_NAME VARCHAR2 (25)   SALARY NUMBER(6)       You need to create a report to display the salaries of all employees. Which script should you use to  display the salaries in format: "$45,000.00"?    Mark for Review   (1) Points               SELECT TO_CHAR(salary, '$999,999')   FROM employees;             SELECT TO_NUM(salary, '$999,990.99')   FROM employees;        

    SELECT TO_NUM(salary, '$999,999.00')   FROM employees;             SELECT TO_CHAR(salary, '$999,999.00')  FROM employees;  (*)                       Incorrect. Refer to Section 2       21.  If you use the RR format when writing a query using the date 27‐OCT‐17 and the year is 2001, what  year would be the result?  Mark for Review   (1) Points               2001           1901           2017 (*)           1917                     Correct   

     22.  Which of the following General Functions will return the first non‐null expression in the expression  list?  Mark for Review   (1) Points               NVL           NVL2           NULLIF           COALESCE (*)                     Correct       23.  When executed, which statement displays a zero if the TUITION_BALANCE value is zero and the  HOUSING_BALANCE value is null?  Mark for Review   (1) Points               SELECT NVL (tuition_balance + housing_balance, 0) "Balance Due"   FROM student_accounts;   (*)             SELECT NVL(tuition_balance, 0), NVL (housing_balance), tuition_balance + housing_balance "Balance  Due"  

FROM student_accounts;             SELECT tuition_balance + housing_balance   FROM student_accounts;             SELECT TO_NUMBER(tuition_balance, 0), TO_NUMBER (housing_balance, 0), tutition_balance +  housing_balance "Balance Due"   FROM student_accounts;                       Incorrect. Refer to Section 2               24.  Which statement about group functions is true?  Mark for Review   (1) Points               NVL and NVL2, but not COALESCE, can be used with group functions to replace null values.           NVL and COALESCE, but not NVL2, can be used with group functions to replace null values.           NVL, NVL2, and COALESCE can be used with group functions to replace null values. (*)           COALESCE, but not NVL and NVL2, can be used with group functions to replace null values.  

                  Correct       25.  When joining 3 tables in a SELECT statement, how many join conditions are needed in the WHERE  clause?  Mark for Review   (1) Points               0           1           2 (*)           3                     Correct        26.  You need to create a report that lists all employees in the Sales department who do not earn  $25,000 per year. Which query should you issue to accomplish this task?  Mark for Review   (1) Points               SELECT last_name, first_name, salary   FROM employees   WHERE salary > 25000 AND dept_id = 10; 

           SELECT last_name, first_name, salary   FROM employees   WHERE salary = 25000 AND dept_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary <= 25000 AND dept_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary != 25000 AND dept_id = 10;  (*)                       Correct       27.  The CUSTOMERS and SALES tables contain these columns:   CUSTOMERS   CUST_ID NUMBER(10) PRIMARY KEY   COMPANY VARCHAR2(30)  

LOCATION VARCHAR2(20)     SALES   SALES_ID NUMBER(5) PRIMARY KEY   CUST_ID NUMBER(10) FOREIGN KEY   TOTAL_SALES NUMBER(30)     Which SELECT statement will return the customer ID, the company and the total sales?     Mark for Review   (1) Points               SELECT c.cust_id, c.company, s.total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id (+);             SELECT cust_id, company, total_sales   FROM customers, sales   WHERE cust_id = cust_id;             SELECT c.cust_id, c.company, s.total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id; 

(*)             SELECT cust_id, company, total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id;                       Correct        28.  Your have two tables named EMPLOYEES and SALES. You want to identify the sales representatives  who have generated at least $100,000 in revenue.   Which query should you issue?  Mark for Review   (1) Points               SELECT e.fname, e.lname, s.sales   FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue > 100000;             SELECT e.fname, e.lname, s.sales   FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue >= 100000;  (*)    

        SELECT e.fname, e.lname, s.sales   FROM employees, sales   WHERE e.emp_id = s.emp_id AND revenue >= 100000;             SELECT fname, lname, sales   Q FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue > 100000;                       Correct        29.  What happens when you create a Cartesian product?  Mark for Review   (1) Points               All rows from one table are joined to all rows of another table (*)           The table is joined to itself, one column to the next column, exhausting all possibilities           The table is joined to another equal table           All rows that do not match in the WHERE clause are displayed      

              Incorrect. Refer to Section       30.  Which statement about the join syntax of a SELECT statement is true?  Mark for Review   (1) Points               The ON keyword must be included.           The JOIN keyword must be included.           The FROM clause represents the join criteria.           The WHERE clause represents the join criteria. (*)                     Incorrect. Refer to Section 3        31.  Which statement about outer joins is true?  Mark for Review   (1) Points               The tables must be aliased.           The FULL, RIGHT, or LEFT keyword must be included.           The OR operator cannot be used to link outer join conditions. (*)  

        Outer joins are always evaluated before other types of joins in the query.                     Correct        32.  Evaluate this SELECT statement:   SELECT p.player_id, m.last_name, m.first_name, t.team_name   FROM player p   LEFT OUTER JOIN player m ON (p.manager_id = m.player_id)   LEFT OUTER JOIN team t ON (p.team_id = t.team_id);     Which join is evaluated first?    Mark for Review   (1) Points               the self‐join of the player table (*)           the join between the player table and the team table on TEAM_ID           the join between the player table and the team table on MANAGER_ID           the join between the player table and the team table on PLAYER_ID              

      Correct       33.  Which two operators can be used in an outer join condition using the outer join operator (+)?  Mark  for Review   (1) Points               AND and = (*)           OR and =           BETWEEN...AND... and IN           IN and =                     Incorrect. Refer to Section 3        34.  Which statement about a natural join is true?  Mark for Review   (1) Points               Columns with the same names must have identical data types.           Columns with the same names must have the same precision and datatype. (*)           Columns with the same names must have compatible data types.      

    Columns with the same names cannot be included in the SELECT list of the query.                     Incorrect. Refer to Section 4        35.  You need to join all the rows in the EMPLOYEE table to all the rows in the EMP_REFERENCE table.  Which type of join should you create?  Mark for Review   (1) Points               An equijoin           A cross join (*)           An inner join           A full outer join                     Incorrect. Refer to Section 4       36.  Which of the following best describes a natural join?  Mark for Review   (1) Points               A join between two tables that includes columns that share the same name, datatypes and lengths (*)           A join that produces a Cartesian product  

        A join between tables where matching fields do not exist           A join that uses only one table                     Correct                37.  Which SELECT clause creates an equijoin by specifying a column name common to both tables?   Mark for Review   (1) Points               A HAVING clause           The FROM clause           The SELECT clause           A USING clause (*)                     Correct        38.  Which of the following statements is the simplest description of a nonequijoin?  Mark for Review   (1) Points  

            A join condition containing something other than an equality operator (*)           A join condition that is not equal to other joins.           A join condition that includes the (+) on the left hand side.           A join that joins a table to itself                     Incorrect. Refer to Section 4       39.  You created the CUSTOMERS and ORDERS tables by issuing these CREATE TABLE statements in  sequence:   CREATE TABLE customers   (custid varchar2(5),   companyname varchar2(30),   contactname varchar2(30),   address varchar2(30),   city varchar2(20),   state varchar2(30),   phone varchar2(20),   constraint pk_customers_01 primary key (custid));     CREATE TABLE orders   (orderid varchar2(5) constraint pk_orders_01 primary key,  

orderdate date,   total number(15),   custid varchar2(5) references customers (custid));     You have been instructed to compile a report to present the information about orders placed by  customers who reside in Nashville . Which query should you issue to achieve the desired results?    Mark for Review   (1) Points               SELECT custid, companyname   FROM customers   WHERE city = 'Nashville';              SELECT orderid, orderdate, total   FROM orders o   NATURAL JOIN customers c ON o.custid = c.custid   WHERE city = 'Nashville';              SELECT orderid, orderdate, total   FROM orders o   JOIN customers c ON o.custid = c.custid   WHERE city = 'Nashville';   (*)    

        SELECT orderid, orderdate, total   FROM orders   WHERE city = 'Nashville';                       Correct       40.  Below find the structure of the CUSTOMERS and SALES_ORDER tables:     CUSTOMERS  CUSTOMER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_NAME VARCHAR2 (30)   CONTACT_NAME VARCHAR2 (30)  CONTACT_TITLE VARCHAR2 (20)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (20)  COUNTRY_ID NUMBER Foreign key to COUNTRY_ID column of the COUNTRY table   PHONE VARCHAR2 (20)  FAX VARCHAR2 (20)   CREDIT_LIMIT NUMBER(7,2)   

  SALES_ORDER  ORDER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_ID NUMBER Foreign key to CUSTOMER_ID column of the CUSTOMER table  ORDER_DT DATE   ORDER_AMT NUMBER (7,2)   SHIP_METHOD VARCHAR2 (5)       You need to create a report that displays customers without a sales order. Which statement could you  use?    Mark for Review   (1) Points               SELECT c.customer_name   FROM customers c   WHERE c.customer_id not in (SELECT s.customer_id FROM sales_order s);   (*)             SELECT c.customer_name   FROM customers c, sales_order s   WHERE c.customer_id = s.customer_id(+);              SELECT c.customer_name  

FROM customers c, sales_order s   WHERE c.customer_id (+) = s.customer_id;              SELECT c.customer_name   FROM customers c  RIGHT OUTER JOIN sales_order s ON (c.customer_id = s.customer_id);                        Incorrect. Refer to Section 4        41.  Which query will retrieve all the rows in the EMPLOYEES table, even if there is no match in the  DEPARTMENTS table?  Mark for Review   (1) Points               SELECT e.last_name, e.department_id, d.department_name   FROM employees e   RIGHT OUTER JOIN departments d ON (e.department_id = d.department_id);              SELECT e.last_name, e.department_id, d.department_name   FROM employees e   NATURAL JOIN departments d;         

    SELECT e.last_name, e.department_id, d.department_name   FROM employees e  LEFT OUTER JOIN departments d ON (e.department_id = d.department_id);   (*)             SELECT e.last_name, e.department_id, d.department_name   FROM employees e   JOIN departments d USING (e.department_id = d.department_id);                        Incorrect. Refer to Section 4        42.  Which two sets of join keywords create a join that will include unmatched rows from the first table  specified in the SELECT statement?  Mark for Review   (1) Points               LEFT OUTER JOIN and FULL OUTER JOIN (*)           RIGHT OUTER JOIN and LEFT OUTER JOIN           USING and HAVING           OUTER JOIN and USING      

              Incorrect. Refer to Section 4       43.  What should be included in a SELECT statement to return NULL values from all tables?  Mark for  Review   (1) Points               natural joins           left outer joins           full outer joins (*)           right outer joins                     Incorrect. Refer to Section 4       44.  If a select list contains both a column as well as a group function then what clause is required?   Mark for Review   (1) Points               having clause           join clause      

    order by clause           group by clause (*)                     Incorrect. Refer to Section 5       45.  Evaluate this SELECT statement:  SELECT MAX(salary), dept_id   FROM employee   GROUP BY dept_id;     Which values are displayed?    Mark for Review   (1) Points               The highest salary for all employees.           The highest salary in each department. (*)           The employees with the highest salaries.           The employee with the highest salary for each department.              

      Incorrect. Refer to Section 5        46.  Which statement about group functions is true?  Mark for Review   (1) Points               Group functions ignore null values. (*)           Group functions can only be used in a SELECT list.           Group functions can be used in a WHERE clause.           A query that includes a group function in the SELECT list must include a GROUP BY clause.                     Incorrect. Refer to Section 5       47.  What is the best explanation as to why this SQL statement will NOT execute?   SELECT department_id "Department", AVG (salary)"Average"   FROM employees   GROUP BY Department;    Mark for Review   (1) Points               Salaries cannot be averaged as not all the numbers will divide evenly.      

    You cannot use a column alias in the GROUP BY clause. (*)           The GROUP BY clause must have something to GROUP.           The department id is not listed in the departments table.                     Incorrect. Refer to Section 5       48.  The AVG, SUM, VARIANCE, and STDDEV functions can be used with which of the following?  Mark  for Review   (1) Points               Only numeric data types (*)           Integers only           Any data type           All except numeric                     Correct        49.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT   

86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        You need to determine the average payment amount made by each customer in January, February and  March of 2003. Which SELECT statement should you use?    Mark for Review   (1) Points               SELECT AVG(payment_amount)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '31‐MAR‐2003';   (*)             SELECT AVG(payment_amount)   FROM payment;             SELECT SUM(payment_amount)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' and '31‐MAR‐2003';             SELECT AVG(payment_amount)  

FROM payment   WHERE TO_CHAR(payment_date) IN (JAN, FEB, MAR);                        Correct       50.  You need to calculate the standard deviation for the cost of products produced in the Birmingham  facility. Which group function will you use?  Mark for Review   (1) Points               STDEV           STDDEV (*)           VAR_SAMP           VARIANCE                     Incorrect. Refer to Section 5       51.  The VENDORS table contains these columns:   VENDOR_ID NUMBER Primary Key   NAME VARCHAR2(30)   LOCATION_ID NUMBER  

ORDER_DT DATE   ORDER_AMOUNT NUMBER(8,2)     Which two clauses represent valid uses of aggregate functions for this table?    Mark for Review   (1) Points              (Choose all correct answers)                FROM MAX(order_dt)           SELECT SUM(order_dt)           SELECT SUM(order_amount) (*)           WHERE MAX(order_dt) = order_dt           SELECT location_id, MIN(AVG(order_amount)) (*)                     Incorrect. Refer to Section 5       52.  Which group function would you use to display the lowest value in the SALES_AMOUNT column?   Mark for Review   (1) Points          

    AVG           COUNT           MAX           MIN (*)                     Incorrect. Refer to Section 5        53.  You need to calculate the average salary of employees in each department. Which group function  will you use?  Mark for Review   (1) Points               AVG (*)           MEAN           MEDIAN           AVERAGE                     Correct      

 54.  Which group functions below act on character, number and date data types?   (Choose more than one answer)  Mark for Review   (1) Points              (Choose all correct answers)                SUM           MAX (*)           MIN (*)           AVG           COUNT (*)                     Correct               55.  The PRODUCTS table contains these columns:  PROD_ID NUMBER(4)   PROD_NAME VARCHAR2(30)  PROD_CAT VARCHAR2(30)  PROD_PRICE NUMBER(3)  

PROD_QTY NUMBER(4)    The following statement is issued:     SELECT AVG(prod_price, prod_qty)   FROM products;     What happens when this statement is issued?    Mark for Review   (1) Points               Both the average price and the average quantity of the products are returned.           Only the average quantity of the products is returned.           The values in the PROD_PRICE column and the PROD_QTY column are averaged together.           An error occurs. (*)                     Incorrect. Refer to Section 5       56.  The STYLES table contains this data:   STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00   

968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL  85940  11.00    758960  SANDAL  86979        You issue this SELECT statement:    SELECT COUNT(category)  FROM styles;     Which value is displayed?    Mark for Review   (1) Points               0           6           7 (*)           The statement will NOT execute successfully.      

              Incorrect. Refer to Section 5        57.  Examine the data from the LINE_ITEM table:   LINE_ITEM_ID  ORDER_ID  PRODUCT_ID  PRICE  DISCOUNT    890898  847589  848399  8.99  0.10    768385  862459  849869  5.60  0.05    867950  985490  945809  5.60    954039  439203  438925  5.25  0.15    543949  349302  453235  4.50        You query the LINE_ITEM table and a value of 5 is returned. Which SQL statement did you execute?    Mark for Review   (1) Points               SELECT COUNT(discount) FROM line_item;           SELECT COUNT(*) FROM line_item; (*)           SELECT SUM(discount) FROM line_item;           SELECT AVG(discount) FROM line_item;              

      Incorrect. Refer to Section 5       58.  Group functions can avoid computations involving duplicate values by including which keyword?   Mark for Review   (1) Points               NULL           DISTINCT (*)           SELECT           UNLIKE                     Incorrect. Refer to Section 5               59.  Evaluate this SELECT statement:  SELECT COUNT(*)   FROM products;     Which statement is true?    Mark for Review   (1) Points          

    The number of rows in the table is displayed. (*)           The number of unique PRODUCT_IDs in the table is displayed.           An error occurs due to an error in the SELECT clause.           An error occurs because no WHERE clause is included in the SELECT statement.                     Incorrect. Refer to Section 5       60.  The PLAYERS table contains these columns:   PLAYER_ID NUMBER PK   PLAYER_NAME VARCHAR2 (30)   TEAM_ID NUMBER   HIRE_DATE DATE   SALARY NUMBER (8,2)     Which two clauses represent valid uses of aggregate functions? (Choose three.)    Mark for Review   (1) Points              (Choose all correct answers)                ORDER BY AVG(salary)  

        GROUP BY MAX(salary) (*)           SELECT AVG(NVL(salary, 0)) (*)           HAVING MAX(salary) > 10000 (*)           WHERE hire_date > AVG(hire_date)                     Incorrect. Refer to Section 6       61.  The MANUFACTURER table contains these columns:   MANUFACTURER_ID NUMBER   MANUFACTURER_NAME VARCHAR2(30)   TYPE VARCHAR2(25)   LOCATION_ID NUMBER    You need to display the number of unique types of manufacturers at each location. Which SELECT  statement should you use?    Mark for Review   (1) Points               SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer   GROUP BY location_id; 

(*)             SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer;             SELECT location_id, COUNT(type)   FROM manufacturer   GROUP BY location_id;             SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer   GROUP BY type;                       Correct        62.  What is the correct order of clauses in a SELECT statement?  Mark for Review   (1) Points               SELECT   FROM  

WHERE   ORDER BY   HAVING             SELECT   FROM   HAVING   GROUP BY   WHERE  ORDER BY              SELECT   FROM   WHERE  GROUP BY   HAVING   ORDER BY  (*)             SELECT   FROM   WHERE  

HAVING   ORDER BY   GROUP BY                       Correct        63.  The PRODUCTS table contains these columns:   PROD_ID NUMBER(4)   PROD_NAME VARCHAR(20)   PROD_CAT VARCHAR2(15)   PROD_PRICE NUMBER(5)  PROD_QTY NUMBER(4)     You need to identify the minimum product price in each product category.  Which statement could you use to accomplish this task?   Mark for Review   (1) Points               SELECT prod_cat, MIN (prod_price)   FROM products  GROUP BY prod_price;        

    SELECT prod_cat, MIN (prod_price)   FROM products  GROUP BY prod_cat;  (*)             SELECT MIN (prod_price), prod_cat  FROM products   GROUP BY MIN (prod_price), prod_cat;             SELECT prod_price, MIN (prod_cat)  FROM products  GROUP BY prod_cat;                       Correct        64.  The EMPLOYEES table contains these columns:   ID_NUMBER NUMBER Primary Key   NAME VARCHAR2 (30)   DEPARTMENT_ID NUMBER   SALARY NUMBER (7,2)   HIRE_DATE DATE 

  Evaluate this SQL statement:     SELECT id_number, name, department_id, SUM(salary)   FROM employees   WHERE salary > 25000   GROUP BY department_id, id_number, name   ORDER BY hire_date;     Why will this statement cause an error?    Mark for Review   (1) Points               The HAVING clause is missing.           The WHERE clause contains a syntax error.           The SALARY column is NOT included in the GROUP BY clause.           The HIRE_DATE column is NOT included in the GROUP BY clause. (*)                     Correct        65.  Evaluate this SELECT statement: 

SELECT SUM(salary), dept_id, department_name   FROM employee   WHERE dept_id = 1   GROUP BY department;     Which clause of the SELECT statement contains a syntax error?   Mark for Review   (1) Points               SELECT           FROM           WHERE           GROUP BY (*)                     Incorrect. Refer to Section       66.  The PLAYERS and TEAMS tables contain these columns:   PLAYERS   PLAYER_ID NUMBER NOT NULL, Primary Key   LAST_NAME VARCHAR2 (30) NOT NULL   FIRST_NAME VARCHAR2 (25) NOT NULL 

TEAM_ID NUMBER   POSITION VARCHAR2 (25)    TEAMS   TEAM_ID NUMBER NOT NULL, Primary Key   TEAM_NAME VARCHAR2 (25)     You need to create a report that lists the names of each team with more than five pitchers.   Which SELECT statement will produce the desired result?   Mark for Review   (1) Points               SELECT t.team_name, COUNT(p.player_id)  FROM players p, teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'PITCHER'   GROUP BY t.team_name;             SELECT t.team_name, COUNT(p.player_id)   FROM players JOIN teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'PITCHER' HAVING COUNT(p.player_id) > 5;             SELECT t.team_name, COUNT(p.player_id)   FROM players p, teams t ON (p.team_id = t.team_id)  

WHERE UPPER(p.position) = 'PITCHER'   GROUP BY t.team_name HAVING COUNT(p.player_id) > 5;              SELECT t.team_name, COUNT(p.player_id)   FROM players p JOIN teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'PITCHER'   GROUP BY t.team_name HAVING COUNT(p.player_id) > 5;   (*)                       Incorrect. Refer to Section 6        67.  Which statement about the GROUP BY clause is true?  Mark for Review   (1) Points               To exclude rows before dividing them into groups using the GROUP BY clause, you use should a  WHERE clause. (*)           You can use a column alias in a GROUP BY clause.           By default, rows are not sorted when a GROUP BY clause is used.           You must use the HAVING clause with the GROUP BY clause.      

              Incorrect. Refer to Section 6       68.  Using a subquery in which clause will return a syntax error?  Mark for Review   (1) Points               WHERE           FROM           HAVING           There are no places you cannot place subqueries. (*)                     Incorrect. Refer to Section 6        69.  Which of the following is TRUE regarding the order of subquery execution?  Mark for Review   (1) Points               The outer query is executed first           The subquery executes once after the main query           The subquery executes once before the main query (*)  

        The result of the main query is used with the subquery                     Correct        70.  The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns:   TEACHERS  TEACHER_ID NUMBER(5) Primary Key  NAME VARCHAR2 (25)   SUBJECT_ID NUMBER(5)       CLASS_ASSIGNMENTS  CLASS_ID NUMBER (5) Primary Key   TEACHER_ID NUMBER (5)  START_DATE DATE  MAX_CAPACITY NUMBER (3)    All MAX_CAPACITY values are greater than 10. Which two SQL statements correctly use subqueries?  (Choose two.)    Mark for Review   (1) Points              (Choose all correct answers)           

    SELECT *   FROM class_assignments   WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments);  (*)             SELECT *   FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE class_id = 45963);   (*)             SELECT *   FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);              SELECT *   FROM teachers   WHERE teacher_id LIKE (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);              SELECT *   FROM class_assignments   WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments GROUP BY teacher_id);  

                     Incorrect. Refer to Section 6                71.  The EMPLOYEES and ORDERS tables contain these columns:   EMPLOYEES  EMP_ID NUMBER(10) NOT NULL PRIMARY KEY   FNAME VARCHAR2(30)  LNAME VARCHAR2(30)  ADDRESS VARCHAR2(25)  CITY VARCHAR2(20)  STATE VARCHAR2(2)   ZIP NUMBER(9)  TELEPHONE NUMBER(10)     ORDERS   ORDER_ID NUMBER(10) NOT NULL PRIMARY KEY   EMP_ID NUMBER(10) NOT NULL FOREIGN KEY  ORDER_DATE DATE  TOTAL NUMBER(10)     Which SELECT statement will return all orders generated by a sales representative named Franklin  during the year 2001?    Mark for Review  

(1) Points               SELECT order_id, total   FROM ORDERS (SELECT emp_id FROM employees WHERE lname = 'Franklin')   WHERE order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01';              SELECT (SELECT emp_id FROM employees WHERE lname = 'Franklin') AND order_id, total   FROM ORDERS   WHERE order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01';              SELECT order_id, emp_id, total   FROM ORDERS   WHERE order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01' AND emp_id = 'Franklin';              SELECT order_id, total   FROM ORDERS  WHERE emp_id = (SELECT emp_id FROM employees WHERE lname = 'Franklin')   AND order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01';   (*)                

      Correct       72.  Examine the structures of the CUSTOMER and ORDER_HISTORY tables:   CUSTOMER   CUSTOMER_ID NUMBER(5)  NAME VARCHAR2(25)  CREDIT_LIMIT NUMBER(8,2)  OPEN_DATE DATE       ORDER_HISTORY  ORDER_ID NUMBER(5)  CUSTOMER_ID NUMBER(5)  ORDER_DATE DATE  TOTAL NUMBER(8,2)     Which of the following scenarios would require a subquery to return the desired results?    Mark for Review   (1) Points               You need to display the date each customer account was opened.           You need to display each date that a customer placed an order.           You need to display all the orders that were placed on a certain date.  

        You need to display all the orders that were placed on the same day as order number 25950. (*)                     Incorrect. Refer to Section 6       73.  You need to produce a report that contains all employee‐related information for those employees  who have Brad Carter as a supervisor. However, you are not sure which supervisor ID belongs to Brad  Carter. Which query should you issue to accomplish this task?  Mark for Review   (1) Points               SELECT *   FROM employees   WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');              SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');     

        SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT employee_id        FROM supervisors        WHERE last_name = 'Carter');             SELECT *   FROM employees  WHERE supervisor_id =        (SELECT employee_id        FROM employees        WHERE last_name = 'Carter');   (*)                       Incorrect. Refer to Section 6                74.  If a single‐row subquery returns a null value and uses the equality comparison operator, what will  the outer query return?  Mark for Review   (1) Points          

    no rows (*)           all the rows in the table           a null value           an error                     Incorrect. Refer to Section 6        75.  Which best describes a single‐row subquery?  Mark for Review   (1) Points               a query that returns only one row from the inner SELECT statement (*)           a query that returns one or more rows from the inner SELECT statement           a query that returns only one column value from the inner SELECT statement           a query that returns one or more column values from the inner SELECT statement                     Incorrect. Refer to Section 6      

 76.  Which best describes a multiple‐row subquery?  Mark for Review   (1) Points               A query that returns only one row from the inner SELECT statement           A query that returns one or more rows from the inner SELECT statement (*)           A query that returns only one column value from the inner SELECT statement           A query that returns one or more column values from the inner SELECT statement                     Incorrect. Refer to Section 6        77.  Which of the following statements contains a comparison operator that is used to restrict rows  based on a list of values returned from an inner query?  Mark for Review   (1) Points               SELECT description   FROM d_types   WHERE code IN (SELECT type_code FROM d_songs);             SELECT description  FROM d_types  WHERE code = ANY (SELECT type_code FROM d_songs); 

           SELECT description   FROM d_types   WHERE code <> ALL (SELECT type_code FROM d_songs);             All of the above. (*)                     Incorrect. Refer to Section 6        78.  Evaluate this SELECT statement:  SELECT customer_id, name   FROM customer   WHERE customer_id IN      (SELECT customer_id       FROM customer       WHERE state_id = 'GA' AND credit_limit > 500.00);     What would happen if the inner query returned null?    Mark for Review   (1) Points               An error would be returned.  

        No rows would be returned by the outer query. (*)           All the rows in the table would be selected.           Only the rows with CUSTOMER_ID values equal to null would be selected.                     Incorrect. Refer to Section 6       79.  You need to create a SELECT statement that contains a multiple‐row subquery, which comparison  operator(s) can you use?  Mark for Review   (1) Points               IN, ANY, and ALL (*)           LIKE           BETWEEN...AND...           =, <, and >                     Incorrect. Refer to Section 6       80.  Which of the following best describes the meaning of the ANY operator?  Mark for Review  

(1) Points               Equal to any member in the list           Compare value to each value returned by the subquery (*)           Compare value to every value returned by the subquery           Equal to each value in the list                     Correct        81.  Which operator or keyword cannot be used with a multiple‐row subquery?  Mark for Review   (1) Points               ALL           ANY           = (*)           >              

      Incorrect. Refer        82.  What would happen if you attempted to use a single‐row operator with a multiple‐row subquery?   Mark for Review   (1) Points               An error would be returned. (*)           No rows will be selected.           All the rows will be selected.           The data returned may or may not be correct.                     Incorrect. Refer to Section 6       83.  Evaluate this SQL statement:   SELECT employee_id, last_name, salary   FROM employees  WHERE department_id IN      (SELECT department_id      FROM employees      WHERE salary > 30000 AND salary < 50000);    Which values will be displayed?  

 Mark for Review   (1) Points               Only employees who earn more than $30,000.           Only employees who earn less than $50,000.           All employees who work in a department with employees who earn more than $30,000 and more  than $50,000.           All employees who work in a department with employees who earn more than $30,000, but less than  $50,000. (*)                     Correct       84.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        This statement fails when executed:     SELECT customer_id, payment_type  

FROM payment   WHERE payment_id =      (SELECT payment_id       FROM payment       WHERE payment_amount = 596.00 OR payment_date = '20‐MAR‐2003');     Which change could correct the problem?    Mark for Review   (1) Points               Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)           Remove the quotes surrounding the date value in the OR clause.           Remove the parentheses surrounding the nested SELECT statement.           Change the comparison operator to a single‐row operator.                     Incorrect. Refer to Section 6        85.  What is wrong with the following query?   SELECT employee_id, last_name   FROM employees   WHERE salary = 

   (SELECT MIN(salary) FROM employees GROUP BY department_id);     Mark for Review   (1) Points               Single rows contain multiple values and a logical operator is used.           Subquery returns more than one row and single row comparison operator is used. (*)           Subquery references the wrong table in the WHERE clause.           Nothing, it will run without problems.                     Incorrect. Refer to Section 6                86.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        This statement fails when executed:  

  SELECT payment_date, customer_id, payment_amount   FROM payment   WHERE payment_id =      (SELECT payment_id       FROM payment       WHERE payment_date >= '05‐JAN‐2002' OR payment_amount > 500.00);     Which change could correct the problem?    Mark for Review   (1) Points               Remove the subquery WHERE clause.           Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)           Include the PAYMENT_ID column in the select list of the outer query.           Remove the single quotes around the date value in the inner query WHERE clause.                     Incorrect. Refer to Section 6        87.  Assume all the column names are correct. The following SQL statement will execute which of the  following?  INSERT INTO departments (department_id, department_name, manager_id, location_id)  

VALUES (70, 'Public Relations', 100, 1700);     Mark for Review   (1) Points               100 will be inserted into the department_id column           1700 will be inserted into the manager_id column           70 will be inserted into the department_id column (*)           'Public Relations' will be inserted into the manager_name column                     Incorrect. Refer to Section 7        88.  You need to add a row to an existing table. Which DML statement should you use?  Mark for  Review   (1) Points               UPDATE           INSERT (*)           DELETE      

    CREATE                     Incorrect. Refer        89.  The PRODUCTS table contains these columns:  PRODUCT_ID NUMBER NOT NULL   PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER NOT NULL  LIST_PRICE NUMBER (7,2)  COST NUMBER (5,2)  QTY_IN_STOCK NUMBER(4)  LAST_ORDER_DT DATE NOT NULL DEFAULT SYSDATE       Which INSERT statement will execute successfully?    Mark for Review   (1) Points               INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, 700); (*)           INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, SYSDATE);           INSERT INTO products(product_id, product_name) VALUES (2958, 'Cable');      

    INSERT INTO products(product_id, product_name, supplier_id VALUES (2958, 'Cable', 8690, SYSDATE);                     Incorrect. Refer to Section 7        90.  You need to copy rows from the EMPLOYEE table to the EMPLOYEE_HIST table. What could you use  in the INSERT statement to accomplish this task?  Mark for Review   (1) Points               an ON clause           a SET clause           a subquery (*)           a function                     Correct               91.  One of the sales representatives, Janet Roper, has informed you that she was recently married, and  she has requested that you update her name in the employee database. Her new last name is Cooper.  Janet is the only person with the last name of Roper that is employed by the company. The EMPLOYEES  table contains these columns and all data is stored in lowercase:   EMP_ID NUMBER(10) PRIMARY KEY   LNAME VARCHAR2(20) 

FNAME VARCHAR2(20)  DEPT VARCHAR2 (20)  HIRE_DATE DATE  SALARY NUMBER(10)    Which UPDATE statement will accomplish your objective?   Mark for Review   (1) Points               UPDATE employees  SET lname = 'cooper'   WHERE lname = 'roper';   (*)             UPDATE employees lname = 'cooper'   WHERE lname = 'roper';             UPDATE employees  SET lname = 'roper'   WHERE lname = 'cooper';             UPDATE employees 

SET cooper = 'lname'   WHERE lname = 'roper';                       Incorrect. Refer to Section 7       92.  You need to remove a row from the EMPLOYEE table. Which statement would you use?  Mark for  Review   (1) Points               UPDATE with a WHERE clause           INSERT with a WHERE clause           DELETE with a WHERE clause (*)           MERGE with a WHERE clause                     Correct        93.  Examine the structures of the PLAYERS, MANAGERS, and TEAMS tables:  PLAYERS  PLAYER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (30) 

FIRST_NAME VARCHAR2 (25)  TEAM_ID NUMBER  MGR_ID NUMBER  SIGNING_BONUS NUMBER(9,2)  SALARY NUMBER(9,2)    MANAGERS  MANAGER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (20)  FIRST_NAME VARCHAR2 (20)  TEAM_ID NUMBER    TEAMS  TEAM_ID NUMBER Primary Key  TEAM_NAME VARCHAR2 (20)  OWNER_LAST_NAME VARCHAR2 (20)  OWNER_FIRST_NAME VARCHAR2 (20)    Which situation would require a subquery to return the desired result?    Mark for Review   (1) Points               To display the names each player on the Lions team           To display the maximum and minimum player salary for each team  

        To display the names of the managers for all the teams owned by a given owner (*)           To display each player, their manager, and their team name for all teams with a id value greater than  5000                     Correct        94.  The EMPLOYEES table contains the following columns:   EMP_ID NUMBER(10) PRIMARY KEY   LNAME VARCHAR2(20)   FNAME VARCHAR2(20)  DEPT VARCHAR2(20)  HIRE_DATE DATE   SALARY NUMBER(9,2)   BONUS NUMBER(9,2)     You want to execute one DML statement to change the salary of all employees in department 10 to  equal the new salary of employee number 89898. Currently, all employees in department 10 have the  same salary value. Which statement should you execute?    Mark for Review   (1) Points               UPDATE employee   SET salary = SELECT salary   FROM employee  

WHERE emp_id = 89898;             UPDATE employee   SET salary = (SELECT salary FROM employee WHERE emp_id = 89898);             UPDATE employee  SET salary = (SELECT salary FROM employee WHERE emp_id = 89898)   WHERE dept = 10;   (*)             UPDATE employee   SET salary = (SELECT salary FROM employee WHERE emp_id = 89898 AND dept = 10);                       Incorrect. Refer to Section 7        95.  Evaluate this statement: DELETE FROM customer; Which statement is true?  Mark for Review   (1) Points               The statement deletes all the rows from the CUSTOMER table. (*)      

    The statement deletes the CUSTOMER column.           The statement deletes the first row in the CUSTOMERS table.           The statement removes the structure of the CUSTOMER table from the database.                     Incorrect. Refer to Section 7       96.  When the WHERE clause is missing in a DELETE statement, what is the result?  Mark for Review   (1) Points               All rows are deleted from the table. (*)           The table is removed from the database.           An error message is displayed indicating incorrect syntax.           Nothing. The statement will not execute.                     Correct                97.  The PLAYERS table contains these columns: 

PLAYER_ID NUMBER NOT NULL  PLAYER_LNAME VARCHAR2(20) NOT NULL  PLAYER_FNAME VARCHAR2(10) NOT NULL   TEAM_ID NUMBER   SALARY NUMBER(9,2)     You need to increase the salary of each player for all players on the Tiger team by 12.5 percent. The  TEAM_ID value for the Tiger team is 5960. Which statement should you use?    Mark for Review   (1) Points               UPDATE players (salary) SET salary = salary * 1.125;           UPDATE players SET salary = salary * .125 WHERE team_id = 5960;           UPDATE players SET salary = salary * 1.125 WHERE team_id = 5960; (*)           UPDATE players (salary) VALUES(salary * 1.125) WHERE team_id = 5960;                     Correct        98.  You need to delete a record in the EMPLOYEES table for Tim Jones, whose unique employee  identification number is 348. The EMPLOYEES table contains these columns:  ID_NUM NUMBER(5) PRIMARY KEY  LNAME VARCHAR2(20) 

FNAME VARCHAR2(20)  ADDRESS VARCHAR2(30)  PHONE NUMBER(10)    Which DELETE statement will delete the appropriate record without deleting any additional records?    Mark for Review   (1) Points               DELETE FROM employees WHERE id_num = 348; (*)           DELETE FROM employees WHERE lname = jones;           DELETE * FROM employees WHERE id_num = 348;           DELETE 'jones' FROM employees;                     Correct       99.  You need to update the expiration date of products manufactured before June 30th . In which  clause of the UPDATE statement will you specify this condition?  Mark for Review   (1) Points               the ON clause           the WHERE clause (*)  

        the SET clause           the USING clause                     Correct        100.  You need to update both the DEPARTMENT_ID and LOCATION_ID columns in the EMPLOYEE table  using one UPDATE statement. Which clause should you include in the UPDATE statement to update  multiple columns?  Mark for Review   (1) Points               the USING clause           the ON clause           the WHERE clause           the SET clause (*)                     Correct         

               1.

Once you have learned how to write programs and build systems, you no longer need any input or involvement from any users, as you are perfectly capable of delivering the systems the business needs and wants. True. All that perfect systems need are correct programs. False. Business requirements can and will change. For instance new legal requirements may arise. (*) True. All users do is delay systems delivery with their forever changing minds and new requirements. True. Users never know what they want anyway, so building systems are best left to the professionals.

2. Information which was gained from data is the same as: (Choose Two)

3.

4.

5.

6.

7.

Knowledge (*) Raw Materials Intelligence (*) There is no difference between data and information Consider your school library. It will have a database with transaction details of which student borrows which books. Is details of the total number of books out on loan in one given month Data or Information? Data Information (*) Both Neither The first step in system development is to document the requirements. Why? Wrong. A blueprint for the database design is not needed. We can just start coding straight away - It clarifies what a business wants to accomplish, and provides measures for deciding if the system delivers all that is required. (*) - It allows application development to be conducted without having to consider database design. - It keeps businesses honest Databases were invented in 1989. True or False? True - False (*) Oracle Database Software do not provide or does not comprise of which functionality? Graphical User Interface - Internet Browser - Server - Operating System (*) An entity is instantiated as a ? experience - instance - table (*) - none of the above

8.

9.

10.

11.

12.

13.

14. 15.

16.

17.

18.

19.

20.

Relationship names are usually verbs. True or False? True (*) - False The entity/relationship model is created before the physical database design model. True or False? True (*) - False All of the following could be attributes of an ENTITY called PERSON except one. Select the incorrect one: Haircolor - Weight - Gender - Natacha Hansen (*) An entity can have many Unique Identifiers. True or False? True (*) - False Volatile entities have special requirements and need special attention when you are doing data modelling. True or False? True (*) - False Which of the following entities most likely contains valid attributes? - Entity: Home. Attributes: Number of Bedrooms, Owner, Address, Date Built (*) - Entity: Pet. Attributes: Name, Birthdate, Owner (*) - Entity: Car. Attributes: Owner Occupation, Owner Salary, Speed  - Entity: Mother. Attributes: Name, Birthdate, Occupation, Salary Relationship Names are optional. True or False? True - False (*)  Which of the following are valid relationship degrees 1:1 (*) 1:M (*) 1:O O:O Which symbol is used to show that a particular attribute is mandatory? * (*) O # & The many end of a Relationship is called: Gulls Foot Pigs Ear Crows Ear Crows Foot (*) When reading a relationship between 2 entities, the relationship is read both from left to right and right to left. True or False? True (*) False All ER diagrams must have one of each of the following: One or more Entities (*) Relationships between entities (*) Arcs At least one supertype and subtype Which of the following are suitable Entity names? (Choose Two) DOGS

21.

22. 23.

24.

25.

26. 27.

28.

29.

30.

31.

ANIMAL (*) ANIMALS DOG (*) Which of the following is true about subtypes? One instance may belong to two subtypes of the same supertype. Subtypes must be mutually exclusive. (*) Subtypes must not be mutually exclusive. Subtype entities may not have relationships to the other subtype entities, only the supertype itself. All instances of the supertype must be an instance of one of the subtypes. True or False? True (*) False All instances of the subtypes can be an instance of the supertype but do not have to. True or False? True False (*) How would you model a business rule that states that girls and boys may not attend classes together? Use a supertype Use two subtypes with relationships from class to student gender (*) Make the attribute Gender mandatory You cannot model this. You need to document it. Can all constraints be modeled on an ER diagram? No, in which case you should let the database administrator handle them No, but you just explain them to the users so they can enforce them Yes, all constraints must be modeled and shown on the ER diagram No, so you should list them on a separate document to be handled programmatically (*) Business rules are not important to data modelers. True or False? True False (*) Why is it important to identify and document structural rules? Ensures we know what data to store and how that data interrelate. (*) Ensures nothing. There is no benefits to be gained from documenting your Structural Business Rules. We need to concentrate on the Procedural Business Rules only. Ensures we know what Information to store and how that Information interrelate. All of the Above. A non-transferable relationship means the detail cannot be changed to point to a new master. True or False? True (*) False If two entities have two relationships between them, these relationships can be either _____________ or _____________ ? (Choose Two) Redundant or Required (In which case they would depict different relationships) (*) Replicated or Required (In which case they would depict different relationships) Resourced and Really Good Redundant and Replicated What uncommon relationship is described by the statements: "Each DNA SAMPLE may be taken from one and only one PERSON and each PERSON may provide one and only one DNA SAMPLE" One to Many Optional One to Many Mandatory One to One Optional (*) Many to Many Mandatory How do you include a relationship as part of the UID for an entity? By barring the relationship in question (*)

32.

33.

34.

35.

36.

37.

38.

39.

40.

41.

42.

By reporting it in an external document By including the UID from the parent entity as an attribute in the entity You cannot model that. Many to many relationships must be left in the Model. It is important to have them documented as M-M. True or False? True False (*) The first UID for an entity is called the Primary UID, the second is called Secondary UID and so on. Yes, this is the way UID's are named. (*) - No, it is not possible to have more than one UID for an Entity. - Yes, but then it stops. No entities can have more than two UID's. - No, each Entity can only have one UID, the secondary one. When data is stored in one place in a database, the database conforms to the rules of Normality Reduction Normalization (*) Multiplication When is an entity in 2nd Normal Form? When all non-UID attributes are dependent upon the entire UID. (*) When no attritibutes are mutually independant and fully independent on the primary key. When no attritibutes are mutually independent and all are fully dependent on the primary key. None of the Above. No parts of a UID are mandatory. True or False? True - False (*) Which of the following is NOT a relationship type? Some to None (*) - One to One - One to Many - Many to Many All relationships participating in an arc must be mandatory. True or False? True - False (*) Which of the following would best be represented by an arc? STUDENT (Female, Bob) - DELIVERY ADDRESS ( Home, Office) (*) - PARENT (Girl, Bob) - STUDENT (Grade A student, Average Student) Arcs are Mandatory in Data modelling. All ERD's must have at least one Arc. True or False? True - False (*) Which of the following would be good as a Unique Identifier for its Entity? Personal Identification number for Person (*) - Vehicle Registration Number for Car (*) - ISBN Number for Book (*) - Date of birth for Baby Modeling historical data can produce a unique identifier that always excludes dates. True or False? - True - False (*)

43. Consultants often use their experience in ensuring projects stay on track and delivers within the timescales set out for the project. True or False? True (*) False 44. Your apperance at a presentation is important. You need to look smart and presentable. True or False? True (*) False 45. Which of the following would be a logical constraint when modeling time for a City entity? People are born in the city and people die in the city. Cites may change their name and/or which country they are placed in, if the borders of a country change. (*) If you are doing a system for any French City, you would need security clearance You need a constant record of cities because they are still cities, even if leadership changes over time, e.g. they get a new Mayor 46. If a system includes the concept of time, and it stores Start Dates, then End Dates becomes Mandatory. For each Start Date attribute you create, you MUST create an End Date attribute and it must be mandatory. True or False? True False (*) 47. Modeling historical data is Optional. True or False? True (*) False 48. What do users of a system without the concept of time loose? Journalling becomes much easier. Journalling becomes slightly harder. The ability to track data over time. (*) Nothing is lost if a system does not track time. 49. Why would you want to model a time component when designing a system that lets people buy shares via the Internet? This would only be required in the US to allow the New York Stock Exchange to be notified of this information. To allow the sales people to determine when the shared were bought and therefore at what price. (*) You would not want to model this, it is not important. The price of shares fluctuates and for determining price, you need to know the time of purchase (*) 50. You are doing a data model for a computer sales company, where the price of postage is ependant on what day of the week goods are shipped. So shipping is more expensive if the customer wants a delivery to take place on a Saturday or Sunday. What would be the best way to model this? Use a Delivery Day entity, which holds prices against week days, and ensure the we also have an attribute for the Requested Delivery Day in the Order Entity. (*) Email current price to all employees whenever the prices change. Update the prices in the system, print out the current prices when they change and pin them on the company noticeboard Allow them to enter whatever ever delivery charge they want.

 

Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 1 Lesson 1    (Answer all questions in this section)             1.  You query the database with this SQL statement:     SELECT CONCAT(last_name, (SUBSTR(LOWER(first_name), 4))) "Default Password"   FROM employees;       Which function will be evaluated first?    Mark for Review   (1) Points               CONCAT           SUBSTR      

    LOWER (*)           All three will be evaluated simultaneously.                     Correct                  2.  You need to return a portion of each employee's last name, beginning with the first character up to  the fifth character. Which character function should you use?  Mark for Review   (1) Points               INSTR           TRUNC           SUBSTR (*)           CONCAT                     Correct                  3.  Evaluate this SELECT statement:   

SELECT LENGTH(email)  FROM employees;      What will this SELECT statement display?    Mark for Review   (1) Points               The longest e‐mail address in the EMPLOYEES table.           The email address of each employee in the EMPLOYEES table.           The number of characters for each value in the EMAIL column in the EMPLOYEES table. (*)           The maximum number of characters allowed in the EMAIL column.                     Correct                  4.  What will the following SQL statement display?     SELECT last_name, LPAD(salary, 15, '$')SALARY   FROM employees;   

   Mark for Review   (1) Points               The last name of employees that have a salary that includes a $ in the value, size of 15 and the column  labeled SALARY.           The last name and the format of the salary limited to 15 digits to the left of the decimal and the  column labeled SALARY.           The last name and salary for all employees with the format of the salary 15 characters long, left‐ padded with the $ and the column labeled SALARY. (*)           The query will result in an error: "ORA‐00923: FROM keyword not found where expected."                     Incorrect. Refer to Section 1                  5.  You query the database with this SQL statement:     SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID"  FROM employee;      In which order are the functions evaluated?    Mark for Review  

(1) Points               LOWER, SUBSTR, CONCAT           LOWER, CONCAT, SUBSTR           SUBSTR, CONCAT, LOWER           CONCAT, SUBSTR, LOWER (*)                     Correct                  6.  The STYLES table contains this data:    STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL 85940  11.00    758960  SANDAL  86979 12.00     

  You query the database and return the value 79. Which script did you use?    Mark for Review   (1) Points               SELECT INSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;              SELECT INSTR(category, ‐2,2)   FROM styles   WHERE style_id = 895840;              SELECT SUBSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;             SELECT SUBSTR(category, ‐2,2)   FROM styles   WHERE style_id = 758960;  (*)    

                  Correct                  7.  You need to display each employee's name in all uppercase letters. Which function should you use?   Mark for Review   (1) Points               CASE           UCASE           UPPER (*)           TOUPPER                     Correct                            Section 1 Lesson 2    (Answer all questions in this section)          

  8.  Which comparison operator retrieves a list of values?  Mark for Review   (1) Points               IN (*)           LIKE           BETWEEN...IN...           IS NULL                     Incorrect. Refer to Section 1 Lesson 1                  9.  You issue this SQL statement:     SELECT TRUNC(751.367,‐1)   FROM dual;      Which value does this statement display?    Mark for Review   (1) Points          

    700           750 (*)           751           751.3                     Correct                  10.  Evaluate this function: MOD (25, 2) Which value is returned?  Mark for Review   (1) Points               1 (*)           2           25           0                     Correct   

              Page 1 of 10               Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 1 Lesson 3    (Answer all questions in this section)             11.  Which of the following Date Functions will add calendar months to a date?  Mark for Review   (1) Points               Months + Calendar (Month)           ADD_MONTHS (*)           MONTHS + Date      

    NEXT_MONTH                     Correct                  12.  The EMPLOYEES table contains these columns:     LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   HIRE_DATE DATE  EVAL_MONTHS NUMBER(3)       Evaluate this SELECT statement:       SELECT hire_date + eval_months   FROM employees;     The values returned by this SELECT statement will be of which data type?    Mark for Review   (1) Points               DATE (*)  

        NUMBER           DATETIME           INTEGER                     Incorrect. Refer to Section 1                  13.  You need to subtract three months from the current date. Which function should you use?  Mark  for Review   (1) Points               ROUND           TO_DATE           ADD_MONTHS (*)           MONTHS_BETWEEN                     Incorrect. Refer to Section 1       

          14.  You want to create a report that displays all orders and their amounts that were placed during the  month of January. You want the orders with the highest amounts to appear first. Which query should  you issue?  Mark for Review   (1) Points               SELECT orderid, total   FROM orders   WHERE order_date LIKE '01‐jan‐02' AND '31‐jan‐02'   ORDER BY total DESC;             SELECT orderid, total   FROM orders   WHERE order_date IN ( 01‐jan‐02 , 31‐jan‐02 )   ORDER BY total;             SELECT orderid, total   FROM orders   WHERE order_date BETWEEN '01‐jan‐02' AND '31‐jan‐02'   ORDER BY total DESC;  (*)             SELECT orderid, total  

FROM orders   WHERE order_date BETWEEN '31‐jan‐02' AND '01‐jan‐02'   ORDER BY total DESC;                       Incorrect. Refer to Section 1                  15.  Which of the following SQL statements will correctly display the last name and the number of  weeks employed for all employees in department 90?  Mark for Review   (1) Points               SELECT last_name, (SYSDATE‐hire_date)/7 AS WEEKS   FROM employees   WHERE department_id = 90;  (*)             SELECT last name, (SYSDATE‐hire_date)/7 DISPLAY WEEKS   FROM employees   WHERE department id = 90;             SELECT last_name, # of WEEKS   FROM employees  

WHERE department_id = 90;             SELECT last_name, (SYSDATE‐hire_date)AS WEEK   FROM employees   WHERE department_id = 90;                       Incorrect. Refer to Section 1                            Section 2 Lesson 1    (Answer all questions in this section)             16.  If you use the RR format when writing a query using the date 27‐OCT‐17 and the year is 2001, what  year would be the result?  Mark for Review   (1) Points               2001           1901           2017 (*)  

        1917                     Correct                  17.  Which two statements concerning SQL functions are true? (Choose two.)  Mark for Review   (1) Points              (Choose all correct answers)                Character functions can accept numeric input.           Not all date functions return date values. (*)           Number functions can return number or character values.           Conversion functions convert a value from one data type to another data type. (*)           Single‐row functions manipulate groups of rows to return one result per group of rows.                     Incorrect. Refer to Section 2       

          18.  All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a  report that displays each employee's name and salary. Each employee's salary must be displayed in the  following format: $000,000.00. Which function should you include in a SELECT statement to achieve the  desired result?  Mark for Review   (1) Points               TO_CHAR (*)           TO_DATE           TO_NUMBER           CHARTOROWID                     Incorrect. Refer to Section 2                  19.  Which arithmetic operation will return a numeric value?  Mark for Review   (1) Points               TO_DATE('01‐JUN‐2004') ‐ TO_DATE('01‐OCT‐2004') (*)           NEXT_DAY(hire_date) + 5           SYSDATE ‐ 6  

        SYSDATE + 30 / 24                     Incorrect. Refer to Section 2                  20.  You have been asked to create a report that lists all customers who have placed orders of at least  $2,500. The report's date should be displayed in the Day, Date Month, Year format (For example,  Tuesday, 13 April, 2004 ). Which statement should you issue?  Mark for Review   (1) Points               SELECT companyname, TO_CHAR (sysdate, 'fmdd, dy month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;              SELECT companyname, TO_DATE (date, 'day, dd month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;             SELECT companyname, TO_DATE (sysdate, 'dd, dy month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;    

        SELECT companyname, TO_CHAR (sysdate, 'fmDay, dd Month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;  (*)                       Incorrect. Refer to Section 2                   Page 2 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.   

 Section 2 Lesson 1    (Answer all questions in this section)             21.  Which three statements concerning explicit data type conversions are true? (Choose three.)  Mark  for Review   (1) Points              (Choose all correct answers)                Use the TO_NUMBER function to convert a number to a character string.           Use the TO_DATE function to convert a character string to a date value. (*)           Use the TO_NUMBER function to convert a character string of digits to a number. (*)           Use the TO_DATE function to convert a date value to character string or number.           Use the TO_CHAR function to convert a number or date value to character string. (*)                     Incorrect. Refer to Section 2                            Section 2 Lesson 2  

 (Answer all questions in this section)             22.  Which statement about group functions is true?  Mark for Review   (1) Points               NVL and NVL2, but not COALESCE, can be used with group functions to replace null values.           NVL and COALESCE, but not NVL2, can be used with group functions to replace null values.           NVL, NVL2, and COALESCE can be used with group functions to replace null values. (*)           COALESCE, but not NVL and NVL2, can be used with group functions to replace null values.                     Incorrect. Refer to Section 2                  23.  The PRODUCT table contains this column: PRICE NUMBER(7,2)   Evaluate this statement:     SELECT NVL(10 / price, '0')   FROM PRODUCT;     What would happen if the PRICE column contains null values?    Mark for Review  

(1) Points               The statement would fail because values cannot be divided by 0.           A value of 0 would be displayed. (*)           A value of 10 would be displayed.           The statement would fail because values cannot be divided by null.                     Correct                  24.  You need to replace null values in the DEPARTMENT_ID column with the text "N/A". Which  functions should you use?  Mark for Review   (1) Points               TO_CHAR and NVL (*)           TO_CHAR and NULL           TO_CHAR and NULLIF           TO_NUMBER and NULLIF      

              Incorrect. Refer to Section 2                            Section 3 Lesson 2    (Answer all questions in this section)             25.  When joining 3 tables in a SELECT statement, how many join conditions are needed in the WHERE  clause?  Mark for Review   (1) Points               0           1           2 (*)           3                     Incorrect. Refer to Section 3               

  26.  You need to provide a list of the first and last names of all employees who work in the Sales  department who earned a bonus and had sales over $50,000. The company president would like the  sales listed starting with the highest amount first. The EMPLOYEES table and the SALES_DEPT table  contain the following columns:   EMPLOYEES   EMPLOYEE_ID NUMBER(10) PRIMARY KEY   LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   DEPARTMENT_ID NUMBER(10)   HIRE_DATE DATE   SALARY NUMBER(8,2)     SALES_DEPT   SALES_ID NUMBER(10) PRIMARY KEY   SALES NUMBER(20)   QUOTA NUMBER(20)   MANAGER NUMBER(10)   BONUS NUMBER(10)   EMPLOYEE_ID NUMBER(10) FOREIGN KEY     Which SELECT statement will accomplish this task?    Mark for Review   (1) Points               SELECT e.employee_id, e.last_name, e.first_name, s.employee_id, s.bonus, s.sales   FROM employees e, sales_dept s   ORDER BY sales DESC  

WHERE e.employee_id = s.employee_id AND sales > 50000 AND s.bonus IS NOT NULL;             SELECT e.employee_id, e.last_name, e.first_name, s.employee_id, s.bonus, s. sales   ORDER BY sales DESC   FROM employees e, sales_dept s   WHERE e.employee_id = s.employee_id AND s.bonus IS NOT NULL AND sales > 50000;             SELECT e.employee_id, e.last_name, e.first_name, s.employee_id, s.bonus, s. sales   WHERE e.employee_id = s.employee_id   FROM employees e, sales_dept s AND s.bonus IS NOT NULL AND sales > 50000   ORDER BY sales DESC;             SELECT e.employee_id, e.last_name, e.first_name, s.employee_id, s.bonus, s. sales   FROM employees e, sales_dept s   WHERE e.employee_id = s.employee_id AND s.bonus IS NOT NULL AND sales > 50000   ORDER BY sales DESC;  (*)                       Incorrect. Refer to Section 3       

          27.  Evaluate this SQL statement:   SELECT e.employee_id, e.last_name, e.first_name, d.department_name   FROM employees e, departments d   WHERE e.department_id = d.department_id AND employees.department_id > 5000   ORDER BY 4;     Which clause contains a syntax error?     Mark for Review   (1) Points               SELECT e.employee_id, e.last_name, e.first_name, d.department_name           FROM employees e, departments d           WHERE e.department_id = d.department_id           AND employees.department_id > 5000 (*)           ORDER BY 4;                     Incorrect. Refer to Section 3       

          28.  The PATIENTS and DOCTORS tables contain these columns:   PATIENTS   PATIENT_ID NUMBER(9)  LAST_NAME VARCHAR2 (20)   FIRST_NAME VARCHAR2 (20)    DOCTORS   DOCTOR_ID NUMBER(9)   LAST_NAME VARCHAR2 (20)   FIRST_NAME VARCHAR2 (20)     You issue this statement:   SELECT patient_id, doctor_id   FROM patients, doctors;     Which result will this statement provide?    Mark for Review   (1) Points               A report containing all possible combinations of the PATIENT_ID and DOCTOR_ID values (*)           A report containing each patient's id value and their doctor's id value           A report with NO duplicate PATIENT_ID or DOCTOR_ID values  

        A syntax error                     Incorrect. Refer to Section 3                  29.  What is produced when a join condition is not specified in a multiple‐table query using Oracle  proprietary Join syntax?  Mark for Review   (1) Points               a self‐join           an outer join           an equijoin           a Cartesian product (*)                     Incorrect. Refer to Section 3                  30.  What happens when you create a Cartesian product?  Mark for Review   (1) Points          

    All rows from one table are joined to all rows of another table (*)           The table is joined to itself, one column to the next column, exhausting all possibilities           The table is joined to another equal table           All rows that do not match in the WHERE clause are displayed                     Correct                   Page 3 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. 

   Section 3 Lesson 4    (Answer all questions in this section)             31.  Using Oracle Proprietary join syntax, which two operators can be used in an outer join condition  using the outer join operator (+)?  Mark for Review   (1) Points               AND and = (*)           OR and =           BETWEEN...AND... and IN           IN and =                     Correct                  32.  Which statement about outer joins is true?  Mark for Review   (1) Points               The tables must be aliased.           The FULL, RIGHT, or LEFT keyword must be included.  

        The OR operator cannot be used to link outer join conditions. (*)           Outer joins are always evaluated before other types of joins in the query.                     Incorrect. Refer to Section 3                  33.  Using Oracle Proprietary join syntax, which operator would you use after one of the column names  in the WHERE clause when creating an outer join?  Mark for Review   (1) Points               (+) (*)           *           +           =                     Correct                  

         Section 4 Lesson 2    (Answer all questions in this section)             34.  You need to join two tables that have two columns with the same name, datatype and precision.  Which type of join would you create to join the tables on both of the columns?  Mark for Review   (1) Points               Natural join (*)           Cross join           Outer join           Self‐join                     Correct                  35.  A join between tables where the result set includes matching values from both tables but does  NOT return any unmatched rows could be called which of the following? (Choose three)  Mark for  Review   (1) Points              (Choose all correct answers)           

    Equijoin (*)           Self join (*)           Nonequijoin           Simple join (*)           Full outer join                     Incorrect. Refer to Section 4                  36.  Which of the following conditions will cause an error on a NATURAL JOIN?  Mark for Review   (1) Points               When you attempt to write it as an equijoin.           When the NATURAL JOIN clause is based on all columns in the two tables that have the same name.           If it selects rows from the two tables that have equal values in all matched columns.           If the columns having the same names have different data types, then an error is returned. (*)      

              Correct                            Section 4 Lesson 3    (Answer all questions in this section)             37.  Which keyword in a SELECT statement creates an equijoin by specifying a column name common  to both tables?  Mark for Review   (1) Points               A HAVING clause           The FROM clause           The SELECT clause           A USING clause (*)                     Incorrect. Refer to Section 4                  38.  Below find the structure of the CUSTOMERS and SALES_ORDER tables:  

  CUSTOMERS  CUSTOMER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_NAME VARCHAR2 (30)   CONTACT_NAME VARCHAR2 (30)  CONTACT_TITLE VARCHAR2 (20)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (20)  COUNTRY_ID NUMBER Foreign key to COUNTRY_ID column of the COUNTRY table   PHONE VARCHAR2 (20)  FAX VARCHAR2 (20)   CREDIT_LIMIT NUMBER(7,2)      SALES_ORDER  ORDER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_ID NUMBER Foreign key to CUSTOMER_ID column of the CUSTOMER table  ORDER_DT DATE   ORDER_AMT NUMBER (7,2)   SHIP_METHOD VARCHAR2 (5)       You need to create a report that displays customers without a sales order. Which statement could you  use?  

 Mark for Review   (1) Points               SELECT c.customer_name   FROM customers c   WHERE c.customer_id not in (SELECT s.customer_id FROM sales_order s);   (*)             SELECT c.customer_name   FROM customers c, sales_order s   WHERE c.customer_id = s.customer_id(+);              SELECT c.customer_name   FROM customers c, sales_order s   WHERE c.customer_id (+) = s.customer_id;              SELECT c.customer_name   FROM customers c  RIGHT OUTER JOIN sales_order s ON (c.customer_id = s.customer_id);                 

      Incorrect. Refer to Section 4                  39.  The primary advantage of using JOIN ON is:  Mark for Review   (1) Points               The join happens automatically based on matching column names and data types           It will display rows that do not meet the join condition           It permits columns with different names to be joined (*)           It permits columns that don't have matching data types to be joined                     Incorrect. Refer to Section 4                  40.  Evaluate this SELECT statement:    SELECT a.last_name || ', ' || a.first_name as "Patient", b.last_name || ', ' || b.first_name as "Physician",  c.admission   FROM patient a   JOIN physician b   ON (b.physician_id = c.physician_id)   JOIN admission c  

ON (a.patient_id = c.patient_id);     Which clause generates an error?    Mark for Review   (1) Points               JOIN physician b           ON (b.physician_id = c.physician_id) (*)           JOIN admission c           ON (a.patient_id = c.patient_id)                     Incorrect. Refer to Section 4                   Page 4 of 10                   

  Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 4 Lesson 4    (Answer all questions in this section)             41.  Which query represents the correct syntax for a left outer join?  Mark for Review   (1) Points               SELECT companyname, orderdate, total   FROM customers c   LEFT JOIN orders o  ON c.cust_id = o.cust_id;             SELECT companyname, orderdate, total  FROM customers c  OUTER JOIN orders o  ON c.cust_id = o.cust_id;        

    SELECT companyname, orderdate, total   FROM customers c   LEFT OUTER JOIN orders o   ON c.cust_id = o.cust_id;   (*)             SELECT companyname, orderdate, total   FROM customers c   LEFT OUTER orders o   ON c.cust_id = o.cust_id;                        Incorrect. Refer to Section 4                  42.  Which two sets of join keywords create a join that will include unmatched rows from the first table  specified in the SELECT statement?  Mark for Review   (1) Points               LEFT OUTER JOIN and FULL OUTER JOIN (*)           RIGHT OUTER JOIN and LEFT OUTER JOIN           USING and HAVING  

        OUTER JOIN and USING                     Incorrect. Refer to Section 4                  43.  You need to display all the rows from both the EMPLOYEES and EMPLOYEE_HISTS tables. Which  type of join would you use?  Mark for Review   (1) Points               a right outer join           a left outer join           a full outer join (*)           an inner join                     Incorrect. Refer to Section 4                            Section 5 Lesson 1  

 (Answer all questions in this section)             44.  Evaluate this SELECT statement:  SELECT MAX(salary), department_id   FROM employees   GROUP BY department_id;     Which values are displayed?    Mark for Review   (1) Points               The highest salary for all employees.           The highest salary in each department. (*)           The employees with the highest salaries.           The employee with the highest salary for each department.                     Correct                  45.  Evaluate this SELECT statement:    

SELECT MIN(hire_date), department_id   FROM employees   GROUP BY department_id;     Which values are displayed?    Mark for Review   (1) Points               The earliest hire date in each department. (*)           The the earliest hire date in the EMPLOYEES table.           The latest hire date in the EMPLOYEES table.           The hire dates in the EMPLOYEES table that contain NULL values.                     Incorrect. Refer to Section 5                  46.  If a select list contains both columns as well as groups function then what clause is required?  Mark  for Review   (1) Points               having clause      

    join clause           order by clause           group by clause (*)                     Incorrect. Refer to Section 5                  47.  Group functions can be nested to a depth of?  Mark for Review   (1) Points               three           four           two (*)           Group functions cannot be nested.                     Incorrect. Refer to Section 5               

            Section 5 Lesson 2    (Answer all questions in this section)             48.  You need to calculate the standard deviation for the cost of products produced in the Birmingham  facility. Which group function will you use?  Mark for Review   (1) Points               STDEV           STDDEV (*)           VAR_SAMP           VARIANCE                     Incorrect. Refer to Section 5                  49.  The TRUCKS table contains these columns:   TRUCKS   TYPE VARCHAR2(30)   YEAR DATE   MODEL VARCHAR2(20)  

PRICE NUMBER(10)     Which SELECT statement will return the average price for the 4x4 model?    Mark for Review   (1) Points               SELECT AVG (price) FROM trucks WHERE model = '4x4'; (*)           SELECT AVG (price) FROM trucks WHERE model IS '4x4';           SELECT AVG(price) FROM trucks WHERE model IS 4x4;           SELECT AVG(price), model FROM trucks WHERE model = '4x4';                     Correct                  50.  You need to compute the total salary for all employees in department 10. Which group function  will you use?  Mark for Review   (1) Points               MAX           SUM (*)      

    VARIANCE           COUNT                     Correct                   Page 5 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 5 Lesson 2    (Answer all questions in this section)          

  51.  Which aggregate function can be used on a column of the DATE data type?  Mark for Review   (1) Points               AVG           MAX (*)           STDDEV           SUM                     Incorrect. Refer to Section 5                  52.  Which group function would you use to display the highest salary value in the EMPLOYEE table?   Mark for Review   (1) Points               AVG           COUNT           MAX (*)           MIN  

                  Correct                  53.  The PRODUCTS table contains these columns:  PROD_ID NUMBER(4)   PROD_NAME VARCHAR2(30)  PROD_CAT VARCHAR2(30)  PROD_PRICE NUMBER(3)   PROD_QTY NUMBER(4)    The following statement is issued:     SELECT AVG(prod_price, prod_qty)   FROM products;     What happens when this statement is issued?    Mark for Review   (1) Points               Both the average price and the average quantity of the products are returned.           Only the average quantity of the products is returned.      

    The values in the PROD_PRICE column and the PROD_QTY column are averaged together.           An error occurs. (*)                     Incorrect. Refer to Section 5                  54.  The AVG, SUM, VARIANCE, and STDDEV functions can be used with which of the following?  Mark  for Review   (1) Points               Only numeric data types (*)           Integers only           Any data type           All except numeric                     Correct                  55.  The CUSTOMERS table contains these columns:   CUSTOMER_ID NUMBER(9)  

FIRST_NAME VARCHAR2(25)   LAST_NAME VARCHAR2(30)   CREDIT_LIMIT NUMBER (7,2)  CATEGORY VARCHAR2(20)     You need to calculate the average credit limit for all the customers in each category. The average should  be calculated based on all the rows in the table excluding any customers who have not yet been  assigned a credit limit value. Which group function should you use to calculate this value?    Mark for Review   (1) Points               AVG (*)           SUM           COUNT           STDDEV                     Incorrect. Refer to Section 5                            Section 5 Lesson 3  

 (Answer all questions in this section)             56.  Evaluate this SELECT statement:  SELECT COUNT(*)  FROM employees   WHERE salary > 30000;     Which results will the query display?    Mark for Review   (1) Points               The number of employees that have a salary less than 30000.           The total of the SALARY column for all employees that have a salary greater than 30000.           The number of rows in the EMPLOYEES table that have a salary greater than 30000. (*)           The query generates an error and returns no results.                     Correct                  57.  The EMPLOYEES table contains these columns:   EMPLOYEE_ID NUMBER(9)  

LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   SALARY NUMBER(7,2)   DEPARTMENT_ID NUMBER(9)     You need to display the number of employees whose salary is greater than $50,000? Which SELECT  would you use?    Mark for Review   (1) Points               SELECT * FROM employees   WHERE salary > 50000;              SELECT * FROM employees   WHERE salary < 50000;              SELECT COUNT(*) FROM employees   WHERE salary < 50000;              SELECT COUNT(*) FROM employees   WHERE salary > 50000;   (*)    

        SELECT COUNT(*) FROM employees   WHERE salary > 50000   GROUP BY employee_id, last_name, first_name, salary, department_id;                        Incorrect. Refer to Section 5                  58.  Evaluate this SQL statement:   SELECT COUNT (amount)   FROM inventory;     What will occur when the statement is issued?    Mark for Review   (1) Points               The statement will return the greatest value in the INVENTORY table.           The statement will return the total number of rows in the AMOUNT column.           The statement will replace all NULL values that exist in the AMOUNT column.           The statement will count the number of rows in the INVENTORY table where the AMOUNT column is  not null. (*)  

                  Incorrect. Refer to Section 5                  59.  Which SELECT statement will calculate the number of rows in the PRODUCTS table?  Mark for  Review   (1) Points               SELECT COUNT(products);           SELECT COUNT FROM products;           SELECT COUNT (*) FROM products; (*)           SELECT ROWCOUNT FROM products;                     Incorrect. Refer to Section 5                            Section 6 Lesson 1    (Answer all questions in this section)          

  60.  Evaluate this SELECT statement:   SELECT SUM(salary), department_id, manager_id  FROM employees   GROUP BY department_id, manager_id;     Which SELECT statement clause allows you to restrict the rows returned, based on a group function?    Mark for Review   (1) Points               HAVING SUM(salary) > 100000 (*)           WHERE SUM(salary) > 100000           WHERE salary > 100000           HAVING salary > 100000                     Incorrect. Refer to Section 6                   Page 6 of 10         

            Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 1    (Answer all questions in this section)             61.  Which statement about the GROUP BY clause is true?  Mark for Review   (1) Points               To exclude rows before dividing them into groups using the GROUP BY clause, you should use a  WHERE clause. (*)           You can use a column alias in a GROUP BY clause.           By default, rows are not sorted when a GROUP BY clause is used.           You must use the HAVING clause with the GROUP BY clause.              

      Correct                  62.  The PAYMENT table contains these columns:   PAYMENT_ID NUMBER(9) PK  PAYMENT_DATE DATE   CUSTOMER_ID NUMBER(9)     Which SELECT statement could you use to display the number of times each customer made a payment  between January 1, 2003 and June 30, 2003 ?   Mark for Review   (1) Points               SELECT customer_id, COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003'   GROUP BY customer_id;  (*)             SELECT COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003';             SELECT customer_id, COUNT(payment_id)  

FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003';             SELECT COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003'   GROUP BY customer_id;                       Incorrect. Refer to Section 6                  63.  Evaluate this SELECT statement:   SELECT COUNT(emp_id), mgr_id, dept_id   FROM employee  WHERE status = 'I'   GROUP BY dept_id   HAVING salary > 30000   ORDER BY 2;     Why does this statement return a syntax error?   Mark for Review   (1) Points  

            MGR_ID must be included in the GROUP BY clause. (*)           The HAVING clause must specify an aggregate function.           A single query cannot contain a WHERE clause and a HAVING clause.           The ORDER BY clause must specify a column name in the EMPLOYEE table.                     Incorrect. Refer to Section 6                  64.  Evaluate this SELECT statement:   SELECT COUNT(employee_id), department_id   FROM employees   GROUP BY department_id;     You only want to include employees who earn more than 15000.   Which clause should you include in the SELECT statement?   Mark for Review   (1) Points               WHERE salary > 15000 (*)      

    HAVING salary > 15000           WHERE SUM(salary) > 15000           HAVING SUM(salary) > 15000                     Incorrect. Refer to Section 6                  65.  The PLAYERS table contains these columns:   PLAYER_ID NUMBER PK   PLAYER_NAME VARCHAR2 (30)   TEAM_ID NUMBER   HIRE_DATE DATE   SALARY NUMBER (8,2)     Which two clauses represent valid uses of aggregate functions? (Choose three.)    Mark for Review   (1) Points              (Choose all correct answers)                ORDER BY AVG(salary) (*)      

    GROUP BY MAX(salary)           SELECT AVG(NVL(salary, 0)) (*)           HAVING MAX(salary) > 10000 (*)           WHERE hire_date > AVG(hire_date)                     Incorrect. Refer to Section 6                  66.  The EMPLOYEES table contains these columns:   ID_NUMBER NUMBER Primary Key   NAME VARCHAR2 (30)   DEPARTMENT_ID NUMBER   SALARY NUMBER (7,2)   HIRE_DATE DATE    Evaluate this SQL statement:     SELECT id_number, name, hire_date, department_id, SUM(salary)   FROM employees   WHERE salary > 25000   GROUP BY department_id, id_number, name  

ORDER BY hire_date;     Why will this statement cause an error?    Mark for Review   (1) Points               The HAVING clause is missing.           The WHERE clause contains a syntax error.           The SALARY column is NOT included in the GROUP BY clause.           The HIRE_DATE column is NOT included in the GROUP BY clause. (*)                     Incorrect. Refer to Section 6                  67.  Evaluate this statement:   SELECT department_id, AVG(salary)   FROM employees   WHERE job_id <> 69879   GROUP BY job_id, department_id   HAVING AVG(salary) > 35000   ORDER BY department_id;  

  Which clauses restricts the result? Choose two.   Mark for Review   (1) Points              (Choose all correct answers)                SELECT department_id, AVG(salary)           WHERE job_id <> 69879 (*)           GROUP BY job_id, department_id           HAVING AVG(salary) > 35000 (*)                     Correct                            Section 6 Lesson 2    (Answer all questions in this section)             68.  Which statement about subqueries is true?  Mark for Review  

(1) Points               Subqueries should be enclosed in double quotation marks.           Subqueries cannot contain group functions.           Subqueries are often used in a WHERE clause to return values for an unknown conditional value. (*)           Subqueries generally execute last, after the main or outer query executes.                     Incorrect. Refer to Section 6                  69.  Which operator can be used with a multiple‐row subquery?  Mark for Review   (1) Points               IN (*)           <>           =           LIKE      

              Incorrect. Refer to Section 6                  70.  The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns:   TEACHERS  TEACHER_ID NUMBER(5) Primary Key  NAME VARCHAR2 (25)   SUBJECT_ID NUMBER(5)       CLASS_ASSIGNMENTS  CLASS_ID NUMBER (5) Primary Key   TEACHER_ID NUMBER (5)  START_DATE DATE  MAX_CAPACITY NUMBER (3)    All MAX_CAPACITY values are greater than 10. Which two SQL statements correctly use subqueries?  (Choose two.)    Mark for Review   (1) Points              (Choose all correct answers)                SELECT *   FROM class_assignments  

WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments);  (*)             SELECT *   FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE class_id = 45963);   (*)             SELECT *   FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);              SELECT *   FROM teachers   WHERE teacher_id LIKE (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);              SELECT *   FROM class_assignments   WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments GROUP BY teacher_id);         

              Incorrect. Refer to Section 6                   Page 7 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 2    (Answer all questions in this section)             71.  Using a subquery in which of the following clauses will return a syntax error?  Mark for Review   (1) Points               WHERE  

        FROM           HAVING           You can use subqueries in all of the above clauses. (*)                     Correct                  72.  You need to create a report to display the names of products with a cost value greater than the  average cost of all products. Which SELECT statement should you use?  Mark for Review   (1) Points               SELECT product_name  FROM products   WHERE cost > (SELECT AVG(cost) FROM product);   (*)             SELECT product_name   FROM products  WHERE cost > AVG(cost);        

    SELECT AVG(cost), product_name   FROM products  WHERE cost > AVG(cost)   GROUP by product_name;              SELECT product_name   FROM (SELECT AVG(cost) FROM product)   WHERE cost > AVG(cost);                        Incorrect. Refer to Section 6                            Section 6 Lesson 3    (Answer all questions in this section)             73.  If a single‐row subquery returns a null value and uses the equality comparison operator, what will  the outer query return?  Mark for Review   (1) Points               no rows (*)      

    all the rows in the table           a null value           an error                     Incorrect. Refer to Section 6                  74.  Examine the structure of the EMPLOYEE, DEPARTMENT, and ORDERS tables.   EMPLOYEE  EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2(25)  FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)     DEPARTMENT   DEPARTMENT_ID NUMBER(9)  DEPARTMENT_NAME VARCHAR2(25)  CREATION_DATE DATE    ORDERS   ORDER_ID NUMBER(9)  EMPLOYEE_ID NUMBER(9) 

DATE DATE   CUSTOMER_ID NUMBER(9)    You want to display all employees who had an order after the Sales department was established. Which  of the following constructs would you use?    Mark for Review   (1) Points               a group function           a single‐row subquery (*)           the HAVING clause           a MERGE statement                     Incorrect. Refer to Section 6                  75.  Which statement about the <> operator is true?  Mark for Review   (1) Points               The <> operator is NOT a valid SQL operator.           The <> operator CANNOT be used in a single‐row subquery.  

        The <> operator returns the same result as the ANY operator in a subquery.           The <> operator can be used when a single‐row subquery returns only one row. (*)                     Incorrect. Refer to Section 6                            Section 6 Lesson 4    (Answer all questions in this section)             76.  Evaluate this SQL statement:   SELECT employee_id, last_name, salary   FROM employees  WHERE department_id IN      (SELECT department_id      FROM employees      WHERE salary > 30000 AND salary < 50000);    Which values will be displayed?    Mark for Review   (1) Points  

            Only employees who earn more than $30,000.           Only employees who earn less than $50,000.           All employees who work in a department with employees who earn more than $30,000 and more  than $50,000.           All employees who work in a department with employees who earn more than $30,000, but less than  $50,000. (*)                     Correct                  77.  Evaluate the structure of the EMPLOYEE and DEPART_HIST tables:   EMPLOYEE:  EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2(25)   FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)  MANAGER_ID NUMBER(9)  SALARY NUMBER(7,2)     DEPART_HIST:   EMPLOYEE_ID NUMBER(9)  

OLD_DEPT_ID NUMBER(9)  NEW_DEPT_ID NUMBER(9)  CHANGE_DATE DATE     You want to generate a list of employees who are in department 10, but used to be in department 15.   Which query should you use?    Mark for Review   (1) Points               SELECT employee_id, last_name, first_name, department_id  FROM employee   WHERE (employee_id, department_id) IN      (SELECT employee_id, new_dept_id      FROM depart_hist       WHERE old_dept_id = 15) AND new_dept_id = 10;  (*)             SELECT employee_id, last_name, first_name, department_id  FROM employee  WHERE (employee_id) IN      (SELECT employee_id       FROM employee_hist       WHERE old_dept_id = 15);    

        SELECT employee_id, last_name, first_name, department_id  FROM employee  WHERE (employee_id, department_id) =      (SELECT employee_id, new_dept_id       FROM depart_hist       WHERE new_dept_id = 15);              SELECT employee_id, last_name, first_name, department_id   FROM employee   WHERE (employee_id, department_id) IN      (SELECT employee_id, dept_id       FROM employee       WHERE old_dept_id = 15);                       Incorrect. Refer to Section 6                  78.  Which of the following statements contains a comparison operator that is used to restrict rows  based on a list of values returned from an inner query?  Mark for Review   (1) Points               SELECT description  

FROM d_types   WHERE code IN (SELECT type_code FROM d_songs);             SELECT description  FROM d_types  WHERE code = ANY (SELECT type_code FROM d_songs);             SELECT description   FROM d_types   WHERE code <> ALL (SELECT type_code FROM d_songs);             All of the above. (*)                     Incorrect. Refer to Section 6                  79.  Evaluate this SELECT statement:  SELECT customer_id, name   FROM customer   WHERE customer_id IN      (SELECT customer_id  

    FROM customer       WHERE state_id = 'GA' AND credit_limit > 500.00);     What would happen if the inner query returned null?    Mark for Review   (1) Points               An error would be returned.           No rows would be returned by the outer query. (*)           All the rows in the table would be selected.           Only the rows with CUSTOMER_ID values equal to null would be selected.                     Incorrect. Refer to Section 6                  80.  Which statement about single‐row and multiple‐row subqueries is true?  Mark for Review   (1) Points               Multiple‐row subqueries cannot be used with the LIKE operator. (*)           Single‐row operators can be used with both single‐row and multiple‐row subqueries.  

        Multiple‐row subqueries can be used with both single‐row and multiple‐row operators.           Multiple‐row subqueries can only be used in SELECT statements.                     Correct                   Page 8 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 4    (Answer all questions in this section)  

          81.  Which best describes a multiple‐row subquery?  Mark for Review   (1) Points               A query that returns only one row from the inner SELECT statement           A query that returns one or more rows from the inner SELECT statement (*)           A query that returns only one column value from the inner SELECT statement           A query that returns one or more column values from the inner SELECT statement                     Correct                  82.  Evaluate this SELECT statement:  SELECT student_id, last_name, first_name  FROM student   WHERE major_id NOT IN      (SELECT major_id       FROM majors       WHERE department_head_id = 30 AND title = 'ADJUNCT');     What would happen if the inner query returned a NULL value row?  

 Mark for Review   (1) Points               A syntax error would be returned.           No rows would be returned from the STUDENT table. (*)           All the rows in the STUDENT table would be displayed.           Only the rows with STUDENT_ID values equal to NULL would be displayed.                     Correct                  83.  Which of the following is a valid reason why the query below will not execute successfully?   SELECT employee_id, last_name, salary   FROM employees   WHERE department_id =       (SELECT department_id FROM employees WHERE last_name like '%u%')    Mark for Review   (1) Points               First subquery not enclosed in parenthesis      

    Single rather than multiple value operator used. (*)           Second subquery found on the right instead of the left side of the operator.           The greater than operator is not valid.                     Incorrect. Refer to Section 6                  84.  Evaluate this SELECT statement that includes a subquery:  SELECT last_name, first_name   FROM customer  WHERE area_code IN       (SELECT area_code FROM sales WHERE salesperson_id = 20);     Which statement is true about the given subquery?    Mark for Review   (1) Points               The outer query executes before the nested subquery.           The results of the inner query are returned to the outer query. (*)           An error occurs if the either the inner or outer queries do not return a value.  

        Both the inner and outer queries must return a value, or an error occurs.                     Incorrect. Refer to Section 6                  85.  What is wrong with the following query?   SELECT employee_id, last_name   FROM employees   WHERE salary =     (SELECT MIN(salary) FROM employees GROUP BY department_id);     Mark for Review   (1) Points               Single rows contain multiple values and a logical operator is used.           Subquery returns more than one row and single row comparison operator is used. (*)           Subquery references the wrong table in the WHERE clause.           Nothing, it will run without problems.              

      Incorrect. Refer to Section 6                  86.  You are looking for Executive information using a subquery. What will the following SQL statement  display?   SELECT department_id, last_name, job_id   FROM employees   WHERE department_id IN      (SELECT department_id       FROM departments       WHERE department_name = 'Executive');    Mark for Review   (1) Points               The department ID, department name and last name for every employee in the Executive  department.           The department ID, last name, department name for every Executive in the employees table.           The department ID, last name, job ID from departments for Executive employees.           The department ID, last name, job ID for every employee in the Executive department. (*)                     Correct       

                    Section 7 Lesson 1    (Answer all questions in this section)             87.  The STUDENTS table contains these columns:  STU_ID NUMBER(9) NOT NULL  LAST_NAME VARCHAR2 (30) NOT NULL  FIRST_NAME VARCHAR2 (25) NOT NULL  DOB DATE  STU_TYPE_ID VARCHAR2(1) NOT NULL  ENROLL_DATE DATE     You create another table, named FT_STUDENTS, with an identical structure.You want to insert all full‐ time students, who have a STU_TYPE_ID value of "F", into the new table. You execute this INSERT  statement:     INSERT INTO ft_students      (SELECT stu_id, last_name, first_name, dob, stu_type_id, enroll_date      FROM students      WHERE UPPER(stu_type_id) = 'F');     What is the result of executing this INSERT statement?    Mark for Review   (1) Points  

            All full‐time students are inserted into the FT_STUDENTS table. (*)           An error occurs because the FT_STUDENTS table already exists.           An error occurs because you CANNOT use a subquery in an INSERT statement.           An error occurs because the INSERT statement does NOT contain a VALUES clause.                     Incorrect. Refer to Section 7                  88.  You need to add a row to an existing table. Which DML statement should you use?  Mark for  Review   (1) Points               UPDATE           INSERT (*)           DELETE           CREATE              

      Correct                  89.  You have been instructed to add a new customer to the CUSTOMERS table. Because the new  customer has not had a credit check, you should not add an amount to the CREDIT column.   The CUSTOMERS table contains these columns:   CUST_ID NUMBER(10)   COMPANY VARCHAR2(30)   CREDIT NUMBER(10)   POC VARCHAR2(30)   LOCATION VARCHAR2(30)    Which two INSERT statements will accomplish your objective?    Mark for Review   (1) Points              (Choose all correct answers)                INSERT INTO customers (cust_id, company, poc, location)   VALUES (200, 'InterCargo', 'tflanders', 'samerica');   (*)             INSERT INTO customers   VALUES (200, 'InterCargo', null, 'tflanders', 'samerica');   (*) 

           INSERT INTO customers   VALUES (cust_id, company, credit, poc, location) (200, 'InterCargo', 0, 'tflanders', 'samerica');              INSERT INTO customers   VALUES (200, InterCargo, 0, tflanders, samerica);                        Incorrect. Refer to Section 7                 90.  Assume all the column names are correct. The following SQL statement will execute which of the  following?  INSERT INTO departments (department_id, department_name, manager_id, location_id)   VALUES (70, 'Public Relations', 100, 1700);     Mark for Review   (1) Points               100 will be inserted into the department_id column           1700 will be inserted into the manager_id column      

    70 will be inserted into the department_id column (*)           'Public Relations' will be inserted into the manager_name column                     Correct                   Page 9 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 7 Lesson 2    (Answer all questions in this section)          

  91.  One of the sales representatives, Janet Roper, has informed you that she was recently married, and  she has requested that you update her name in the employee database. Her new last name is Cooper.  Janet is the only person with the last name of Roper that is employed by the company. The EMPLOYEES  table contains these columns and all data is stored in lowercase:   EMPLOYEE_ID NUMBER(10) PRIMARY KEY   LAST_NAME VARCHAR2(20)  FIRST_NAME VARCHAR2(20)  DEPARTMENT_ID NUMBER(10)  HIRE_DATE DATE  SALARY NUMBER(10)    Which UPDATE statement will accomplish your objective?   Mark for Review   (1) Points               UPDATE employees  SET last_name = 'cooper'   WHERE last_name = 'roper';   (*)             UPDATE employees last_name = 'cooper'   WHERE last_name = 'roper';             UPDATE employees  SET last_name = 'roper'  

WHERE last_name = 'cooper';             UPDATE employees  SET cooper = 'last_name'   WHERE last_name = 'roper';                       Correct                  92.  Examine the structures of the PLAYERS, MANAGERS, and TEAMS tables:  PLAYERS  PLAYER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (30)  FIRST_NAME VARCHAR2 (25)  TEAM_ID NUMBER  MGR_ID NUMBER  SIGNING_BONUS NUMBER(9,2)  SALARY NUMBER(9,2)    MANAGERS  MANAGER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (20) 

FIRST_NAME VARCHAR2 (20)  TEAM_ID NUMBER    TEAMS  TEAM_ID NUMBER Primary Key  TEAM_NAME VARCHAR2 (20)  OWNER_LAST_NAME VARCHAR2 (20)  OWNER_FIRST_NAME VARCHAR2 (20)    Which situation would require a subquery to return the desired result?    Mark for Review   (1) Points               To display the names each player on the Lions team           To display the maximum and minimum player salary for each team           To display the names of the managers for all the teams owned by a given owner (*)           To display each player, their manager, and their team name for all teams with a id value greater than  5000                     Incorrect. Refer to Section 7               

  93.  You want to enter a new record into the CUSTOMERS table. Which two commands can be used to  create new rows?  Mark for Review   (1) Points               INSERT, CREATE           MERGE, CREATE           INSERT, MERGE (*)           INSERT, UPDATE                     Incorrect. Refer to Section 7                  94.  One of your employees was recently married. Her employee ID is still 189, however, her last name  is now Rockefeller. Which SQL statement will allow you to reflect this change?  Mark for Review   (1) Points               INSERT INTO my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;           INSERT my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;           UPDATE INTO my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;      

    UPDATE my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189; (*)                     Incorrect. Refer to Section 7                  95.  Evaluate this statement: DELETE FROM customer; Which statement is true?  Mark for Review   (1) Points               The statement deletes all the rows from the CUSTOMER table. (*)           The statement deletes the CUSTOMER column.           The statement deletes the first row in the CUSTOMERS table.           The statement removes the structure of the CUSTOMER table from the database.                     Incorrect. Refer to Section 7                  96.  Which two commands can be used to modify existing data in a database row?  Mark for Review   (1) Points              (Choose all correct answers)   

            DELETE           MERGE (*)           SELECT           UPDATE (*)                     Incorrect. Refer to Section 7                  97.  Examine the structures of the PRODUCTS and SUPPLIERS tables:   SUPPLIERS  SUPPLIER_ID NUMBER NOT NULL, Primary Key  SUPPLIER_NAME VARCHAR2 (25)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (11)    PRODUCTS  PRODUCT_ID NUMBER NOT NULL, Primary Key  PRODUCT_NAME VARCHAR2 (25) 

SUPPLIER_ID NUMBER Foreign key to SUPPLIER_ID of the SUPPLIERS table  CATEGORY_ID NUMBER  QTY_PER_UNIT NUMBER  UNIT_PRICE NUMBER (7,2)  QTY_IN_STOCK NUMBER  QTY_ON_ORDER NUMBER  REORDER_LEVEL NUMBER    You want to delete any products supplied by the five suppliers located in Atlanta. Which script should  you use?    Mark for Review   (1) Points               DELETE FROM products   WHERE supplier_id IN      (SELECT supplier_id       FROM suppliers       WHERE UPPER(city) = 'ATLANTA');   (*)             DELETE FROM products   WHERE UPPER(city) = 'ATLANTA';              DELETE FROM products 

WHERE supplier_id =       (SELECT supplier_id       FROM suppliers       WHERE UPPER(city) = 'ATLANTA');              DELETE FROM products   WHERE supplier_id <       (SELECT supplier_id       FROM suppliers       WHERE UPPER(city) = 'ALANTA');                        Correct                  98.  When the WHERE clause is missing in a DELETE statement, what is the result?  Mark for Review   (1) Points               All rows are deleted from the table. (*)           The table is removed from the database.           An error message is displayed indicating incorrect syntax.  

        Nothing. The statement will not execute.                     Incorrect. Refer to Section 7                  99.  The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns:  TEACHERS   TEACHER_ID NUMBER(5)   NAME VARCHAR2(25)   SUBJECT_ID NUMBER(5)  HIRE_DATE DATE  SALARY NUMBER(9,2)    CLASS_ASSIGNMENTS  CLASS_ID NUMBER(5)  TEACHER_ID NUMBER(5)  START_DATE DATE  MAX_CAPACITY NUMBER(3)    Which scenario would require a subquery to return the desired results?    Mark for Review   (1) Points          

    You need to display the start date for each class taught by a given teacher.           You need to create a report to display the teachers who were hired more than five years ago.           You need to display the names of the teachers who teach classes that start within the next week.           You need to create a report to display the teachers who teach more classes than the average number  of classes taught by each teacher. (*)                     Incorrect. Refer to Section 7                  100.  The PLAYERS table contains these columns:  PLAYER_ID NUMBER NOT NULL  PLAYER_LNAME VARCHAR2(20) NOT NULL  PLAYER_FNAME VARCHAR2(10) NOT NULL   TEAM_ID NUMBER   SALARY NUMBER(9,2)     You need to increase the salary of each player for all players on the Tiger team by 12.5 percent. The  TEAM_ID value for the Tiger team is 5960. Which statement should you use?    Mark for Review   (1) Points               UPDATE players (salary) SET salary = salary * 1.125;  

        UPDATE players SET salary = salary * .125 WHERE team_id = 5960;           UPDATE players SET salary = salary * 1.125 WHERE team_id = 5960; (*)           UPDATE players (salary) VALUES(salary * 1.125) WHERE team_id = 5960;                     Incorrect. Refer to Section 7                   Page 10 of 10       1.  Which SQL function can be used to remove heading or trailing characters (or both) from a character  string?  Mark for Review   (1) Points               LPAD           CUT           NVL2           TRIM (*)      

              Correct               2.  Which three statements about functions are true? (Choose three.)  Mark for Review   (1) Points              (Choose all correct answers)     

 

            The SYSDATE function returns the Oracle Server date and time. (*)           The ROUND number function rounds a value to a specified decimal place or the nearest whole  number. (*)           The CONCAT function can only be used on character strings, not on numbers.           The SUBSTR character function returns a portion of a string beginning at a defined character position  to a specified length. (*)                     Correct         You query the database with this SQL statement:  

  SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID"  FROM employee;      In which order are the functions evaluated?    Mark for Review   (1) Points               LOWER, SUBSTR, CONCAT           LOWER, CONCAT, SUBSTR           SUBSTR, CONCAT, LOWER           CONCAT, SUBSTR, LOWER (*)                     Correct        4.  The STYLES table contains this data:    STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00   

869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL 85940  11.00    758960  SANDAL  86979 11.00        You query the database and return the value 40. Which script did you use?    Mark for Review   (1) Points               SELECT INSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;              SELECT INSTR(category, ‐2,2)   FROM styles   WHERE style_id = 895840;              SELECT SUBSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;  (*) 

           SELECT SUBSTR(category, ‐2,2)   FROM styles   WHERE style_id = 758960;                       Correct         You issue this SQL statement:     SELECT INSTR ('organizational sales', 'al')   FROM dual;       Which value is returned by this command?    Mark for Review   (1) Points               1           2           13 (*)  

        17                     Correct       6.  You need to display the number of characters in each customer's last name. Which function should  you use?  Mark for Review   (1) Points               LENGTH (*)           LPAD           COUNT           SUBSTR                     Correct                7.  What will the following SQL statemtent display?     SELECT last_name, LPAD(salary, 15, '$')SALARY   FROM employees; 

     Mark for Review   (1) Points               The last name of employees that have a salary that includes a $ in the value, size of 15 and the column  labeled SALARY.           The last name and the format of the salary limited to 15 digits to the left of the decimal and the  column labeled SALARY.           The last name and salary for all employees with the format of the salary 15 characters long, left‐ padded with the $ and the column labeled SALARY. (*)           The query will result in an error: "ORA‐00923: FROM keyword not found where expected."                     Correct       .  You issue this SQL statement:    SELECT ROUND (1282.248, ‐2)   FROM dual;      What value does this statement produce?    Mark for Review  

(1) Points               1200           1282           1282.25           1300 (*)                     Correct        9.  Evaluate this function: MOD (25, 2) Which value is returned?  Mark for Review   (1) Points               1 (*)           2           25           0              

      Correct        10.  Which comparison operator retrieves a list of values?  Mark for Review   (1) Points               IN (*)           LIKE           BETWEEN...IN...           IS NULL                     Incorrect. Refer to Section 1 Lesson 1        11.  Which function would you use to return the current database server date and time?  Mark for  Review   (1) Points               DATE           SYSDATE (*)           DATETIME      

    CURRENTDATE                     Correct        12.  You need to display the number of months between today's date and each employee's hiredate.  Which function should you use?  Mark for Review   (1) Points               ROUND           BETWEEN           ADD_MONTHS           MONTHS_BETWEEN (*)                     Correct        13.  You need to subtract three months from the current date. Which function should you use?  Mark  for Review   (1) Points               ROUND      

    TO_DATE           ADD_MONTHS (*)           MONTHS_BETWEEN                     Incorrect. Refer to Section 1               14.  Which of the following Date Functions will add calendar months to a date?  Mark for Review   (1) Points               Months + Calendar (Month)           ADD_MONTHS (*)           MONTHS + Date           NEXT_MONTH                     Correct        15.  Evaluate this SELECT statement: 

  SELECT SYSDATE + 30  FROM dual;      Which value is returned by the query?    Mark for Review   (1) Points               the current date plus 30 hours           the current date plus 30 days (*)           the current date plus 30 months           No value is returned because the SELECT statement generates an error.                     Incorrect. Refer to Section 1       16.  Which SQL Statement should you use to display the prices in this format: "$00.30"?  Mark for  Review   (1) Points               SELECT TO_CHAR(price, '$99,900.99') FROM product; (*)      

    SELECT TO_CHAR(price, "$99,900.99") FROM product;           SELECT TO_CHAR(price, '$99,990.99') FROM product;           SELECT TO_NUMBER(price, '$99,900.99') FROM product;                     Correct        17.  All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a  report that displays each employee's name and salary. Each employee's salary must be displayed in the  following format: $000,000.00. Which function should you include in a SELECT statement to achieve the  desired result?  Mark for Review   (1) Points               TO_CHAR (*)           TO_DATE           TO_NUMBER           CHARTOROWID                     Incorrect. Refer to Section 2        18.  The EMPLOYEES table contains these columns:  

  EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2 (25)   FIRST_NAME VARCHAR2 (25)   HIRE_DATE DATE       You need to display HIRE_DATE values in this format:       January 28, 2000     Which SELECT statement could you use?    Mark for Review   (1) Points               SELECT TO_CHAR(hire_date, Month DD, YYYY)  FROM employees;              SELECT TO_CHAR(hire_date, 'Month DD, YYYY')   FROM employees;  (*)        

    SELECT hire_date(TO_CHAR 'Month DD', ' YYYY')  FROM employees;             SELECT TO_CHAR(hire_date, 'Month DD', ' YYYY')   FROM employees;                       Incorrect. Refer to Section 2       19.  Which two statements concerning SQL functions are true? (Choose two.)  Mark for Review   (1) Points              (Choose all correct answers)                Character functions can accept numeric input.           Not all date functions return date values. (*)           Number functions can return number or character values.           Conversion functions convert a value from one data type to another data type. (*)           Single‐row functions manipulate groups of rows to return one result per group of rows.  

                  Incorrect. Refer to Section 2                20.  The EMPLOYEES table contains these columns:     EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2 (25)   FIRST_NAME VARCHAR2 (25)   SALARY NUMBER(6)       You need to create a report to display the salaries of all employees. Which script should you use to  display the salaries in format: "$45,000.00"?    Mark for Review   (1) Points               SELECT TO_CHAR(salary, '$999,999')   FROM employees;             SELECT TO_NUM(salary, '$999,990.99')   FROM employees;        

    SELECT TO_NUM(salary, '$999,999.00')   FROM employees;             SELECT TO_CHAR(salary, '$999,999.00')  FROM employees;  (*)                       Incorrect. Refer to Section 2       21.  If you use the RR format when writing a query using the date 27‐OCT‐17 and the year is 2001, what  year would be the result?  Mark for Review   (1) Points               2001           1901           2017 (*)           1917                     Correct   

     22.  Which of the following General Functions will return the first non‐null expression in the expression  list?  Mark for Review   (1) Points               NVL           NVL2           NULLIF           COALESCE (*)                     Correct       23.  When executed, which statement displays a zero if the TUITION_BALANCE value is zero and the  HOUSING_BALANCE value is null?  Mark for Review   (1) Points               SELECT NVL (tuition_balance + housing_balance, 0) "Balance Due"   FROM student_accounts;   (*)             SELECT NVL(tuition_balance, 0), NVL (housing_balance), tuition_balance + housing_balance "Balance  Due"  

FROM student_accounts;             SELECT tuition_balance + housing_balance   FROM student_accounts;             SELECT TO_NUMBER(tuition_balance, 0), TO_NUMBER (housing_balance, 0), tutition_balance +  housing_balance "Balance Due"   FROM student_accounts;                       Incorrect. Refer to Section 2               24.  Which statement about group functions is true?  Mark for Review   (1) Points               NVL and NVL2, but not COALESCE, can be used with group functions to replace null values.           NVL and COALESCE, but not NVL2, can be used with group functions to replace null values.           NVL, NVL2, and COALESCE can be used with group functions to replace null values. (*)           COALESCE, but not NVL and NVL2, can be used with group functions to replace null values.  

                  Correct       25.  When joining 3 tables in a SELECT statement, how many join conditions are needed in the WHERE  clause?  Mark for Review   (1) Points               0           1           2 (*)           3                     Correct        26.  You need to create a report that lists all employees in the Sales department who do not earn  $25,000 per year. Which query should you issue to accomplish this task?  Mark for Review   (1) Points               SELECT last_name, first_name, salary   FROM employees   WHERE salary > 25000 AND dept_id = 10; 

           SELECT last_name, first_name, salary   FROM employees   WHERE salary = 25000 AND dept_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary <= 25000 AND dept_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary != 25000 AND dept_id = 10;  (*)                       Correct       27.  The CUSTOMERS and SALES tables contain these columns:   CUSTOMERS   CUST_ID NUMBER(10) PRIMARY KEY   COMPANY VARCHAR2(30)  

LOCATION VARCHAR2(20)     SALES   SALES_ID NUMBER(5) PRIMARY KEY   CUST_ID NUMBER(10) FOREIGN KEY   TOTAL_SALES NUMBER(30)     Which SELECT statement will return the customer ID, the company and the total sales?     Mark for Review   (1) Points               SELECT c.cust_id, c.company, s.total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id (+);             SELECT cust_id, company, total_sales   FROM customers, sales   WHERE cust_id = cust_id;             SELECT c.cust_id, c.company, s.total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id; 

(*)             SELECT cust_id, company, total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id;                       Correct        28.  Your have two tables named EMPLOYEES and SALES. You want to identify the sales representatives  who have generated at least $100,000 in revenue.   Which query should you issue?  Mark for Review   (1) Points               SELECT e.fname, e.lname, s.sales   FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue > 100000;             SELECT e.fname, e.lname, s.sales   FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue >= 100000;  (*)    

        SELECT e.fname, e.lname, s.sales   FROM employees, sales   WHERE e.emp_id = s.emp_id AND revenue >= 100000;             SELECT fname, lname, sales   Q FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue > 100000;                       Correct        29.  What happens when you create a Cartesian product?  Mark for Review   (1) Points               All rows from one table are joined to all rows of another table (*)           The table is joined to itself, one column to the next column, exhausting all possibilities           The table is joined to another equal table           All rows that do not match in the WHERE clause are displayed      

              Incorrect. Refer to Section       30.  Which statement about the join syntax of a SELECT statement is true?  Mark for Review   (1) Points               The ON keyword must be included.           The JOIN keyword must be included.           The FROM clause represents the join criteria.           The WHERE clause represents the join criteria. (*)                     Incorrect. Refer to Section 3        31.  Which statement about outer joins is true?  Mark for Review   (1) Points               The tables must be aliased.           The FULL, RIGHT, or LEFT keyword must be included.           The OR operator cannot be used to link outer join conditions. (*)  

        Outer joins are always evaluated before other types of joins in the query.                     Correct        32.  Evaluate this SELECT statement:   SELECT p.player_id, m.last_name, m.first_name, t.team_name   FROM player p   LEFT OUTER JOIN player m ON (p.manager_id = m.player_id)   LEFT OUTER JOIN team t ON (p.team_id = t.team_id);     Which join is evaluated first?    Mark for Review   (1) Points               the self‐join of the player table (*)           the join between the player table and the team table on TEAM_ID           the join between the player table and the team table on MANAGER_ID           the join between the player table and the team table on PLAYER_ID              

      Correct       33.  Which two operators can be used in an outer join condition using the outer join operator (+)?  Mark  for Review   (1) Points               AND and = (*)           OR and =           BETWEEN...AND... and IN           IN and =                     Incorrect. Refer to Section 3        34.  Which statement about a natural join is true?  Mark for Review   (1) Points               Columns with the same names must have identical data types.           Columns with the same names must have the same precision and datatype. (*)           Columns with the same names must have compatible data types.      

    Columns with the same names cannot be included in the SELECT list of the query.                     Incorrect. Refer to Section 4        35.  You need to join all the rows in the EMPLOYEE table to all the rows in the EMP_REFERENCE table.  Which type of join should you create?  Mark for Review   (1) Points               An equijoin           A cross join (*)           An inner join           A full outer join                     Incorrect. Refer to Section 4       36.  Which of the following best describes a natural join?  Mark for Review   (1) Points               A join between two tables that includes columns that share the same name, datatypes and lengths (*)           A join that produces a Cartesian product  

        A join between tables where matching fields do not exist           A join that uses only one table                     Correct                37.  Which SELECT clause creates an equijoin by specifying a column name common to both tables?   Mark for Review   (1) Points               A HAVING clause           The FROM clause           The SELECT clause           A USING clause (*)                     Correct        38.  Which of the following statements is the simplest description of a nonequijoin?  Mark for Review   (1) Points  

            A join condition containing something other than an equality operator (*)           A join condition that is not equal to other joins.           A join condition that includes the (+) on the left hand side.           A join that joins a table to itself                     Incorrect. Refer to Section 4       39.  You created the CUSTOMERS and ORDERS tables by issuing these CREATE TABLE statements in  sequence:   CREATE TABLE customers   (custid varchar2(5),   companyname varchar2(30),   contactname varchar2(30),   address varchar2(30),   city varchar2(20),   state varchar2(30),   phone varchar2(20),   constraint pk_customers_01 primary key (custid));     CREATE TABLE orders   (orderid varchar2(5) constraint pk_orders_01 primary key,  

orderdate date,   total number(15),   custid varchar2(5) references customers (custid));     You have been instructed to compile a report to present the information about orders placed by  customers who reside in Nashville . Which query should you issue to achieve the desired results?    Mark for Review   (1) Points               SELECT custid, companyname   FROM customers   WHERE city = 'Nashville';              SELECT orderid, orderdate, total   FROM orders o   NATURAL JOIN customers c ON o.custid = c.custid   WHERE city = 'Nashville';              SELECT orderid, orderdate, total   FROM orders o   JOIN customers c ON o.custid = c.custid   WHERE city = 'Nashville';   (*)    

        SELECT orderid, orderdate, total   FROM orders   WHERE city = 'Nashville';                       Correct       40.  Below find the structure of the CUSTOMERS and SALES_ORDER tables:     CUSTOMERS  CUSTOMER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_NAME VARCHAR2 (30)   CONTACT_NAME VARCHAR2 (30)  CONTACT_TITLE VARCHAR2 (20)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (20)  COUNTRY_ID NUMBER Foreign key to COUNTRY_ID column of the COUNTRY table   PHONE VARCHAR2 (20)  FAX VARCHAR2 (20)   CREDIT_LIMIT NUMBER(7,2)   

  SALES_ORDER  ORDER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_ID NUMBER Foreign key to CUSTOMER_ID column of the CUSTOMER table  ORDER_DT DATE   ORDER_AMT NUMBER (7,2)   SHIP_METHOD VARCHAR2 (5)       You need to create a report that displays customers without a sales order. Which statement could you  use?    Mark for Review   (1) Points               SELECT c.customer_name   FROM customers c   WHERE c.customer_id not in (SELECT s.customer_id FROM sales_order s);   (*)             SELECT c.customer_name   FROM customers c, sales_order s   WHERE c.customer_id = s.customer_id(+);              SELECT c.customer_name  

FROM customers c, sales_order s   WHERE c.customer_id (+) = s.customer_id;              SELECT c.customer_name   FROM customers c  RIGHT OUTER JOIN sales_order s ON (c.customer_id = s.customer_id);                        Incorrect. Refer to Section 4        41.  Which query will retrieve all the rows in the EMPLOYEES table, even if there is no match in the  DEPARTMENTS table?  Mark for Review   (1) Points               SELECT e.last_name, e.department_id, d.department_name   FROM employees e   RIGHT OUTER JOIN departments d ON (e.department_id = d.department_id);              SELECT e.last_name, e.department_id, d.department_name   FROM employees e   NATURAL JOIN departments d;         

    SELECT e.last_name, e.department_id, d.department_name   FROM employees e  LEFT OUTER JOIN departments d ON (e.department_id = d.department_id);   (*)             SELECT e.last_name, e.department_id, d.department_name   FROM employees e   JOIN departments d USING (e.department_id = d.department_id);                        Incorrect. Refer to Section 4        42.  Which two sets of join keywords create a join that will include unmatched rows from the first table  specified in the SELECT statement?  Mark for Review   (1) Points               LEFT OUTER JOIN and FULL OUTER JOIN (*)           RIGHT OUTER JOIN and LEFT OUTER JOIN           USING and HAVING           OUTER JOIN and USING      

              Incorrect. Refer to Section 4       43.  What should be included in a SELECT statement to return NULL values from all tables?  Mark for  Review   (1) Points               natural joins           left outer joins           full outer joins (*)           right outer joins                     Incorrect. Refer to Section 4       44.  If a select list contains both a column as well as a group function then what clause is required?   Mark for Review   (1) Points               having clause           join clause      

    order by clause           group by clause (*)                     Incorrect. Refer to Section 5       45.  Evaluate this SELECT statement:  SELECT MAX(salary), dept_id   FROM employee   GROUP BY dept_id;     Which values are displayed?    Mark for Review   (1) Points               The highest salary for all employees.           The highest salary in each department. (*)           The employees with the highest salaries.           The employee with the highest salary for each department.              

      Incorrect. Refer to Section 5        46.  Which statement about group functions is true?  Mark for Review   (1) Points               Group functions ignore null values. (*)           Group functions can only be used in a SELECT list.           Group functions can be used in a WHERE clause.           A query that includes a group function in the SELECT list must include a GROUP BY clause.                     Incorrect. Refer to Section 5       47.  What is the best explanation as to why this SQL statement will NOT execute?   SELECT department_id "Department", AVG (salary)"Average"   FROM employees   GROUP BY Department;    Mark for Review   (1) Points               Salaries cannot be averaged as not all the numbers will divide evenly.      

    You cannot use a column alias in the GROUP BY clause. (*)           The GROUP BY clause must have something to GROUP.           The department id is not listed in the departments table.                     Incorrect. Refer to Section 5       48.  The AVG, SUM, VARIANCE, and STDDEV functions can be used with which of the following?  Mark  for Review   (1) Points               Only numeric data types (*)           Integers only           Any data type           All except numeric                     Correct        49.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT   

86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        You need to determine the average payment amount made by each customer in January, February and  March of 2003. Which SELECT statement should you use?    Mark for Review   (1) Points               SELECT AVG(payment_amount)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '31‐MAR‐2003';   (*)             SELECT AVG(payment_amount)   FROM payment;             SELECT SUM(payment_amount)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' and '31‐MAR‐2003';             SELECT AVG(payment_amount)  

FROM payment   WHERE TO_CHAR(payment_date) IN (JAN, FEB, MAR);                        Correct       50.  You need to calculate the standard deviation for the cost of products produced in the Birmingham  facility. Which group function will you use?  Mark for Review   (1) Points               STDEV           STDDEV (*)           VAR_SAMP           VARIANCE                     Incorrect. Refer to Section 5       51.  The VENDORS table contains these columns:   VENDOR_ID NUMBER Primary Key   NAME VARCHAR2(30)   LOCATION_ID NUMBER  

ORDER_DT DATE   ORDER_AMOUNT NUMBER(8,2)     Which two clauses represent valid uses of aggregate functions for this table?    Mark for Review   (1) Points              (Choose all correct answers)                FROM MAX(order_dt)           SELECT SUM(order_dt)           SELECT SUM(order_amount) (*)           WHERE MAX(order_dt) = order_dt           SELECT location_id, MIN(AVG(order_amount)) (*)                     Incorrect. Refer to Section 5       52.  Which group function would you use to display the lowest value in the SALES_AMOUNT column?   Mark for Review   (1) Points          

    AVG           COUNT           MAX           MIN (*)                     Incorrect. Refer to Section 5        53.  You need to calculate the average salary of employees in each department. Which group function  will you use?  Mark for Review   (1) Points               AVG (*)           MEAN           MEDIAN           AVERAGE                     Correct      

 54.  Which group functions below act on character, number and date data types?   (Choose more than one answer)  Mark for Review   (1) Points              (Choose all correct answers)                SUM           MAX (*)           MIN (*)           AVG           COUNT (*)                     Correct               55.  The PRODUCTS table contains these columns:  PROD_ID NUMBER(4)   PROD_NAME VARCHAR2(30)  PROD_CAT VARCHAR2(30)  PROD_PRICE NUMBER(3)  

PROD_QTY NUMBER(4)    The following statement is issued:     SELECT AVG(prod_price, prod_qty)   FROM products;     What happens when this statement is issued?    Mark for Review   (1) Points               Both the average price and the average quantity of the products are returned.           Only the average quantity of the products is returned.           The values in the PROD_PRICE column and the PROD_QTY column are averaged together.           An error occurs. (*)                     Incorrect. Refer to Section 5       56.  The STYLES table contains this data:   STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00   

968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL  85940  11.00    758960  SANDAL  86979        You issue this SELECT statement:    SELECT COUNT(category)  FROM styles;     Which value is displayed?    Mark for Review   (1) Points               0           6           7 (*)           The statement will NOT execute successfully.      

              Incorrect. Refer to Section 5        57.  Examine the data from the LINE_ITEM table:   LINE_ITEM_ID  ORDER_ID  PRODUCT_ID  PRICE  DISCOUNT    890898  847589  848399  8.99  0.10    768385  862459  849869  5.60  0.05    867950  985490  945809  5.60    954039  439203  438925  5.25  0.15    543949  349302  453235  4.50        You query the LINE_ITEM table and a value of 5 is returned. Which SQL statement did you execute?    Mark for Review   (1) Points               SELECT COUNT(discount) FROM line_item;           SELECT COUNT(*) FROM line_item; (*)           SELECT SUM(discount) FROM line_item;           SELECT AVG(discount) FROM line_item;              

      Incorrect. Refer to Section 5       58.  Group functions can avoid computations involving duplicate values by including which keyword?   Mark for Review   (1) Points               NULL           DISTINCT (*)           SELECT           UNLIKE                     Incorrect. Refer to Section 5               59.  Evaluate this SELECT statement:  SELECT COUNT(*)   FROM products;     Which statement is true?    Mark for Review   (1) Points          

    The number of rows in the table is displayed. (*)           The number of unique PRODUCT_IDs in the table is displayed.           An error occurs due to an error in the SELECT clause.           An error occurs because no WHERE clause is included in the SELECT statement.                     Incorrect. Refer to Section 5       60.  The PLAYERS table contains these columns:   PLAYER_ID NUMBER PK   PLAYER_NAME VARCHAR2 (30)   TEAM_ID NUMBER   HIRE_DATE DATE   SALARY NUMBER (8,2)     Which two clauses represent valid uses of aggregate functions? (Choose three.)    Mark for Review   (1) Points              (Choose all correct answers)                ORDER BY AVG(salary)  

        GROUP BY MAX(salary) (*)           SELECT AVG(NVL(salary, 0)) (*)           HAVING MAX(salary) > 10000 (*)           WHERE hire_date > AVG(hire_date)                     Incorrect. Refer to Section 6       61.  The MANUFACTURER table contains these columns:   MANUFACTURER_ID NUMBER   MANUFACTURER_NAME VARCHAR2(30)   TYPE VARCHAR2(25)   LOCATION_ID NUMBER    You need to display the number of unique types of manufacturers at each location. Which SELECT  statement should you use?    Mark for Review   (1) Points               SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer   GROUP BY location_id; 

(*)             SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer;             SELECT location_id, COUNT(type)   FROM manufacturer   GROUP BY location_id;             SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer   GROUP BY type;                       Correct        62.  What is the correct order of clauses in a SELECT statement?  Mark for Review   (1) Points               SELECT   FROM  

WHERE   ORDER BY   HAVING             SELECT   FROM   HAVING   GROUP BY   WHERE  ORDER BY              SELECT   FROM   WHERE  GROUP BY   HAVING   ORDER BY  (*)             SELECT   FROM   WHERE  

HAVING   ORDER BY   GROUP BY                       Correct        63.  The PRODUCTS table contains these columns:   PROD_ID NUMBER(4)   PROD_NAME VARCHAR(20)   PROD_CAT VARCHAR2(15)   PROD_PRICE NUMBER(5)  PROD_QTY NUMBER(4)     You need to identify the minimum product price in each product category.  Which statement could you use to accomplish this task?   Mark for Review   (1) Points               SELECT prod_cat, MIN (prod_price)   FROM products  GROUP BY prod_price;        

    SELECT prod_cat, MIN (prod_price)   FROM products  GROUP BY prod_cat;  (*)             SELECT MIN (prod_price), prod_cat  FROM products   GROUP BY MIN (prod_price), prod_cat;             SELECT prod_price, MIN (prod_cat)  FROM products  GROUP BY prod_cat;                       Correct        64.  The EMPLOYEES table contains these columns:   ID_NUMBER NUMBER Primary Key   NAME VARCHAR2 (30)   DEPARTMENT_ID NUMBER   SALARY NUMBER (7,2)   HIRE_DATE DATE 

  Evaluate this SQL statement:     SELECT id_number, name, department_id, SUM(salary)   FROM employees   WHERE salary > 25000   GROUP BY department_id, id_number, name   ORDER BY hire_date;     Why will this statement cause an error?    Mark for Review   (1) Points               The HAVING clause is missing.           The WHERE clause contains a syntax error.           The SALARY column is NOT included in the GROUP BY clause.           The HIRE_DATE column is NOT included in the GROUP BY clause. (*)                     Correct        65.  Evaluate this SELECT statement: 

SELECT SUM(salary), dept_id, department_name   FROM employee   WHERE dept_id = 1   GROUP BY department;     Which clause of the SELECT statement contains a syntax error?   Mark for Review   (1) Points               SELECT           FROM           WHERE           GROUP BY (*)                     Incorrect. Refer to Section       66.  The PLAYERS and TEAMS tables contain these columns:   PLAYERS   PLAYER_ID NUMBER NOT NULL, Primary Key   LAST_NAME VARCHAR2 (30) NOT NULL   FIRST_NAME VARCHAR2 (25) NOT NULL 

TEAM_ID NUMBER   POSITION VARCHAR2 (25)    TEAMS   TEAM_ID NUMBER NOT NULL, Primary Key   TEAM_NAME VARCHAR2 (25)     You need to create a report that lists the names of each team with more than five pitchers.   Which SELECT statement will produce the desired result?   Mark for Review   (1) Points               SELECT t.team_name, COUNT(p.player_id)  FROM players p, teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'PITCHER'   GROUP BY t.team_name;             SELECT t.team_name, COUNT(p.player_id)   FROM players JOIN teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'PITCHER' HAVING COUNT(p.player_id) > 5;             SELECT t.team_name, COUNT(p.player_id)   FROM players p, teams t ON (p.team_id = t.team_id)  

WHERE UPPER(p.position) = 'PITCHER'   GROUP BY t.team_name HAVING COUNT(p.player_id) > 5;              SELECT t.team_name, COUNT(p.player_id)   FROM players p JOIN teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'PITCHER'   GROUP BY t.team_name HAVING COUNT(p.player_id) > 5;   (*)                       Incorrect. Refer to Section 6        67.  Which statement about the GROUP BY clause is true?  Mark for Review   (1) Points               To exclude rows before dividing them into groups using the GROUP BY clause, you use should a  WHERE clause. (*)           You can use a column alias in a GROUP BY clause.           By default, rows are not sorted when a GROUP BY clause is used.           You must use the HAVING clause with the GROUP BY clause.      

              Incorrect. Refer to Section 6       68.  Using a subquery in which clause will return a syntax error?  Mark for Review   (1) Points               WHERE           FROM           HAVING           There are no places you cannot place subqueries. (*)                     Incorrect. Refer to Section 6        69.  Which of the following is TRUE regarding the order of subquery execution?  Mark for Review   (1) Points               The outer query is executed first           The subquery executes once after the main query           The subquery executes once before the main query (*)  

        The result of the main query is used with the subquery                     Correct        70.  The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns:   TEACHERS  TEACHER_ID NUMBER(5) Primary Key  NAME VARCHAR2 (25)   SUBJECT_ID NUMBER(5)       CLASS_ASSIGNMENTS  CLASS_ID NUMBER (5) Primary Key   TEACHER_ID NUMBER (5)  START_DATE DATE  MAX_CAPACITY NUMBER (3)    All MAX_CAPACITY values are greater than 10. Which two SQL statements correctly use subqueries?  (Choose two.)    Mark for Review   (1) Points              (Choose all correct answers)           

    SELECT *   FROM class_assignments   WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments);  (*)             SELECT *   FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE class_id = 45963);   (*)             SELECT *   FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);              SELECT *   FROM teachers   WHERE teacher_id LIKE (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);              SELECT *   FROM class_assignments   WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments GROUP BY teacher_id);  

                     Incorrect. Refer to Section 6                71.  The EMPLOYEES and ORDERS tables contain these columns:   EMPLOYEES  EMP_ID NUMBER(10) NOT NULL PRIMARY KEY   FNAME VARCHAR2(30)  LNAME VARCHAR2(30)  ADDRESS VARCHAR2(25)  CITY VARCHAR2(20)  STATE VARCHAR2(2)   ZIP NUMBER(9)  TELEPHONE NUMBER(10)     ORDERS   ORDER_ID NUMBER(10) NOT NULL PRIMARY KEY   EMP_ID NUMBER(10) NOT NULL FOREIGN KEY  ORDER_DATE DATE  TOTAL NUMBER(10)     Which SELECT statement will return all orders generated by a sales representative named Franklin  during the year 2001?    Mark for Review  

(1) Points               SELECT order_id, total   FROM ORDERS (SELECT emp_id FROM employees WHERE lname = 'Franklin')   WHERE order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01';              SELECT (SELECT emp_id FROM employees WHERE lname = 'Franklin') AND order_id, total   FROM ORDERS   WHERE order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01';              SELECT order_id, emp_id, total   FROM ORDERS   WHERE order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01' AND emp_id = 'Franklin';              SELECT order_id, total   FROM ORDERS  WHERE emp_id = (SELECT emp_id FROM employees WHERE lname = 'Franklin')   AND order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01';   (*)                

      Correct       72.  the structures of the CUSTOMER and ORDER_HISTORY tables:   CUSTOMER   CUSTOMER_ID NUMBER(5)  NAME VARCHAR2(25)  CREDIT_LIMIT NUMBER(8,2)  OPEN_DATE DATE       ORDER_HISTORY  ORDER_ID NUMBER(5)  CUSTOMER_ID NUMBER(5)  ORDER_DATE DATE  TOTAL NUMBER(8,2)     Which of the following scenarios would require a subquery to return the desired results?    Mark for Review   (1) Points               You need to display the date each customer account was opened.           You need to display each date that a customer placed an order.           You need to display all the orders that were placed on a certain date.  

        You need to display all the orders that were placed on the same day as order number 25950. (*)                     Incorrect. Refer to Section 6       73.  You need to produce a report that contains all employee‐related information for those employees  who have Brad Carter as a supervisor. However, you are not sure which supervisor ID belongs to Brad  Carter. Which query should you issue to accomplish this task?  Mark for Review   (1) Points               SELECT *   FROM employees   WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');              SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');     

        SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT employee_id        FROM supervisors        WHERE last_name = 'Carter');             SELECT *   FROM employees  WHERE supervisor_id =        (SELECT employee_id        FROM employees        WHERE last_name = 'Carter');   (*)                       Incorrect. Refer to Section 6                74.  If a single‐row subquery returns a null value and uses the equality comparison operator, what will  the outer query return?  Mark for Review   (1) Points          

    no rows (*)           all the rows in the table           a null value           an error                     Incorrect. Refer to Section 6        75.  Which best describes a single‐row subquery?  Mark for Review   (1) Points               a query that returns only one row from the inner SELECT statement (*)           a query that returns one or more rows from the inner SELECT statement           a query that returns only one column value from the inner SELECT statement           a query that returns one or more column values from the inner SELECT statement                     Incorrect. Refer to Section 6      

 76.  Which best describes a multiple‐row subquery?  Mark for Review   (1) Points               A query that returns only one row from the inner SELECT statement           A query that returns one or more rows from the inner SELECT statement (*)           A query that returns only one column value from the inner SELECT statement           A query that returns one or more column values from the inner SELECT statement                     Incorrect. Refer to Section 6        77.  Which of the following statements contains a comparison operator that is used to restrict rows  based on a list of values returned from an inner query?  Mark for Review   (1) Points               SELECT description   FROM d_types   WHERE code IN (SELECT type_code FROM d_songs);             SELECT description  FROM d_types  WHERE code = ANY (SELECT type_code FROM d_songs); 

           SELECT description   FROM d_types   WHERE code <> ALL (SELECT type_code FROM d_songs);             All of the above. (*)                     Incorrect. Refer to Section 6        78.  Evaluate this SELECT statement:  SELECT customer_id, name   FROM customer   WHERE customer_id IN      (SELECT customer_id       FROM customer       WHERE state_id = 'GA' AND credit_limit > 500.00);     What would happen if the inner query returned null?    Mark for Review   (1) Points               An error would be returned.  

        No rows would be returned by the outer query. (*)           All the rows in the table would be selected.           Only the rows with CUSTOMER_ID values equal to null would be selected.                     Incorrect. Refer to Section 6       79.  You need to create a SELECT statement that contains a multiple‐row subquery, which comparison  operator(s) can you use?  Mark for Review   (1) Points               IN, ANY, and ALL (*)           LIKE           BETWEEN...AND...           =, <, and >                     Incorrect. Refer to Section 6       80.  Which of the following best describes the meaning of the ANY operator?  Mark for Review  

(1) Points               Equal to any member in the list           Compare value to each value returned by the subquery (*)           Compare value to every value returned by the subquery           Equal to each value in the list                     Correct        81.  Which operator or keyword cannot be used with a multiple‐row subquery?  Mark for Review   (1) Points               ALL           ANY           = (*)           >              

      Incorrect. Refer        82.  What would happen if you attempted to use a single‐row operator with a multiple‐row subquery?   Mark for Review   (1) Points               An error would be returned. (*)           No rows will be selected.           All the rows will be selected.           The data returned may or may not be correct.                     Incorrect. Refer to Section 6       83.  Evaluate this SQL statement:   SELECT employee_id, last_name, salary   FROM employees  WHERE department_id IN      (SELECT department_id      FROM employees      WHERE salary > 30000 AND salary < 50000);    Which values will be displayed?  

 Mark for Review   (1) Points               Only employees who earn more than $30,000.           Only employees who earn less than $50,000.           All employees who work in a department with employees who earn more than $30,000 and more  than $50,000.           All employees who work in a department with employees who earn more than $30,000, but less than  $50,000. (*)                     Correct       84.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        This statement fails when executed:     SELECT customer_id, payment_type  

FROM payment   WHERE payment_id =      (SELECT payment_id       FROM payment       WHERE payment_amount = 596.00 OR payment_date = '20‐MAR‐2003');     Which change could correct the problem?    Mark for Review   (1) Points               Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)           Remove the quotes surrounding the date value in the OR clause.           Remove the parentheses surrounding the nested SELECT statement.           Change the comparison operator to a single‐row operator.                     Incorrect. Refer to Section 6        85.  What is wrong with the following query?   SELECT employee_id, last_name   FROM employees   WHERE salary = 

   (SELECT MIN(salary) FROM employees GROUP BY department_id);     Mark for Review   (1) Points               Single rows contain multiple values and a logical operator is used.           Subquery returns more than one row and single row comparison operator is used. (*)           Subquery references the wrong table in the WHERE clause.           Nothing, it will run without problems.                     Incorrect. Refer to Section 6                86.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        This statement fails when executed:  

  SELECT payment_date, customer_id, payment_amount   FROM payment   WHERE payment_id =      (SELECT payment_id       FROM payment       WHERE payment_date >= '05‐JAN‐2002' OR payment_amount > 500.00);     Which change could correct the problem?    Mark for Review   (1) Points               Remove the subquery WHERE clause.           Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)           Include the PAYMENT_ID column in the select list of the outer query.           Remove the single quotes around the date value in the inner query WHERE clause.                     Incorrect. Refer to Section 6        87.  Assume all the column names are correct. The following SQL statement will execute which of the  following?  INSERT INTO departments (department_id, department_name, manager_id, location_id)  

VALUES (70, 'Public Relations', 100, 1700);     Mark for Review   (1) Points               100 will be inserted into the department_id column           1700 will be inserted into the manager_id column           70 will be inserted into the department_id column (*)           'Public Relations' will be inserted into the manager_name column                     Incorrect. Refer to Section 7        88.  You need to add a row to an existing table. Which DML statement should you use?  Mark for  Review   (1) Points               UPDATE           INSERT (*)           DELETE      

    CREATE                     Incorrect. Refer        89.  The PRODUCTS table contains these columns:  PRODUCT_ID NUMBER NOT NULL   PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER NOT NULL  LIST_PRICE NUMBER (7,2)  COST NUMBER (5,2)  QTY_IN_STOCK NUMBER(4)  LAST_ORDER_DT DATE NOT NULL DEFAULT SYSDATE       Which INSERT statement will execute successfully?    Mark for Review   (1) Points               INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, 700); (*)           INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, SYSDATE);           INSERT INTO products(product_id, product_name) VALUES (2958, 'Cable');      

    INSERT INTO products(product_id, product_name, supplier_id VALUES (2958, 'Cable', 8690, SYSDATE);                     Incorrect. Refer to Section 7        90.  You need to copy rows from the EMPLOYEE table to the EMPLOYEE_HIST table. What could you use  in the INSERT statement to accomplish this task?  Mark for Review   (1) Points               an ON clause           a SET clause           a subquery (*)           a function                     Correct               91.  One of the sales representatives, Janet Roper, has informed you that she was recently married, and  she has requested that you update her name in the employee database. Her new last name is Cooper.  Janet is the only person with the last name of Roper that is employed by the company. The EMPLOYEES  table contains these columns and all data is stored in lowercase:   EMP_ID NUMBER(10) PRIMARY KEY   LNAME VARCHAR2(20) 

FNAME VARCHAR2(20)  DEPT VARCHAR2 (20)  HIRE_DATE DATE  SALARY NUMBER(10)    Which UPDATE statement will accomplish your objective?   Mark for Review   (1) Points               UPDATE employees  SET lname = 'cooper'   WHERE lname = 'roper';   (*)             UPDATE employees lname = 'cooper'   WHERE lname = 'roper';             UPDATE employees  SET lname = 'roper'   WHERE lname = 'cooper';             UPDATE employees 

SET cooper = 'lname'   WHERE lname = 'roper';                       Incorrect. Refer to Section 7       92.  You need to remove a row from the EMPLOYEE table. Which statement would you use?  Mark for  Review   (1) Points               UPDATE with a WHERE clause           INSERT with a WHERE clause           DELETE with a WHERE clause (*)           MERGE with a WHERE clause                     Correct        93.  Examine the structures of the PLAYERS, MANAGERS, and TEAMS tables:  PLAYERS  PLAYER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (30) 

FIRST_NAME VARCHAR2 (25)  TEAM_ID NUMBER  MGR_ID NUMBER  SIGNING_BONUS NUMBER(9,2)  SALARY NUMBER(9,2)    MANAGERS  MANAGER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (20)  FIRST_NAME VARCHAR2 (20)  TEAM_ID NUMBER    TEAMS  TEAM_ID NUMBER Primary Key  TEAM_NAME VARCHAR2 (20)  OWNER_LAST_NAME VARCHAR2 (20)  OWNER_FIRST_NAME VARCHAR2 (20)    Which situation would require a subquery to return the desired result?    Mark for Review   (1) Points               To display the names each player on the Lions team           To display the maximum and minimum player salary for each team  

        To display the names of the managers for all the teams owned by a given owner (*)           To display each player, their manager, and their team name for all teams with a id value greater than  5000                     Correct        94.  The EMPLOYEES table contains the following columns:   EMP_ID NUMBER(10) PRIMARY KEY   LNAME VARCHAR2(20)   FNAME VARCHAR2(20)  DEPT VARCHAR2(20)  HIRE_DATE DATE   SALARY NUMBER(9,2)   BONUS NUMBER(9,2)     You want to execute one DML statement to change the salary of all employees in department 10 to  equal the new salary of employee number 89898. Currently, all employees in department 10 have the  same salary value. Which statement should you execute?    Mark for Review   (1) Points               UPDATE employee   SET salary = SELECT salary   FROM employee  

WHERE emp_id = 89898;             UPDATE employee   SET salary = (SELECT salary FROM employee WHERE emp_id = 89898);             UPDATE employee  SET salary = (SELECT salary FROM employee WHERE emp_id = 89898)   WHERE dept = 10;   (*)             UPDATE employee   SET salary = (SELECT salary FROM employee WHERE emp_id = 89898 AND dept = 10);                       Incorrect. Refer to Section 7        95.  Evaluate this statement: DELETE FROM customer; Which statement is true?  Mark for Review   (1) Points               The statement deletes all the rows from the CUSTOMER table. (*)      

    The statement deletes the CUSTOMER column.           The statement deletes the first row in the CUSTOMERS table.           The statement removes the structure of the CUSTOMER table from the database.                     Incorrect. Refer to Section 7       96.  When the WHERE clause is missing in a DELETE statement, what is the result?  Mark for Review   (1) Points               All rows are deleted from the table. (*)           The table is removed from the database.           An error message is displayed indicating incorrect syntax.           Nothing. The statement will not execute.                     Correct                97.  The PLAYERS table contains these columns: 

PLAYER_ID NUMBER NOT NULL  PLAYER_LNAME VARCHAR2(20) NOT NULL  PLAYER_FNAME VARCHAR2(10) NOT NULL   TEAM_ID NUMBER   SALARY NUMBER(9,2)     You need to increase the salary of each player for all players on the Tiger team by 12.5 percent. The  TEAM_ID value for the Tiger team is 5960. Which statement should you use?    Mark for Review   (1) Points               UPDATE players (salary) SET salary = salary * 1.125;           UPDATE players SET salary = salary * .125 WHERE team_id = 5960;           UPDATE players SET salary = salary * 1.125 WHERE team_id = 5960; (*)           UPDATE players (salary) VALUES(salary * 1.125) WHERE team_id = 5960;                     Correct        98.  You need to delete a record in the EMPLOYEES table for Tim Jones, whose unique employee  identification number is 348. The EMPLOYEES table contains these columns:  ID_NUM NUMBER(5) PRIMARY KEY  LNAME VARCHAR2(20) 

FNAME VARCHAR2(20)  ADDRESS VARCHAR2(30)  PHONE NUMBER(10)    Which DELETE statement will delete the appropriate record without deleting any additional records?    Mark for Review   (1) Points               DELETE FROM employees WHERE id_num = 348; (*)           DELETE FROM employees WHERE lname = jones;           DELETE * FROM employees WHERE id_num = 348;           DELETE 'jones' FROM employees;                     Correct       99.  You need to update the expiration date of products manufactured before June 30th . In which  clause of the UPDATE statement will you specify this condition?  Mark for Review   (1) Points               the ON clause           the WHERE clause (*)  

        the SET clause           the USING clause                     Correct        100.  You need to update both the DEPARTMENT_ID and LOCATION_ID columns in the EMPLOYEE table  using one UPDATE statement. Which clause should you include in the UPDATE statement to update  multiple columns?  Mark for Review   (1) Points               the USING clause           the ON clause           the WHERE clause           the SET clause (*)                     Correct    1.  You need to display each employee's name in all uppercase letters. Which function should you use?   Mark for Review   (1) Points              

CASE           UCASE           UPPER (*)           TOUPPER  2.  You need to return a portion of each employee's last name, beginning with the first character up to  the fifth character. Which character function should you use?  Mark for Review   (1) Points               INSTR           TRUNC           SUBSTR (*)           CONCAT  3.    

Evaluate this SELECT statement: 

SELECT LENGTH(email)  FROM employee;    What will this SELECT statement display?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

The longest e‐mail address in the EMPLOYEE table. 

 

 

 

 

 

The email address of each employee in the EMPLOYEE table. 

 

 

 

 

 

The number of characters for each value in the EMAIL column in the employees table. (*) 

 

 

 

 

 

The maximum number of characters allowed in the EMAIL column. 

 

 

 

 

 

 

 

 

4.   You need to display the number of characters in each customer's last name. Which function  should you use?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

LENGTH (*) 

 

 

 

 

 

 

 

 

 

LPAD 

 

 

 

 

 

COUNT 

 

 

 

 

 

SUBSTR 

   

5.   Which functions can be used to manipulate character, number, and date column values?  Mark for Review  

 

 

 

 

(1) Points   

 

 

 

 

 

 

 

 

CONCAT, RPAD, and TRIM (*) 

 

 

 

 

 

UPPER, LOWER, and INITCAP 

 

 

 

 

 

ROUND, TRUNC, and MOD 

 

 

 

 

 

ROUND, TRUNC, and ADD_MONTH 

 

 

 

 

 

6.  

 

 

 

 

   

 

 

You query the database with this SQL statement: 

  SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID"  FROM employee; 

  In which order are the functions evaluated?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

LOWER, SUBSTR, CONCAT 

 

 

 

 

 

LOWER, CONCAT, SUBSTR 

 

 

 

 

 

SUBSTR, CONCAT, LOWER 

 

 

 

 

 

CONCAT, SUBSTR, LOWER (*) 

 

 

 

 

7.  

Which three statements about functions are true? (Choose three.)  

 

 

 

 

 

 

 

 

 

 

 

 

 

(1) Points   

 

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

The SYSDATE function returns the Oracle Server date and time. (*) 

 

   

 

Mark for Review  

 

 

 

 

 

 

  The ROUND number function rounds a value to a specified decimal place or the nearest whole  number. (*)   

 

 

 

 

The CONCAT function can only be used on character strings, not on numbers. 

  

Which comparison operator retrieves a list of values?   Mark for Review  

 

 

(1) Points   

 

 

 

 

 

 

 

 

IN (*) 

 

 

 

 

 

 

 

LIKE 

 

 

 

 

 

 

 

BETWEEN...IN... 

 

 

 

 

 

 

 

 

   

IS NULL 

 

 

 

 

 

 

  The SUBSTR character function returns a portion of a string beginning at a defined character  position to a specified length. (*) 

  10.   Which two functions can be used to manipulate number or date column values, but NOT  character column values? (Choose two.)   Mark for Review   (1) Points   

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

RPAD 

 

 

 

 

 

 

 

TRUNC (*) 

 

 

 

 

 

ROUND (*) 

 

 

 

 

 

INSTR 

 

 

 

 

 

CONCAT 

 

11.  

 

 

 

 

 

 

 

 

 

 

Evaluate this SELECT statement: 

  SELECT SYSDATE + 30  FROM dual;    Which value is returned by the query? 

 

 

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

the current date plus 30 hours 

 

 

 

 

 

the current date plus 30 days (*) 

 

 

 

 

 

the current date plus 30 months 

 

 

 

 

 

No value is returned because the SELECT statement generates an error. 

 

 

 

 

 

 

 

 

12.   You need to display the current year as a character value (for example: Two Thousand and One).  Which element would you use?  Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

RR 

 

 

 

 

 

 

 

YY 

 

 

 

 

 

 

 

YYYY 

 

 

 

 

 

 

 

 

   

YEAR (*) 

 

 

 

 

 

 

    13.   You need to display the number of months between today's date and each  employee's hiredate. Which function should you use?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

ROUND 

 

 

 

 

 

BETWEEN 

 

 

 

 

 

ADD_MONTHS 

 

 

 

 

 

MONTHS_BETWEEN (*) 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  14.   Which of the following SQL statements will correctly display the last name and the  number of weeks employed for all employees in department 90?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

 

 

SELECT last_name, (SYSDATE‐hire_date)/7 AS WEEKS 

FROM employees  WHERE department_id = 90;    (*)   

 

 

 

 

SELECT last name, (SYSDATE‐hire_date)/7 DISPLAY WEEKS 

 

 

FROM employees  WHERE department id = 90;     

 

 

 

 

SELECT last_name, # of WEEKS 

 

 

FROM employees  WHERE department_id = 90;     

 

 

 

 

SELECT last_name, (SYSDATE‐hire_date)AS WEEK 

 

 

FROM employees  WHERE department_id = 90;   

 

 

 

 

 

16.  

Which statement concerning single row functions is true?  

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

Single row functions can accept only one argument, but can return multiple values. 

 

 

 

 

 

Single row functions cannot modify a data type. 

 

 

 

 

 

Single row functions can be nested. (*) 

 

 

 

 

 

Single row functions return one or more results per row. 

 

 

   

  17.   Which two statements concerning SQL functions are true? (Choose two.)  Mark for Review  

 

 

 

 

 

 

 

 

 

 

 

(1) Points   

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

Character functions can accept numeric input. 

 

 

 

 

 

Not all date functions return date values. (*) 

 

 

 

 

 

 

 

 

 

 

 

 

 

Number functions can return number or character values. 

 

 

 

 

 

Conversion functions convert a value from one data type to another data type. (*) 

 

 

 

 

 

Single‐row functions manipulate groups of rows to return one result per group of rows. 

 

 

 

 

 

 

 

 

 

    18.   Which three statements concerning explicit data type conversions are true?  (Choose three.) Mark for Review   (1) Points   

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

Use the TO_NUMBER function to convert a number to a character string. 

 

 

 

 

 

Use the TO_DATE function to convert a character string to a date value. (*) 

 

 

 

 

 

Use the TO_NUMBER function to convert a character string of digits to a number. (*) 

 

 

 

 

 

Use the TO_DATE function to convert a date value to character string or number. 

 

 

 

 

 

   

 

 

 

 

 

 

 

 

 

Use the TO_CHAR function to convert a number or date value to character string. (*) 

19.  

The EMPLOYEES table contains these columns: 

 

 

  EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2 (25)  FIRST_NAME VARCHAR2 (25)  HIRE_DATE DATE    You need to display HIRE_DATE values in this format:    January 28, 2000    Which SELECT statement could you use?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

 

SELECT TO_CHAR(hire_date, Month DD, YYYY) 

FROM employees;     

 

 

 

 

SELECT TO_CHAR(hire_date, 'Month DD, YYYY') 

 

 

FROM employees;    (*)   

 

 

 

 

SELECT hire_date(TO_CHAR 'Month DD', ' YYYY') 

 

 

FROM employees;     

 

 

 

 

SELECT TO_CHAR(hire_date, 'Month DD', ' YYYY') 

 

 

FROM employees;  20.  

Which arithmetic operation will return a numeric value?  

(1) Points   

 

 

 

 

 

 

 

 

TO_DATE('01‐JUN‐2004') ‐ TO_DATE('01‐OCT‐2004') (*) 

 

 

 

 

 

NEXT_DAY(hire_date) + 5 

 

 

 

 

 

SYSDATE ‐ 6 

 

 

 

 

 

 

 

 

 

 

 

 

Mark for Review  

 

SYSDATE + 30 / 24 

 

 

 

 

    21.   If you use the RR format when writing a query using the date 27‐OCT‐17 and the  year is 2001, what year would be the result?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

2001 

 

 

 

 

 

 

 

1901 

 

 

 

 

 

 

 

2017 (*) 

 

 

 

 

 

1917 

 

 

   

 

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 2 

 

 

Incorrect   

 

 

 

Previous  22.  

 

 

Page 21 of 100  Next 

  Summary 

The PRODUCT table contains this column: PRICE NUMBER(7,2) 

Evaluate this statement: 

  SELECT NVL(10 / price, '0')  FROM PRODUCT;    What would happen if the PRICE column contains null values?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

The statement would fail because values cannot be divided by 0. 

 

 

 

 

 

A value of 0 would be displayed. (*) 

 

 

 

 

 

A value of 10 would be displayed. 

 

 

 

 

 

The statement would fail because values cannot be divided by null. 

 

 

 

 

 

 

 

 

23.   Which of the following General Functions will return the first non‐null expression in the  expression list?  Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

NVL 

 

 

 

 

 

 

 

 

 

NVL2 

 

 

 

 

 

 

 

NULLIF 

 

 

 

 

 

 

 

COALESCE (*) 

 

 

 

 

 

 

    24.   You need to replace null values in the DEPT_ID column with the text "N/A".  Which functions should you use?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

TO_CHAR and NVL (*) 

 

 

 

 

 

TO_CHAR and NULL 

 

 

 

 

 

TO_CHAR and NULLIF 

25.  

What happens when you create a Cartesian product?   Mark for Review  

 

 

 

 

 

 

(1) Points   

 

 

 

 

 

 

 

 

 

 

All rows from one table are joined to all rows of another table (*) 

 

 

 

 

 

The table is joined to itself, one column to the next column, exhausting all possibilities 

 

 

 

 

 

The table is joined to another equal table 

 

 

 

 

 

All rows that do not match in the WHERE clause are displayed 

 

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 3 

Incorrect  26.  

 

 

 

 

 

 

The PATIENTS and DOCTORS tables contain these columns: 

  PATIENTS  PATIENT_ID NUMBER(9)  LAST_NAME VARCHAR2 (20)  FIRST_NAME VARCHAR2 (20)    DOCTORS  DOCTOR_ID NUMBER(9)  LAST_NAME VARCHAR2 (20)  FIRST_NAME VARCHAR2 (20)   

 

You issue this statement:  SELECT patient_id, doctor_id  FROM patients, doctors;    Which result will this statement provide?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

A report containing all possible combinations of the PATIENT_ID and DOCTOR_ID values (*) 

 

 

 

 

 

A report containing each patient's id value and their doctor's id value 

 

 

 

 

 

A report with NO duplicate PATIENT_ID or DOCTOR_ID values 

 

 

 

 

 

A syntax error 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

27.   When joining 3 tables in a SELECT statement, how many join conditions are needed in the  WHERE clause?  Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

 

 



 

 

 

 

 



 

 

 

 

 

2 (*) 

 

 

 

 

 



 

 

   

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 3 

Incorrect 

 

28.   You need to provide a list of the first and last names of all employees who work in the Sales  department who earned a bonus and had sales over $50,000. The company president would like the  sales listed starting with the highest amount first. The EMPLOYEES table and the SALES_DEPT table  contain the following columns:    EMPLOYEES  EMP_ID NUMBER(10) PRIMARY KEY  LNAME VARCHAR2(20)  FNAME VARCHAR2(20)  DEPT VARCHAR2(20)  HIRE_DATE DATE  SALARY NUMBER(10)   

SALES_DEPT  SALES_ID NUMBER(10) PRIMARY KEY  SALES NUMBER(20)  QUOTA NUMBER(20)  MGR VARCHAR2(30)  BONUS NUMBER(10)  EMP_ID NUMBER(10) FOREIGN KEY    Which SELECT statement will accomplish this task?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

 

SELECT e.emp_id, e.lname, e.fname, s.emp_id, s.bonus, s.sales 

FROM employees e, sales_dept s  ORDER BY sales DESC  WHERE e.emp_id = s.emp_id AND sales > 50000 AND s.bonus IS NOT NULL;     

 

 

 

 

SELECT e.emp_id, e.lname, e.fname, s.emp_id, s.bonus, s. sales 

 

 

ORDER BY sales DESC  FROM employees e, sales_dept s  WHERE e.emp_id = s.emp_id AND s.bonus IS NOT NULL AND sales > 50000;   

 

 

 

 

 

SELECT e.emp_id, e.lname, e.fname, s.emp_id, s.bonus, s. sales 

 

 

WHERE e.emp_id = s.emp_id  FROM employees e, sales_dept s AND s.bonus IS NOT NULL AND sales > 50000  ORDER BY sales DESC;     

 

 

 

 

SELECT e.emp_id, e.lname, e.fname, s.emp_id, s.bonus, s. sales 

 

 

FROM employees e, sales_dept s  WHERE e.emp_id = s.emp_id AND s.bonus IS NOT NULL AND sales > 50000  ORDER BY sales DESC;    (*)  29.   You need to create a report that lists all employees in the Sales department who do not earn  $25,000 per year. Which query should you issue to accomplish this task?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

 

 

SELECT last_name, first_name, salary 

FROM employees  WHERE salary > 25000 AND dept_id = 10;     

 

 

 

 

 

 

SELECT last_name, first_name, salary 

FROM employees  WHERE salary = 25000 AND dept_id = 10;     

 

 

 

 

SELECT last_name, first_name, salary 

 

 

FROM employees  WHERE salary <= 25000 AND dept_id = 10;     

 

 

 

 

SELECT last_name, first_name, salary 

 

 

FROM employees  WHERE salary != 25000 AND dept_id = 10;    (*)  30.  

The CUSTOMERS and SALES tables contain these columns: 

  CUSTOMERS  CUST_ID NUMBER(10) PRIMARY KEY  COMPANY VARCHAR2(30)  LOCATION VARCHAR2(20)    SALES 

SALES_ID NUMBER(5) PRIMARY KEY  CUST_ID NUMBER(10) FOREIGN KEY  TOTAL_SALES NUMBER(30)    Which SELECT statement will return the customer ID, the company and the total sales?     

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

 

SELECT c.cust_id, c.company, s.total_sales 

FROM customers c, sales s  WHERE c.cust_id = s.cust_id (+);     

 

 

 

 

SELECT cust_id, company, total_sales 

 

 

FROM customers, sales  WHERE cust_id = cust_id;     

 

 

 

 

SELECT c.cust_id, c.company, s.total_sales 

 

 

FROM customers c, sales s  WHERE c.cust_id = s.cust_id; 

  (*)   

 

 

 

 

SELECT cust_id, company, total_sales 

 

 

FROM customers c, sales s  WHERE c.cust_id = s.cust_id;  31.   The EMPLOYEE_ID column in the EMPLOYEE table corresponds to the EMPLOYEE_ID column of  the ORDER table. The EMPLOYEE_ID column in the ORDER table contains null values for rows that you  need to display.  Which type of join should you use to display the data?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

natural join 

 

 

 

 

 

self‐join 

 

 

 

 

 

outer join (*) 

 

 

 

 

 

equijoin 

32.  

Which statement about outer joins is true?  

(1) Points 

 

 

 

 

 

 

 

 

Mark for Review  

 

 

 

 

 

 

 

 

 

The tables must be aliased. 

 

 

 

 

 

The FULL, RIGHT, or LEFT keyword must be included. 

 

 

 

 

 

The OR operator cannot be used to link outer join conditions. (*) 

 

 

 

 

 

Outer joins are always evaluated before other types of joins in the query. 

    for Review  

 

 

 

 

 

 

 

 

33.  

Which of the following best describes the function of an outer join?  

Mark 

(1) Points   

 

 

 

 

 

 

 

 

An outer join will return only those rows that do not meet the join criteria. 

 

 

 

 

 

 

 

 

  An outer join will return only data from the far left column in one table and the far right column  in the other table.   

 

 

 

 

An outer join will return data only if both tables contain an identical pair of columns. 

 

 

 

 

 

 

 

 

  An outer join will return all rows that meet the join criteria and will return NULL values from one  table if no rows from the other table satisfy the join criteria. (*)  34.   Which of the following conditions will cause an error on a NATURAL JOIN?   Review  

Mark for 

(1) Points   

 

 

 

 

 

 

 

 

When you attempt to write it as an equijoin. 

 

 

 

 

 

 

 

 

  When the NATURAL JOIN clause is based on all columns in the two tables that have the same  name.   

 

 

 

 

If it selects rows from the two tables that have equal values in all matched columns. 

 

 

 

 

 

If the columns having the same names have different data types, then an error is returned. (*) 

 

 

 

 

  35.   A join between tables where the result set includes matching values from both tables  but does NOT return any unmatched rows could be called which of the following? (Choose three)    Mark for Review   (1) Points   

 

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

 

 

 

 

Equijoin (*) 

 

 

 

 

 

Self join (*) 

 

 

 

 

 

Nonequijoin 

 

 

 

 

 

Simple join (*) 

 

 

 

 

 

full outer join 

 

 

 

 

 

 

 

 

36.   You need to join two tables that have two columns with the same name and compatible data  types. Which type of join would you create to join the tables on both of the columns?   Mark for  Review   (1) Points   

 

 

 

 

 

 

 

 

Natural join (*) 

 

 

 

 

 

Cross join 

 

 

 

 

 

Outer join 

 

 

 

 

 

 

 

 

 

 

 

Self‐join 

 

 

 

 

  37.   for Review  

 

 

 

 

 

Which of the following statements is the simplest description of a nonequijoin?  Mark 

(1) Points   

 

 

 

 

 

 

 

 

A join condition containing something other than an equality operator (*) 

 

 

 

 

 

A join condition that is not equal to other joins. 

 

 

 

 

 

A join condition that includes the (+) on the left hand side. 

 

 

 

 

 

A join that joins a table to itself 

 

 

 

 

 

38.  

 

 

 

 

 

Evaluate this SELECT statement: 

  SELECT a.lname || ', ' || a.fname as "Patient", b.lname || ', ' || b.fname as "Physician", c.admission  FROM patient a  JOIN physician b  ON (b.physician_id = c.physician_id); 

JOIN admission c  ON (a.patient_id = c.patient_id);    Which clause generates an error?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

JOIN physician b 

 

 

 

 

 

ON (b.physician_id = c.physician_id); (*) 

 

 

 

 

 

JOIN admission c 

 

 

 

 

 

ON (a.patient_id = c.patient_id) 

 

 

 

 

 

 

39.  

The primary advantage of using JOIN ON is:  

 

 

 

 

 

 

 

 

 

  Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

 

The join happens automatically based on matching column names and data types 

 

 

 

 

 

 

It will display rows that do not meet the join condition 

 

 

 

 

 

It permits columns with different names to be joined (*) 

 

 

 

 

 

It permits columns that don't have matching data types to be joined 

 

 

   

  40.   For which condition would you use an equijoin query with the USING keyword?  Mark for Review  

 

 

 

 

 

 

 

 

 

(1) Points   

 

 

 

 

 

 

 

 

 

  You need to perform a join of the CUSTOMER and ORDER tables but limit the number of  columns in the join condition. (*)   

 

 

 

 

 

  The ORDER table contains a column that has a referential constraint to a column in the  PRODUCT table.   

 

 

 

 

The CUSTOMER and ORDER tables have no columns with identical names. 

 

 

 

 

 

 

 

 

  The CUSTOMER and ORDER tables have a corresponding column, CUST_ID. The CUST_ID column  in the ORDER table contains null values that need to be displayed. 

  41.   Which query will retrieve all the rows in the EMPLOYEES table, even if there is no match in the  DEPARTMENTS table?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

 

 

SELECT e.last_name, e.department_id, d.department_name 

FROM employees e  RIGHT OUTER JOIN departments d ON (e.department_id = d.department_id);     

 

 

 

 

SELECT e.last_name, e.department_id, d.department_name 

 

 

FROM employees e  NATURAL JOIN departments d;     

 

 

 

 

SELECT e.last_name, e.department_id, d.department_name 

 

 

FROM employees e  LEFT OUTER JOIN departments d ON (e.department_id = d.department_id);    (*)   

 

 

 

 

SELECT e.last_name, e.department_id, d.department_name 

 

 

FROM employees e  JOIN departments d USING (e.department_id = d.department_id);     

 

 

 

42.    

Which type of join returns rows from one table that have NO direct match in the other table?  Mark for Review  

 

 

 

(1) Points   

 

 

 

 

 

 

 

 

equijoin 

 

 

 

 

 

self join 

 

 

 

 

 

outer join (*) 

 

 

 

 

 

natural join 

   

43.   What should be included in a SELECT statement to return NULL values from all tables?  Mark for Review  

 

 

 

 

 

 

 

 

(1) Points   

 

 

 

 

 

 

 

 

natural joins 

 

 

 

 

 

 

 

left outer joins 

 

 

 

 

 

full outer joins (*) 

 

 

 

 

 

right outer joins 

  44.   required?  

 

 

 

 

 

 

If a select list contains both a column as well as a group function then what clause is  Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

having clause 

 

 

 

 

 

join clause 

 

 

 

 

 

order by clause 

 

 

 

 

 

group by clause (*) 

 

 

 

 

 

 

 

 

  45.  

Evaluate this SELECT statement: 

  SELECT MIN(hire_date), dept_id  FROM employee  GROUP BY dept_id;    Which values are displayed?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

The earliest hire date in each department. (*) 

 

 

 

 

 

The the earliest hire date in the EMPLOYEE table. 

 

 

 

 

 

The latest hire date in the EMPLOYEE table. 

 

 

 

 

 

The hire dates in the EMPLOYEE table that contain NULL values 

 

 

 

 

 

 

 

 

   

 

 

 

 

 

46.  

Which statement about group functions is true?  

 

 

(1) Points   

 

 

 

Mark for Review  

 

 

 

 

Group functions ignore null values. (*) 

 

 

 

 

 

Group functions can only be used in a SELECT list. 

 

 

 

 

 

Group functions can be used in a WHERE clause. 

 

 

 

 

 

A query that includes a group function in the SELECT list must include a GROUP BY clause. 

 

 

 

 

47.  

Group functions can be nested to a depth of?   Mark for Review  

 

 

 

 

 

 

 

 

 

 

(1) Points   

 

 

 

 

 

 

 

 

three 

 

 

 

 

 

 

 

four 

 

 

 

 

 

 

 

two (*) 

 

 

 

 

 

 

 

 

 

Group functions cannot be nested. 

48.   Which group function would you use to display the total of all salary values in the EMPLOYEE  table?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

SUM (*) 

 

 

 

 

 

AVG 

 

 

 

 

 

COUNT 

 

 

 

 

 

MAX 

 

 

 

 

 

 

 

 

  49.  

The VENDORS table contains these columns: 

  VENDOR_ID NUMBER Primary Key  NAME VARCHAR2(30)  LOCATION_ID NUMBER  ORDER_DT DATE  ORDER_AMOUNT NUMBER(8,2)   

Which two clauses represent valid uses of aggregate functions for this table?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

FROM MAX(order_dt) 

 

 

 

 

 

SELECT SUM(order_dt) 

 

 

 

 

 

SELECT SUM(order_amount) (*) 

 

 

 

 

 

WHERE MAX(order_dt) = order_dt 

 

 

 

 

 

SELECT location_id, MIN(AVG(order_amount)) (*) 

 

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 5 

Incorrect 

 

 

 

 

 

 

   

 

 

 

 

 

 

50.   You need to calculate the standard deviation for the cost of products produced in the  Birmingham facility. Which group function will you use? Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

STDEV 

 

 

 

 

 

 

 

STDDEV (*) 

 

 

 

 

 

VAR_SAMP 

 

 

 

 

 

VARIANCE 

 

 

 

 

 

 

51.   Group functions return a value for ________________ and ________________ null values in  their computations.   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

a row set, ignore (*) 

 

 

 

 

 

each row, ignore 

 

 

 

 

 

a row set, include 

 

 

 

 

 

 

 

 

 

 

 

 

each row, include 

 

 

 

 

 

 

 

 

  52.   You need to calculate the average salary of employees in each department. Which group  function will you use?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

AVG (*) 

 

 

 

 

 

MEAN 

 

 

 

 

 

MEDIAN 

 

 

 

 

 

AVERAGE 

53.    

The AVG, SUM, VARIANCE, and STDDEV functions can be used with which of the following?  Mark for Review  

 

 

 

 

 

 

 

 

(1) Points   

 

 

 

 

 

 

 

 

 

Only numeric data types (*) 

 

 

 

 

 

 

Integers only 

 

 

 

 

 

Any data type 

 

 

 

 

 

All except numeric 

 

 

 

 

 

 

  54.  

The PRODUCTS table contains these columns: 

  PROD_ID NUMBER(4)  PROD_NAME VARCHAR2(30)  PROD_CAT VARCHAR2(30)  PROD_PRICE NUMBER(3)  PROD_QTY NUMBER(4)    The following statement is issued:    SELECT AVG(prod_price, prod_qty)  FROM products;    What happens when this statement is issued?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

Both the average price and the average quantity of the products are returned. 

 

 

 

 

 

Only the average quantity of the products is returned. 

 

 

 

 

 

The values in the PROD_PRICE column and the PROD_QTY column are averaged together. 

 

 

 

 

 

An error occurs. (*) 

 

 

 

 

55.  

The EMPLOYEES table contains these columns: 

 

 

 

 

 

 

 

 

 

  EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2(20)  FIRST_NAME VARCHAR2(20)  SALARY NUMBER(9,2)  HIRE_DATE DATE  BONUS NUMBER(7,2)  COMM_PCT NUMBER(4,2)   

 

 

Which three functions could be used with the HIRE_DATE, LAST_NAME, or SALARY columns? (Choose  three.)   

Mark for Review  

(1) Points   

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

MAX (*) 

 

 

 

 

 

SUM 

 

 

 

 

 

AVG 

 

 

 

 

 

MIN (*) 

 

 

 

 

 

COUNT (*) 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

   

 

 

 

 

56.   Which SELECT statement will calculate the number of rows in the PRODUCTS table?   for Review   (1) Points 

Mark 

 

 

 

 

 

 

 

 

 

SELECT COUNT(products); 

 

 

 

 

 

SELECT COUNT FROM products; 

 

 

 

 

 

SELECT COUNT (*) FROM products; (*) 

 

 

 

 

 

SELECT ROWCOUNT FROM products 

57.  

Examine the data from the LINE_ITEM table: 

 

 

 

 

 

 

 

 

  LINE_ITEM_ID   ORDER_ID  

PRODUCT_ID   PRICE   DISCOUNT 

890898 847589 848399 8.99  

0.10 

768385 862459 849869 5.60  

0.05 

867950 985490 945809 5.60  954039 439203 438925 5.25  

0.15 

543949 349302 453235 4.50    You query the LINE_ITEM table and a value of 5 is returned. Which SQL statement did you execute?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

SELECT COUNT(discount) FROM line_item; 

 

 

 

 

 

SELECT COUNT(*) FROM line_item; (*) 

 

 

 

 

 

SELECT SUM(discount) FROM line_item; 

 

 

 

 

 

SELECT AVG(discount) FROM line_it 

 

 

 

 

 

 

 

  58.  

The EMPLOYEES table contains these columns: 

  EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2(20)  FIRST_NAME VARCHAR2(20)  SALARY NUMBER(7,2)  DEPARTMENT_ID NUMBER(9)    You need to display the number of employees whose salary is greater than $50,000? Which SELECT  would you use?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

 

SELECT * FROM employees 

WHERE salary > 50000;     

 

 

 

 

SELECT * FROM employees 

 

 

WHERE salary < 50000;     

 

 

 

 

SELECT COUNT(*) FROM employees 

 

 

WHERE salary < 50000;     

 

 

 

 

SELECT COUNT(*) FROM employees 

 

 

WHERE salary > 50000;    (*)   

 

 

 

 

SELECT COUNT(*) FROM employees 

 

 

WHERE salary > 50000  GROUP BY employee_id, last_name, first_name, salary, department_id;   

 

 

 

 

59.  

Evaluate this SELECT statement: 

 

 

 

  SELECT COUNT(*)  FROM products;    Which statement is true?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

The number of rows in the table is displayed. (*) 

 

 

 

 

 

The number of unique PRODUCT_IDs in the table is displayed. 

 

 

 

 

 

An error occurs due to an error in the SELECT clause. 

 

 

 

 

 

An error occurs because no WHERE clause is included in the SELECT statement. 

 

 

 

 

 

 

60.  

Evaluate this statement: 

 

 

 

 

 

 

 

 

 

 

  SELECT department_id, AVG(salary)  FROM employees  WHERE job_id <> 69879  GROUP BY job_id, department_id  HAVING AVG(salary) > 35000  ORDER BY department_id;    Which clauses restricts the result? Choose two.   

Mark for Review  

(1) Points   

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

SELECT department_id, AVG(salary) 

 

 

 

 

 

WHERE job_id <> 69879 (*) 

 

 

 

 

 

GROUP BY job_id, department_id 

 

 

 

 

 

HAVING AVG(salary) > 35000 (*) 

 

 

 

 

 

 

 

 

 

 

 

61.  

The PLAYERS and TEAMS tables contain these columns: 

  PLAYERS  PLAYER_ID NUMBER NOT NULL, Primary Key  LAST_NAME VARCHAR2 (30) NOT NULL  FIRST_NAME VARCHAR2 (25) NOT NULL  TEAM_ID NUMBER  POSITION VARCHAR2 (25)    TEAMS  TEAM_ID NUMBER NOT NULL, Primary Key  TEAM_NAME VARCHAR2 (25)    You need to create a report that lists the names of each team with more than five pitchers.  Which SELECT statement will produce the desired result?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

 

SELECT t.team_name, COUNT(p.player_id) 

FROM players p, teams t ON (p.team_id = t.team_id)  WHERE UPPER(p.position) = 'PITCHER'  GROUP BY t.team_name;     

 

 

 

 

 

 

SELECT t.team_name, COUNT(p.player_id) 

FROM players JOIN teams t ON (p.team_id = t.team_id)  WHERE UPPER(p.position) = 'PITCHER' HAVING COUNT(p.player_id) > 5;     

 

 

 

 

SELECT t.team_name, COUNT(p.player_id) 

 

 

FROM players p, teams t ON (p.team_id = t.team_id)  WHERE UPPER(p.position) = 'PITCHER'  GROUP BY t.team_name HAVING COUNT(p.player_id) > 5;     

 

 

 

 

SELECT t.team_name, COUNT(p.player_id) 

 

 

FROM players p JOIN teams t ON (p.team_id = t.team_id)  WHERE UPPER(p.position) = 'PITCHER'  GROUP BY t.team_name HAVING COUNT(p.player_id) > 5;    (*)  62.  

The MANUFACTURER table contains these columns: 

  MANUFACTURER_ID NUMBER  MANUFACTURER_NAME VARCHAR2(30)  TYPE VARCHAR2(25) 

LOCATION_ID NUMBER    You need to display the number of unique types of manufacturers at each location. Which SELECT  statement should you use?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

 

SELECT location_id, COUNT(DISTINCT type) 

FROM manufacturer  GROUP BY location_id;    (*)   

 

 

 

 

SELECT location_id, COUNT(DISTINCT type) 

 

 

FROM manufacturer;     

 

 

 

 

SELECT location_id, COUNT(type) 

 

 

FROM manufacturer  GROUP BY location_id;     

 

 

 

 

 

 

SELECT location_id, COUNT(DISTINCT type) 

FROM manufacturer  GROUP BY type;  3.  

The PLAYERS table contains these columns: 

  PLAYER_ID NUMBER PK  PLAYER_NAME VARCHAR2 (30)  TEAM_ID NUMBER  HIRE_DATE DATE  SALARY NUMBER (8,2)    Which two clauses represent valid uses of aggregate functions? (Choose three.)   

Mark for Review  

(1) Points   

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

ORDER BY AVG(salary) 

 

 

 

 

 

GROUP BY MAX(salary) (*) 

 

 

 

 

 

SELECT AVG(NVL(salary, 0)) (*) 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

HAVING MAX(salary) > 10000 (*) 

 

 

 

 

 

WHERE hire_date > AVG(hire_date) 

 

 

 

 

65.  

Which statement about the GROUP BY clause is true?   Mark for Review  

 

 

 

 

 

 

 

(1) Points   

 

 

 

 

 

 

 

 

 

  To exclude rows before dividing them into groups using the GROUP BY clause, you use should a  WHERE clause. (*)   

 

 

 

 

You can use a column alias in a GROUP BY clause. 

 

 

 

 

 

By default, rows are not sorted when a GROUP BY clause is used. 

 

 

 

 

 

You must use the HAVING clause with the GROUP BY clause. 

 

 

 

 

66.  

Evaluate this SELECT statement: 

 

 

 

 

 

 

 

 

 

  SELECT SUM(salary), dept_id  FROM employee  GROUP BY dept_id;    How are the results of this statement sorted?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

Ascending order by dept_id (*) 

 

 

 

 

 

Descending order by dept_id 

 

 

 

 

 

Ascending order by cumulative salary 

 

 

 

 

 

Descending order by cumulative salary 

67.  

The EMPLOYEES table contains these columns: 

 

 

 

 

 

 

 

 

  ID_NUMBER NUMBER Primary Key  NAME VARCHAR2 (30)  DEPARTMENT_ID NUMBER 

SALARY NUMBER (7,2)  HIRE_DATE DATE    Evaluate this SQL statement:    SELECT id_number, name, department_id, SUM(salary)  FROM employees  WHERE salary > 25000  GROUP BY department_id, id_number, name  ORDER BY hire_date;    Why will this statement cause an error?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

The HAVING clause is missing. 

 

 

 

 

 

The WHERE clause contains a syntax error. 

 

 

 

 

 

The SALARY column is NOT included in the GROUP BY clause. 

 

 

 

 

 

 

 

 

 

 

 

 

 

The HIRE_DATE column is NOT included in the GROUP BY clause. (*) 

 

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 6 

 

 

Incorrect   

 

 

 

Previous  68.  

 

Page 67 of 100  Next 

 

  Summary 

Examine the structures of the CUSTOMER and ORDER_HISTORY tables: 

  CUSTOMER  CUSTOMER_ID NUMBER(5)  NAME VARCHAR2(25)  CREDIT_LIMIT NUMBER(8,2)  OPEN_DATE DATE    ORDER_HISTORY  ORDER_ID NUMBER(5)  CUSTOMER_ID NUMBER(5)  ORDER_DATE DATE  TOTAL NUMBER(8,2)    Which of the following scenarios would require a subquery to return the desired results?   

Mark for Review  

(1) Points 

 

 

 

 

 

 

 

 

 

You need to display the date each customer account was opened. 

 

 

 

 

 

You need to display each date that a customer placed an order. 

 

 

 

 

 

You need to display all the orders that were placed on a certain date. 

 

 

 

 

 

You need to display all the orders that were placed on the same day as order number 25950. (*) 

 

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 6 

 

 

Incorrect   

 

 

 

Previous 

 

 

 

 

 

 

 

 

 

Page 68 of 100  Next 

 

  Summary 

  69.  

Which operator can be used with a multiple‐row subquery?  

(1) Points   

 

 

 

 

 

 

 

 

IN (*) 

 

 

Mark for Review  

 

 

 

 

 

<> 

 

 

 

 

 



 

 

 

 

 

LIKE 

 

 

 

 

 

 

70.   You need to create a report to display the names of products with a cost value greater than the  average cost of all products. Which SELECT statement should you use?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

SELECT product_name 

 

 

FROM products  WHERE cost > (SELECT AVG(cost) FROM product);    (*)   

 

 

 

 

SELECT product_name 

 

 

FROM products  WHERE cost > AVG(cost);     

 

 

 

 

 

 

SELECT AVG(cost), product_name 

FROM products  WHERE cost > AVG(cost)  GROUP by product_name;     

 

 

 

 

SELECT product_name 

 

 

FROM (SELECT AVG(cost) FROM product)  WHERE cost > AVG(cost);    71.  

Using a subquery in which clause will return a syntax error?  

(1) Points   

 

 

 

 

 

 

 

 

WHERE 

 

 

 

 

 

 

 

FROM 

 

 

 

 

 

 

 

HAVING 

 

 

 

 

 

 

 

 

Mark for Review  

 

There are no places you cannot place subqueries. (*) 

72.   You need to display all the players whose salaries are greater than or equal to John Brown's  salary. Which comparison operator should you use?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

 

 



 

 

 

 

 

 

 



 

 

 

 

 

 

 

<= 

 

 

 

 

 

 

 

>= (*) 

 

 

 

 

 

 

 

 

 

 

 

 

 

73.  

Which best describes a single‐row subquery?   Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

a query that returns only one row from the inner SELECT statement (*) 

 

 

 

 

 

 

 

 

 

a query that returns one or more rows from the inner SELECT statement 

 

 

 

 

 

a query that returns only one column value from the inner SELECT statement 

 

 

 

 

 

a query that returns one or more column values from the inner SELECT statement 

 

 

 

 

74.  

Examine the structure of the EMPLOYEE, DEPARTMENT, and ORDERS tables. 

 

 

 

 

 

 

 

  EMPLOYEE  EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2(25)  FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)    DEPARTMENT  DEPARTMENT_ID NUMBER(9)  DEPARTMENT_NAME VARCHAR2(25)  CREATION_DATE DATE    ORDERS  ORDER_ID NUMBER(9)  EMPLOYEE_ID NUMBER(9) 

DATE DATE  CUSTOMER_ID NUMBER(9)    You want to display all employees who had an order after the Sales department was established. Which  of the following constructs would you use?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

a group function 

 

 

 

 

 

a single‐row subquery (*) 

 

 

 

 

 

the HAVING clause 

 

 

 

 

 

a MERGE statement 

75.  

Which statement about the <> operator is true?  

 

 

 

 

 

 

 

 

(1) Points   

 

 

 

 

 

 

 

 

The <> operator is NOT a valid SQL operator. 

 

 

 

 

 

 

 

 

Mark for Review  

 

The <> operator CANNOT be used in a single‐row subquery. 

 

 

 

 

 

The <> operator returns the same result as the ANY operator in a subquery. 

 

 

 

 

 

The <> operator can be used when a single‐row subquery returns only one row. (*) 

 

 

 

 

 

 

76.   Which operator or keyword cannot be used with a multiple‐row subquery?   Review   (1) Points   

 

 

 

 

 

 

 

 

 

 

ALL 

 

 

 

 

 

 

 

ANY 

 

 

 

 

 

 

 

= (*) 

 

 

 

 

 

 

 



 

 

 

 

 

 

 

 

 

 

 

 

 

Mark for 

    77.   Which comparison operator would you use to compare a value to every value returned  by a subquery?  Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

SOME 

 

 

 

 

 

 

 

ANY 

 

 

 

 

 

 

 

ALL (*) 

 

 

 

 

 

 

 

IN 

Correct  

 

 

Correct 

     

78.  

Evaluate this SELECT statement: 

  SELECT player_id, name  FROM players  WHERE team_id IN     (SELECT team_id      FROM teams 

    WHERE team_id > 300 AND salary_cap > 400000);    What would happen if the inner query returned a NULL value?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

No rows would be returned by the outer query. (*) 

 

 

 

 

 

A syntax error in the outer query would be returned. 

 

 

 

 

 

A syntax error in the inner query would be returned. 

 

 

 

 

 

All the rows in the PLAYER table would be returned by the outer query. 

 

 

 

 

  79.   subquery?  

 

 

 

 

 

 

 

 

 

 

 

What would happen if you attempted to use a single‐row operator with a multiple‐row  Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

An error would be returned. (*) 

 

 

 

 

 

 

No rows will be selected. 

 

 

 

 

 

All the rows will be selected. 

 

 

 

 

 

The data returned may or may not be correct. 

 

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 6 

Incorrect  80.  

 

 

 

 

 

 

 

Which best describes a multiple‐row subquery?  Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

A query that returns only one row from the inner SELECT statement 

 

 

 

 

 

A query that returns one or more rows from the inner SELECT statement (*) 

 

 

 

 

 

A query that returns only one column value from the inner SELECT statement 

 

 

 

 

 

 

 

 

 

 

 

 

 

A query that returns one or more  

81.  

Examine the structures of the PARTS and MANUFACTURERS tables: 

  PARTS:  PARTS_ID VARCHAR2(25)  PK PARTS_NAME VARCHAR2(50)  MANUFACTURERS_ID NUMBER  COST NUMBER(5,2)  PRICE NUMBER(5,2)    MANUFACTURERS:  ID NUMBER  PK NAME VARCHAR2(30)  LOCATION VARCHAR2(20)    Which SQL statement correctly uses a subquery?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

 

UPDATE parts SET price = price * 1.15 

WHERE manufacturers_id =      (SELECT id      FROM manufacturers      WHERE UPPER(location) IN('ATLANTA ', 'BOSTON ', 'DALLAS ')); 

   

 

 

 

 

SELECT parts_name, price, cost 

 

 

FROM parts  WHERE manufacturers_id !=     (SELECT id      FROM manufacturers      WHERE LOWER(name) = 'cost plus');     

 

 

 

 

SELECT parts_name, price, cost 

 

 

FROM parts  WHERE manufacturers_id IN     (SELECT id      FROM manufacturers m      JOIN part p ON (m.id = p.manufacturers_id));    (*)   

 

 

 

 

SELECT parts_name 

 

FROM     (SELECT AVG(cost) 

 

    FROM manufacturers)      WHERE cost > AVG(cost);     

 

 

 

 

 

 

 

 

 

 

 

 

 

Correct    

 

 

 

Previous 

 

Correct 

 

Page 81 of 100  Next 

  Summary 

    82.   Which of the following best describes the meaning of the ANY operator?   Review   (1) Points   

 

 

 

 

 

 

 

 

Equal to any member in the list 

 

 

 

 

 

Compare value to each value returned by the subquery (*) 

 

 

 

 

 

Compare value to every value returned by the subquery 

 

 

 

 

 

 

 

 

 

 

 

 

Mark for 

 

Equal to each value in the list 

 

 

 

 

 

 

 

83.   Which statement about single‐row and multiple‐row subqueries is true?   Review  

Mark for 

(1) Points   

 

 

 

 

 

 

 

 

Multiple‐row subqueries cannot be used with the LIKE operator. (*) 

 

 

 

 

 

Single‐row operators can be used with both single‐row and multiple‐row subqueries. 

 

 

 

 

 

Multiple‐row subqueries can be used with both single‐row and multiple‐row operators. 

 

 

 

 

 

Multiple‐row subqueries can only be used in SEL 

 

 

 

 

 

 

 

 

    84.   Which statement about the ANY operator when used with a multiple‐row subquery is  true?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

 

 

The ANY operator compares every value returned by the subquery. (*) 

 

 

 

 

 

 

The ANY operator can be used with the DISTINCT keyword. 

 

 

 

 

 

The ANY operator is a synonym for the ALL operator. 

 

 

 

 

 

The ANY operator can be used with the LIKE and IN operators. 

 

 

 

 

 

 

 

 

 

 

 

 

85.   You need to create a SELECT statement that contains a multiple‐row subquery, which  comparison operator(s) can you use?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

IN, ANY, and ALL (*) 

 

 

 

 

 

LIKE 

 

 

 

 

 

BETWEEN...AND... 

 

 

 

 

 

=, <, and > 

 

 

 

 

 

 

 

 

 

 

 

 

    86.   You need to display all the products that cost more than the maximum cost of  every product produced in Japan. Which multiple‐row comparison operator could you use?   Mark  for Review   (1) Points   

 

 

 

 

 

 

 

 

>ANY (*) 

 

 

 

 

 

NOT=ALL 

 

 

 

 

 

IN 

 

 

 

 

 

>IN 

 

 

 

 

 

 

 

 

  87.  

The STUDENTS table contains these columns: 

  STU_ID NUMBER(9) NOT NULL  LAST_NAME VARCHAR2 (30) NOT NULL  FIRST_NAME VARCHAR2 (25) NOT NULL  DOB DATE  STU_TYPE_ID VARCHAR2(1) NOT NULL  ENROLL_DATE DATE   

You create another table, named FT_STUDENTS, with an identical structure.You want to insert all full‐ time students, who have a STU_TYPE_ID value of "F", into the new table. You execute this INSERT  statement:    INSERT INTO ft_students     (SELECT stu_id, last_name, first_name, dob, stu_type_id, enroll_date     FROM students     WHERE UPPER(stu_type_id) = 'F');    What is the result of executing this INSERT statement?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

All full‐time students are inserted into the FT_STUDENTS table. (*) 

 

 

 

 

 

An error occurs because the FT_STUDENTS table already exists. 

 

 

 

 

 

An error occurs because you CANNOT use a subquery in an INSERT statement. 

 

 

 

 

 

An error occurs because the INSERT statement does NOT contain a VALUES clause. 

 

 

 

 

 

 

 

 

  88.  

The PRODUCTS table contains these columns: 

  PROD_ID NUMBER(4)  PROD_NAME VARCHAR2(25)  PROD_PRICE NUMBER(3)    You want to add the following row data to the PRODUCTS table:  (1) a NULL value in the PROD_ID column  (2) "6‐foot nylon leash" in the PROD_NAME column  (3) "10" in the PROD_PRICE column    You issue this statement:    INSERT INTO products  VALUES (null,'6‐foot nylon leash', 10);    What row data did you add to the table?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

The row was created with the correct data in all three columns. (*) 

 

 

 

 

 

The row was created with the correct data in two of three columns. 

 

 

 

 

 

 

 

 

 

 

The row was created with the correct data in one of the three columns. 

 

 

 

 

 

The row was created completely wrong. No data ended up in the correct columns. 

 

 

 

 

 

 

 

 

 

 

89.   You have been instructed to add a new customer to the CUSTOMERS table. Because the new  customer has not had a credit check, you should not add an amount to the CREDIT column.  The CUSTOMERS table contains these columns:    CUST_ID NUMBER(10)  COMPANY VARCHAR2(30)  CREDIT NUMBER(10)  POC VARCHAR2(30)  LOCATION VARCHAR2(30)    Which two INSERT statements will accomplish your objective?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

INSERT INTO customers (cust_id, company, poc, location) 

 

   

 

VALUES (200, 'InterCargo', 'tflanders', 'samerica'); 

  (*)   

 

 

 

 

INSERT INTO customers 

 

 

VALUES (200, 'InterCargo', null, 'tflanders', 'samerica');    (*)   

 

 

 

 

INSERT INTO customers 

 

 

VALUES (cust_id, company, credit, poc, location) (200, 'InterCargo', 0, 'tflanders', 'samerica');     

 

 

 

 

INSERT INTO customers 

 

 

VALUES (200, InterCargo, 0, tflanders, samerica);  90.   You need to add a row to an existing table. Which DML statement should you use?   for Review   (1) Points   

 

 

 

 

 

 

 

 

UPDATE 

 

 

 

 

 

INSERT (*) 

 

 

 

 

Mark 

 

 

 

 

 

DELETE 

 

 

 

 

 

CREATE 

 

 

 

 

  91.   You need to update both the DEPARTMENT_ID and LOCATION_ID columns in the EMPLOYEE  table using one UPDATE statement. Which clause should you include in the UPDATE statement to  update multiple columns?   Mark for Review   (1) Points   

 

 

 

 

 

 

 

 

the USING clause 

 

 

 

 

 

the ON clause 

 

 

 

 

 

the WHERE clause 

 

 

 

 

 

the SET clause (*) 

 

 

 

 

 

 

 

 

  92.   What keyword in an UPDATE statement speficies the columns you want to change?  for Review   (1) Points 

Mark 

 

 

 

 

 

 

 

 

 

SELECT 

 

 

 

 

 

 

 

WHERE 

 

 

 

 

 

 

 

SET (*) 

 

 

 

 

 

 

 

HAVING 

 

 

93.   One of the sales representatives, Janet Roper, has informed you that she was recently married,  and she has requested that you update her name in the employee database. Her new last name is  Cooper. Janet is the only person with the last name of Roper that is employed by the company. The  EMPLOYEES table contains these columns and all data is stored in lowercase:    EMP_ID NUMBER(10) PRIMARY KEY  LNAME VARCHAR2(20)  FNAME VARCHAR2(20)  DEPT VARCHAR2 (20)  HIRE_DATE DATE  SALARY NUMBER(10)    Which UPDATE statement will accomplish your objective?   

Mark for Review  

(1) Points 

 

 

 

 

 

 

 

 

 

UPDATE employees 

 

 

SET lname = 'cooper'  WHERE lname = 'roper';    (*)   

 

 

 

 

UPDATE employees lname = 'cooper' 

 

 

WHERE lname = 'roper';     

 

 

 

 

UPDATE employees 

 

 

SET lname = 'roper'  WHERE lname = 'cooper';     

 

 

 

 

UPDATE employees 

 

 

SET cooper = 'lname'  WHERE lname = 'roper';     

 

 

 

 

 

 

  94.   Which two commands can be used to modify existing data in a database row?   Mark for  Review   (1) Points   

 

 

 

 

 

 

(Choose all correct answers) 

 

 

 

 

 

 

 

 

 

DELETE 

 

 

 

 

 

 

 

INSERT (*) 

 

 

 

 

 

SELECT 

 

 

 

 

 

UPDATE (*) 

 

 

 

 

 

 

   

 

  95.   You need to delete a record in the EMPLOYEES table for Tim Jones, whose unique employee  identification number is 348. The EMPLOYEES table contains these columns:    ID_NUM NUMBER(5) PRIMARY KEY  LNAME VARCHAR2(20)  FNAME VARCHAR2(20) 

ADDRESS VARCHAR2(30)  PHONE NUMBER(10)    Which DELETE statement will delete the appropriate record without deleting any additional records?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

DELETE FROM employees WHERE id_num = 348; (*) 

 

 

 

 

 

DELETE FROM employees WHERE lname = jones; 

 

 

 

 

 

DELETE * FROM employees WHERE id_num = 348; 

 

 

 

 

 

DELETE 'jones' FROM employees; 

 

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 7 

Incorrect  96.  

 

 

 

 

 

 

 

 

 

The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns: 

  TEACHERS 

TEACHER_ID NUMBER(5)  NAME VARCHAR2(25)  SUBJECT_ID NUMBER(5)  HIRE_DATE DATE  SALARY NUMBER(9,2)    CLASS_ASSIGNMENTS  CLASS_ID NUMBER(5)  TEACHER_ID NUMBER(5)  START_DATE DATE  MAX_CAPACITY NUMBER(3)    Which scenario would require a subquery to return the desired results?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

You need to display the start date for each class taught by a given teacher. 

 

 

 

 

 

You need to create a report to display the teachers who were hired more than five years ago. 

 

 

 

 

 

 

 

 

 

 

  You need to display the names of the teachers who teach classes that start within the next  week.   

 

 

 

 

 

  You need to create a report to display the teachers who teach more classes than the average  number of classes taught by each teacher. (*)   

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 7 

Incorrect  96.  

 

The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns: 

  TEACHERS  TEACHER_ID NUMBER(5)  NAME VARCHAR2(25)  SUBJECT_ID NUMBER(5)  HIRE_DATE DATE  SALARY NUMBER(9,2)    CLASS_ASSIGNMENTS  CLASS_ID NUMBER(5)  TEACHER_ID NUMBER(5)  START_DATE DATE  MAX_CAPACITY NUMBER(3)    Which scenario would require a subquery to return the desired results?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

You need to display the start date for each class taught by a given teacher. 

 

 

 

 

 

You need to create a report to display the teachers who were hired more than five years ago. 

 

 

 

 

 

 

 

 

 

  You need to display the names of the teachers who teach classes that start within the next  week.   

 

 

 

 

 

  You need to create a report to display the teachers who teach more classes than the average  number of classes taught by each teacher. (*)     

 

97.  

Examine the structures of the PRODUCTS and SUPPLIERS tables: 

  SUPPLIERS  SUPPLIER_ID NUMBER NOT NULL, Primary Key  SUPPLIER_NAME VARCHAR2 (25)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (11)    PRODUCTS  PRODUCT_ID NUMBER NOT NULL, Primary Key 

PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER Foreign key to SUPPLIER_ID of the SUPPLIERS table  CATEGORY_ID NUMBER  QTY_PER_UNIT NUMBER  UNIT_PRICE NUMBER (7,2)  QTY_IN_STOCK NUMBER  QTY_ON_ORDER NUMBER  REORDER_LEVEL NUMBER    You want to delete any products supplied by the five suppliers located in Atlanta. Which script should  you use?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

DELETE FROM products 

 

WHERE supplier_id IN     (SELECT supplier_id      FROM suppliers      WHERE UPPER(city) = 'ATLANTA');    (*)   

 

 

 

 

DELETE FROM products 

 

 

WHERE UPPER(city) = 'ATLANTA'; 

 

   

 

 

 

 

DELETE FROM products 

 

 

WHERE supplier_id =      (SELECT supplier_id      FROM suppliers      WHERE UPPER(city) = 'ATLANTA');     

 

 

 

 

DELETE FROM products 

 

 

WHERE supplier_id IN      (SELECT supplier_id      FROM suppliers      WHERE UPPER(city) = 'ALANTA');  97.  

Examine the structures of the PRODUCTS and SUPPLIERS tables: 

  SUPPLIERS  SUPPLIER_ID NUMBER NOT NULL, Primary Key  SUPPLIER_NAME VARCHAR2 (25)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (11) 

  PRODUCTS  PRODUCT_ID NUMBER NOT NULL, Primary Key  PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER Foreign key to SUPPLIER_ID of the SUPPLIERS table  CATEGORY_ID NUMBER  QTY_PER_UNIT NUMBER  UNIT_PRICE NUMBER (7,2)  QTY_IN_STOCK NUMBER  QTY_ON_ORDER NUMBER  REORDER_LEVEL NUMBER    You want to delete any products supplied by the five suppliers located in Atlanta. Which script should  you use?   

Mark for 

98.   What would happen if you issued a DELETE statement without a WHERE clause?   for Review   (1) Points   

 

 

 

 

 

 

 

 

All the rows in the table would be deleted. (*) 

 

 

 

 

 

An error message would be returned. 

 

 

 

 

 

 

 

 

 

 

Mark 

 

No rows would be deleted. 

 

 

 

 

 

Only one row would be deleted. 

 

 

 

 

 

 

 

 

 

 

 

 

 

Incorrect. Refer to Section 7 

Incorrect 

 

 

 

  99.  

The EMPLOYEES table contains the following columns: 

  EMP_ID NUMBER(10) PRIMARY KEY  LNAME VARCHAR2(20)  FNAME VARCHAR2(20)  DEPT VARCHAR2(20)  HIRE_DATE DATE  SALARY NUMBER(9,2)  BONUS NUMBER(9,2)    You want to execute one DML statement to change the salary of all employees in department 10 to  equal the new salary of employee number 89898. Currently, all employees in department 10 have the  same salary value. Which statement should you execute?   

Mark for Review  

(1) Points   

 

 

 

 

 

 

 

 

 

 

UPDATE employee 

SET salary = SELECT salary  FROM employee  WHERE emp_id = 89898;     

 

 

 

 

UPDATE employee 

 

 

SET salary = (SELECT salary FROM employee WHERE emp_id = 89898);     

 

 

 

 

UPDATE employee 

 

 

SET salary = (SELECT salary FROM employee WHERE emp_id = 89898)  WHERE dept = 10;    (*)   

 

 

 

 

UPDATE employee 

 

 

SET salary = (SELECT salary FROM employee WHERE emp_id = 89898 AND dept = 10);    100.   for Review  

Which of the following represents the correct syntax for an INSERT statement?   Mark 

(1) Points   

 

 

 

 

 

 

 

 

 

 

INSERT VALUES INTO customers (3178 J. Smith 123 Main Street Nashville TN 37777; 

 

 

 

 

 

INSERT INTO customers VALUES '3178' 'J.' 'Smith' '123 Main Street' 'Nashville' 'TN' '37777'; 

 

 

 

 

  (*) 

INSERT INTO customers VALUES ('3178', 'J.', 'Smith', '123 Main Street', 'Nashville', 'TN', '37777'); 

 

 

 

 

 

INSERT customers VALUES 3178, J., Smith, 123 Main Street, Nashville, TN, 37777; 

 

 

 

 

 

 

 

 

 

 

 

 

 

Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 1 Lesson 1    (Answer all questions in this section)             1.  Which SQL function can be used to remove heading or trailing characters (or both) from a character  string?  Mark for Review   (1) Points          

    LPAD           CUT           NVL2           TRIM (*)                     Correct                  2.  Which three statements about functions are true? (Choose three.)  Mark for Review   (1) Points              (Choose all correct answers)                The SYSDATE function returns the Oracle Server date and time. (*)           The ROUND number function rounds a value to a specified decimal place or the nearest whole  number. (*)           The CONCAT function can only be used on character strings, not on numbers.           The SUBSTR character function returns a portion of a string beginning at a defined character position  to a specified length. (*)  

                  Correct                  3.  You query the database with this SQL statement:     SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID"  FROM employee;      In which order are the functions evaluated?    Mark for Review   (1) Points               LOWER, SUBSTR, CONCAT           LOWER, CONCAT, SUBSTR           SUBSTR, CONCAT, LOWER           CONCAT, SUBSTR, LOWER (*)                     Correct   

              4.  You need to return a portion of each employee's last name, beginning with the first character up to  the fifth character. Which character function should you use?  Mark for Review   (1) Points               INSTR           TRUNC           SUBSTR (*)           CONCAT                     Correct                  5.  You issue this SQL statement:     SELECT INSTR ('organizational sales', 'al')   FROM dual;       Which value is returned by this command?    Mark for Review  

(1) Points               1           2           13 (*)           17                     Correct                  6.  What will the following SQL statemtent display?     SELECT last_name, LPAD(salary, 15, '$')SALARY   FROM employees;       Mark for Review   (1) Points               The last name of employees that have a salary that includes a $ in the value, size of 15 and the column  labeled SALARY.      

    The last name and the format of the salary limited to 15 digits to the left of the decimal and the  column labeled SALARY.           The last name and salary for all employees with the format of the salary 15 characters long, left‐ padded with the $ and the column labeled SALARY. (*)           The query will result in an error: "ORA‐00923: FROM keyword not found where expected."                     Correct                  7.  Evaluate this SELECT statement:    SELECT LENGTH(email)  FROM employee;      What will this SELECT statement display?    Mark for Review   (1) Points               The longest e‐mail address in the EMPLOYEE table.           The email address of each employee in the EMPLOYEE table.      

    The number of characters for each value in the EMAIL column in the employees table. (*)           The maximum number of characters allowed in the EMAIL column.                     Correct                            Section 1 Lesson 2    (Answer all questions in this section)             8.  Which two functions can be used to manipulate number or date column values, but NOT character  column values? (Choose two.)  Mark for Review   (1) Points              (Choose all correct answers)                RPAD           TRUNC (*)           ROUND (*)           INSTR  

        CONCAT                     Correct                  9.  Which script displays '01‐MAY‐04' when the HIRE_DATE value is '20‐MAY‐04'?  Mark for Review   (1) Points               SELECT TRUNC(hire_date, 'MONTH')   FROM employee;  (*)             SELECT ROUND(hire_date, 'MONTH')   FROM employee;             SELECT ROUND(hire_date, 'MON')   FROM employee;             SELECT TRUNC(hire_date, 'MI')   FROM employee; 

                     Incorrect. Refer to Section 1 Lesson 3                  10.  You issue this SQL statement:     SELECT TRUNC(751.367,‐1)   FROM dual;      Which value does this statement display?    Mark for Review   (1) Points               700           750 (*)           751           751.3              

      Correct                  Page 1 of 10     Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 1 Lesson 3    (Answer all questions in this section)             11.  Which SELECT statement will NOT return a date value?  Mark for Review   (1) Points               SELECT (30 + hire_date) + 1440/24   FROM employees;             SELECT (SYSDATE ‐ hire_date) + 10*8   FROM employees;  (*)    

        SELECT SYSDATE ‐ TO_DATE('25‐JUN‐02') + hire_date   FROM employees;             SELECT (hire_date ‐ SYSDATE) + TO_DATE('25‐JUN‐02')   FROM employees;                       Correct                  12.  You need to subtract three months from the current date. Which function should you use?  Mark  for Review   (1) Points               ROUND           TO_DATE           ADD_MONTHS (*)           MONTHS_BETWEEN              

      Correct                  13.  You need to display the number of months between today's date and each employee's hiredate.  Which function should you use?  Mark for Review   (1) Points               ROUND           BETWEEN           ADD_MONTHS           MONTHS_BETWEEN (*)                     Correct                  14.  You need to display the current year as a character value (for example: Two Thousand and One).  Which element would you use?  Mark for Review   (1) Points               RR           YY  

        YYYY           YEAR (*)                     Correct                  15.  Evaluate this SELECT statement:    SELECT SYSDATE + 30  FROM dual;      Which value is returned by the query?    Mark for Review   (1) Points               the current date plus 30 hours           the current date plus 30 days (*)           the current date plus 30 months      

    No value is returned because the SELECT statement generates an error.                     Correct                            Section 2 Lesson 1    (Answer all questions in this section)             16.  All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a  report that displays each employee's name and salary. Each employee's salary must be displayed in the  following format: $000,000.00. Which function should you include in a SELECT statement to achieve the  desired result?  Mark for Review   (1) Points               TO_CHAR (*)           TO_DATE           TO_NUMBER           CHARTOROWID                     Correct   

              17.  Which best describes the TO_CHAR function?  Mark for Review   (1) Points               The TO_CHAR function can be used to specify meaningful column names in an SQL statement's result  set.           The TO_CHAR function can be used to remove text from column data that will be returned by the  database.           The TO_CHAR function can be used to display dates and numbers according to formatting conventions  that are supported by Oracle. (*)           The TO_CHAR function can only be used on DATE columns.                     Correct                  18.  You have been asked to create a report that lists all customers who have placed orders of at least  $2,500. The report's date should be displayed in the Day, Date Month, Year format (For example,  Tuesday, 13 April, 2004 ). Which statement should you issue?  Mark for Review   (1) Points               SELECT companyname, TO_CHAR (sysdate, 'fmdd, dy month, yyyy'), total   FROM customers NATURAL JOIN orders  

WHERE total >= 2500;              SELECT companyname, TO_DATE (date, 'day, dd month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;             SELECT companyname, TO_DATE (sysdate, 'dd, dy month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;             SELECT companyname, TO_CHAR (sysdate, 'fmDay, dd Month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;  (*)                       Incorrect. Refer to Section 2                  19.  Which SQL Statement should you use to display the prices in this format: "$00.30"?  Mark for  Review   (1) Points  

            SELECT TO_CHAR(price, '$99,900.99') FROM product; (*)           SELECT TO_CHAR(price, "$99,900.99") FROM product;           SELECT TO_CHAR(price, '$99,990.99') FROM product;           SELECT TO_NUMBER(price, '$99,900.99') FROM product;                     Correct                  20.  Which statement concerning single row functions is true?  Mark for Review   (1) Points               Single row functions can accept only one argument, but can return multiple values.           Single row functions cannot modify a data type.           Single row functions can be nested. (*)           Single row functions return one or more results per row.              

      Correct                   Page 2 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 2 Lesson 1    (Answer all questions in this section)             21.  The EMPLOYEES table contains these columns:     EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2 (25)   FIRST_NAME VARCHAR2 (25)  

SALARY NUMBER(6)       You need to create a report to display the salaries of all employees. Which script should you use to  display the salaries in format: "$45,000.00"?    Mark for Review   (1) Points               SELECT TO_CHAR(salary, '$999,999')   FROM employees;             SELECT TO_NUM(salary, '$999,990.99')   FROM employees;             SELECT TO_NUM(salary, '$999,999.00')   FROM employees;             SELECT TO_CHAR(salary, '$999,999.00')  FROM employees;  (*)                

      Correct                            Section 2 Lesson 2    (Answer all questions in this section)             22.  Which statement about group functions is true?  Mark for Review   (1) Points               NVL and NVL2, but not COALESCE, can be used with group functions to replace null values.           NVL and COALESCE, but not NVL2, can be used with group functions to replace null values.           NVL, NVL2, and COALESCE can be used with group functions to replace null values. (*)           COALESCE, but not NVL and NVL2, can be used with group functions to replace null values.                     Correct                  23.  The STYLES table contains this data:    

STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL  85940  11.00    758960  SANDAL  86979        Evaluate this SELECT statement:     SELECT style_id, style_name, category, cost   FROM styles   WHERE style_name LIKE 'SANDAL' AND NVL(cost, 0) < 15.00   ORDER BY category, cost;     Which result will the query provide?    Mark for Review   (1) Points               STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    758960  SANDAL  86979   

             STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85909  12.00    968950 SANDAL  85909  10.00    869506  SANDAL  89690  15.00    758960  SANDAL  86979                 STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85909  12.00    968950  SANDAL  85909  10.00    758960  SANDAL  86979    869506  SANDAL  89690  15.00                 STYLE_ID  STYLE_NAME  CATEGORY  COST    968950  SANDAL  85909  10.00    895840  SANDAL  85940  12.00    758960  SANDAL  86979      (*) 

                     Correct                  24.  You need to replace null values in the DEPT_ID column with the text "N/A". Which functions should  you use?  Mark for Review   (1) Points               TO_CHAR and NVL (*)           TO_CHAR and NULL           TO_CHAR and NULLIF           TO_NUMBER and NULLIF                     Correct                            Section 3 Lesson 2    (Answer all questions in this section)  

          25.  Your have two tables named EMPLOYEES and SALES. You want to identify the sales representatives  who have generated at least $100,000 in revenue.   Which query should you issue?  Mark for Review   (1) Points               SELECT e.fname, e.lname, s.sales   FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue > 100000;             SELECT e.fname, e.lname, s.sales   FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue >= 100000;  (*)             SELECT e.fname, e.lname, s.sales   FROM employees, sales   WHERE e.emp_id = s.emp_id AND revenue >= 100000;             SELECT fname, lname, sales   Q FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue > 100000;    

                  Correct                  26.  What is produced when a join condition is not specified in a multiple‐table query?  Mark for  Review   (1) Points               a self‐join           an outer join           an equijoin           a Cartesian product (*)                     Correct                  27.  What happens when you create a Cartesian product?  Mark for Review   (1) Points               All rows from one table are joined to all rows of another table (*)      

    The table is joined to itself, one column to the next column, exhausting all possibilities           The table is joined to another equal table           All rows that do not match in the WHERE clause are displayed                     Correct                  28.  Which statement about the join syntax of a SELECT statement is true?  Mark for Review   (1) Points               The ON keyword must be included.           The JOIN keyword must be included.           The FROM clause represents the join criteria.           The WHERE clause represents the join criteria. (*)                     Correct               

  29.  The CUSTOMERS and SALES tables contain these columns:   CUSTOMERS   CUST_ID NUMBER(10) PRIMARY KEY   COMPANY VARCHAR2(30)   LOCATION VARCHAR2(20)     SALES   SALES_ID NUMBER(5) PRIMARY KEY   CUST_ID NUMBER(10) FOREIGN KEY   TOTAL_SALES NUMBER(30)     Which SELECT statement will return the customer ID, the company and the total sales?     Mark for Review   (1) Points               SELECT c.cust_id, c.company, s.total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id (+);             SELECT cust_id, company, total_sales   FROM customers, sales   WHERE cust_id = cust_id;    

        SELECT c.cust_id, c.company, s.total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id;  (*)             SELECT cust_id, company, total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id;                       Correct                  30.  You need to create a report that lists all employees in the Sales department who do not earn  $25,000 per year. Which query should you issue to accomplish this task?  Mark for Review   (1) Points               SELECT last_name, first_name, salary   FROM employees   WHERE salary > 25000 AND dept_id = 10;             SELECT last_name, first_name, salary  

FROM employees   WHERE salary = 25000 AND dept_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary <= 25000 AND dept_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary != 25000 AND dept_id = 10;  (*)                       Correct                   Page 3 of 10                

     Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 3 Lesson 4    (Answer all questions in this section)             31.  Which two operators can be used in an outer join condition using the outer join operator (+)?   Mark for Review   (1) Points               AND and = (*)           OR and =           BETWEEN...AND... and IN           IN and =                     Correct       

          32.  Which operator would you use after one of the column names in the WHERE clause when creating  an outer join?  Mark for Review   (1) Points               (+) (*)           *           +           =                     Correct                  33.  Which of the following best describes the function of an outer join?  Mark for Review   (1) Points               An outer join will return only those rows that do not meet the join criteria.           An outer join will return only data from the far left column in one table and the far right column in the  other table.           An outer join will return data only if both tables contain an identical pair of columns.  

        An outer join will return all rows that meet the join criteria and will return NULL values from one table  if no rows from the other table satisfy the join criteria. (*)                     Correct                            Section 4 Lesson 2    (Answer all questions in this section)             34.  You need to join all the rows in the EMPLOYEE table to all the rows in the EMP_REFERENCE table.  Which type of join should you create?  Mark for Review   (1) Points               An equijoin           A cross join (*)           An inner join           A full outer join              

      Correct                  35.  Which statement about a natural join is true?  Mark for Review   (1) Points               Columns with the same names must have identical data types.           Columns with the same names must have the same precision and datatype. (*)           Columns with the same names must have compatible data types.           Columns with the same names cannot be included in the SELECT list of the query.                     Correct                  36.  A join between tables where the result set includes matching values from both tables but does  NOT return any unmatched rows could be called which of the following? (Choose three)  Mark for  Review   (1) Points              (Choose all correct answers)                Equijoin (*)  

        Self join (*)           Nonequijoin           Simple join (*)           full outer join                     Incorrect. Refer to Section 4                            Section 4 Lesson 3    (Answer all questions in this section)             37.  Evaluate this SELECT statement:    SELECT a.lname || ', ' || a.fname as "Patient", b.lname || ', ' || b.fname as "Physician", c.admission   FROM patient a   JOIN physician b   ON (b.physician_id = c.physician_id);   JOIN admission c  

ON (a.patient_id = c.patient_id);     Which clause generates an error?    Mark for Review   (1) Points               JOIN physician b           ON (b.physician_id = c.physician_id); (*)           JOIN admission c           ON (a.patient_id = c.patient_id)                     Correct                  38.  Which of the following statements is the simplest description of a nonequijoin?  Mark for Review   (1) Points               A join condition containing something other than an equality operator (*)           A join condition that is not equal to other joins.      

    A join condition that includes the (+) on the left hand side.           A join that joins a table to itself                     Correct                  39.  Which SELECT clause creates an equijoin by specifying a column name common to both tables?   Mark for Review   (1) Points               A HAVING clause           The FROM clause           The SELECT clause           A USING clause (*)                     Correct                  40.  For which condition would you use an equijoin query with the USING keyword?  Mark for Review   (1) Points  

            You need to perform a join of the CUSTOMER and ORDER tables but limit the number of columns in  the join condition. (*)           The ORDER table contains a column that has a referential constraint to a column in the PRODUCT  table.           The CUSTOMER and ORDER tables have no columns with identical names.           The CUSTOMER and ORDER tables have a corresponding column, CUST_ID. The CUST_ID column in the  ORDER table contains null values that need to be displayed.                     Correct                   Page 4 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL        

  Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 4 Lesson 4    (Answer all questions in this section)             41.  What should be included in a SELECT statement to return NULL values from all tables?  Mark for  Review   (1) Points               natural joins           left outer joins           full outer joins (*)           right outer joins                     Incorrect. Refer to Section 4                  42.  Which two sets of join keywords create a join that will include unmatched rows from the first table  specified in the SELECT statement?  Mark for Review   (1) Points          

    LEFT OUTER JOIN and FULL OUTER JOIN (*)           RIGHT OUTER JOIN and LEFT OUTER JOIN           USING and HAVING           OUTER JOIN and USING                     Correct                  43.  Which query will retrieve all the rows in the EMPLOYEES table, even if there is no match in the  DEPARTMENTS table?  Mark for Review   (1) Points               SELECT e.last_name, e.department_id, d.department_name   FROM employees e   RIGHT OUTER JOIN departments d ON (e.department_id = d.department_id);              SELECT e.last_name, e.department_id, d.department_name   FROM employees e   NATURAL JOIN departments d;         

    SELECT e.last_name, e.department_id, d.department_name   FROM employees e  LEFT OUTER JOIN departments d ON (e.department_id = d.department_id);   (*)             SELECT e.last_name, e.department_id, d.department_name   FROM employees e   JOIN departments d USING (e.department_id = d.department_id);                        Correct                            Section 5 Lesson 1    (Answer all questions in this section)             44.  What will the following SQL Statement do?   SELECT job_id, COUNT(*)   FROM employees   GROUP BY job_id;   

 Mark for Review   (1) Points               Displays all the employees and groups them by job.           Displays each job id and the number of people assigned to that job id. (*)           Displays only the number of job_ids.           Displays all the jobs with as many people as there are jobs.                     Correct                  45.  What is the best explanation as to why this SQL statement will NOT execute?   SELECT department_id "Department", AVG (salary)"Average"   FROM employees   GROUP BY Department;    Mark for Review   (1) Points               Salaries cannot be averaged as not all the numbers will divide evenly.           You cannot use a column alias in the GROUP BY clause. (*)  

        The GROUP BY clause must have something to GROUP.           The department id is not listed in the departments table.                     Correct                  46.  Which statement about the GROUP BY clause is true?  Mark for Review   (1) Points               The first column listed in the GROUP BY clause is the most major grouping. (*)           The last column listed in the GROUP BY clause is the most major grouping.           The GROUP BY clause can contain an aggregate function.           A GROUP BY clause cannot be used without an ORDER BY clause.                     Correct                  47.  Group functions can be nested to a depth of?  Mark for Review  

(1) Points               three           four           two (*)           Group functions cannot be nested.                     Correct                            Section 5 Lesson 2    (Answer all questions in this section)             48.  Which group functions below act on character, number and date data types?   (Choose more than one answer)  Mark for Review   (1) Points              (Choose all correct answers)           

    SUM           MAX (*)           MIN (*)           AVG           COUNT (*)                     Correct                  49.  You need to calculate the standard deviation for the cost of products produced in the Birmingham  facility. Which group function will you use?  Mark for Review   (1) Points               STDEV           STDDEV (*)           VAR_SAMP           VARIANCE      

              Correct                  50.  The CUSTOMER table contains these columns:   CUSTOMER_ID NUMBER(9)   FNAME VARCHAR2(25)   LNAME VARCHAR2(30)   CREDIT_LIMIT NUMBER (7,2)  CATEGORY VARCHAR2(20)     You need to calculate the average credit limit for all the customers in each category. The average should  be calculated based on all the rows in the table excluding any customers who have not yet been  assigned a credit limit value. Which group function should you use to calculate this value?    Mark for Review   (1) Points               AVG (*)           SUM           COUNT           STDDEV              

      Correct                   Page 5 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 5 Lesson 2    (Answer all questions in this section)             51.  Which group function would you use to display the average price of all products in the PRODUCTS  table?  Mark for Review   (1) Points               SUM      

    AVG (*)           COUNT           MAX                     Correct                  52.  Which group function would you use to display the highest salary value in the EMPLOYEE table?   Mark for Review   (1) Points               AVG           COUNT           MAX (*)           MIN                     Correct               

  53.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        You need to determine the average payment amount made by each customer in January, February and  March of 2003. Which SELECT statement should you use?    Mark for Review   (1) Points               SELECT AVG(payment_amount)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '31‐MAR‐2003';   (*)             SELECT AVG(payment_amount)   FROM payment;             SELECT SUM(payment_amount)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' and '31‐MAR‐2003';    

        SELECT AVG(payment_amount)   FROM payment   WHERE TO_CHAR(payment_date) IN (JAN, FEB, MAR);                        Correct                  54.  The EMPLOYEES table contains these columns:   EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2(20)  FIRST_NAME VARCHAR2(20)   SALARY NUMBER(9,2)  HIRE_DATE DATE   BONUS NUMBER(7,2)   COMM_PCT NUMBER(4,2)     Which three functions could be used with the HIRE_DATE, LAST_NAME, or SALARY columns? (Choose  three.)    Mark for Review   (1) Points              (Choose all correct answers)           

    MAX (*)           SUM           AVG           MIN (*)           COUNT (*)                     Correct                  55.  Group functions return a value for ________________ and ________________ null values in their  computations.  Mark for Review   (1) Points               a row set, ignore (*)           each row, ignore           a row set, include           each row, include      

              Correct                            Section 5 Lesson 3    (Answer all questions in this section)             56.  Which statement about the COUNT function is true?  Mark for Review   (1) Points               The COUNT function ignores duplicates by default.           The COUNT function always ignores null values by default. (*)           The COUNT function can be used to find the maximum value in each column.           The COUNT function can be used to determine the number of unique, non‐null values in a column.                     Incorrect. Refer to Section 5                  57.  The EMPLOYEES table contains these columns:  

EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   SALARY NUMBER(7,2)   DEPARTMENT_ID NUMBER(9)     You need to display the number of employees whose salary is greater than $50,000? Which SELECT  would you use?    Mark for Review   (1) Points               SELECT * FROM employees   WHERE salary > 50000;              SELECT * FROM employees   WHERE salary < 50000;              SELECT COUNT(*) FROM employees   WHERE salary < 50000;              SELECT COUNT(*) FROM employees   WHERE salary > 50000;   (*) 

           SELECT COUNT(*) FROM employees   WHERE salary > 50000   GROUP BY employee_id, last_name, first_name, salary, department_id;                        Correct                  58.  Group functions can avoid computations involving duplicate values by including which keyword?   Mark for Review   (1) Points               NULL           DISTINCT (*)           SELECT           UNLIKE                     Correct       

          59.  Examine the data from the LINE_ITEM table:   LINE_ITEM_ID  ORDER_ID  PRODUCT_ID  PRICE  DISCOUNT    890898  847589  848399  8.99  0.10    768385  862459  849869  5.60  0.05    867950  985490  945809  5.60    954039  439203  438925  5.25  0.15    543949  349302  453235  4.50        You query the LINE_ITEM table and a value of 5 is returned. Which SQL statement did you execute?    Mark for Review   (1) Points               SELECT COUNT(discount) FROM line_item;           SELECT COUNT(*) FROM line_item; (*)           SELECT SUM(discount) FROM line_item;           SELECT AVG(discount) FROM line_item;                     Correct       

                    Section 6 Lesson 1    (Answer all questions in this section)             60.  The PRODUCTS table contains these columns:   PRODUCT_ID NUMBER(9) PK   CATEGORY_ID VARCHAR2(10)   LOCATION_ID NUMBER(9)   DESCRIPTION VARCHAR2(30)   COST NUMBER(7,2)   PRICE NUMBER(7,2)  QUANTITY NUMBER    You display the total of the extended costs for each product category by location. You need to include  only the products that have a price less than $25.00. The extended cost of each item equals the quantity  value multiplied by the cost value.   Which SQL statement will display the desired result?   Mark for Review   (1) Points               SELECT category_id, SUM(cost * quantity) TOTAL,location_id   FROM products   WHERE price > 25.00   GROUP BY category_id, location_id; 

           SELECT SUM(cost * quantity) TOTAL, location_id   FROM products   WHERE price < 25.00   GROUP BY location_id;             SELECT category_id, SUM(cost * quantity) TOTAL, location_id   FROM products   WHERE price < 25.00   GROUP BY category_id, location_id;  (*)             SELECT SUM(cost * quantity) TOTAL  FROM products   WHERE price < 25.00;                       Incorrect. Refer to Section 6                 

 Page 6 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 1    (Answer all questions in this section)             61.  Evaluate this SELECT statement:  SELECT SUM(salary), dept_id   FROM employee   GROUP BY dept_id;     How are the results of this statement sorted?   Mark for Review   (1) Points          

    Ascending order by dept_id (*)           Descending order by dept_id           Ascending order by cumulative salary           Descending order by cumulative salary                     Correct                  62.  The PLAYERS table contains these columns:   PLAYER_ID NUMBER PK   PLAYER_NAME VARCHAR2 (30)   TEAM_ID NUMBER   HIRE_DATE DATE   SALARY NUMBER (8,2)     Which two clauses represent valid uses of aggregate functions? (Choose three.)    Mark for Review   (1) Points              (Choose all correct answers)           

    ORDER BY AVG(salary)           GROUP BY MAX(salary) (*)           SELECT AVG(NVL(salary, 0)) (*)           HAVING MAX(salary) > 10000 (*)           WHERE hire_date > AVG(hire_date)                     Correct                  63.  Evaluate this SELECT statement:   SELECT SUM(salary), dept_id, mgr_id  FROM employee   GROUP BY dept_id, mgr_id;     Which SELECT statement clause allows you to restrict the rows returned, based on a group function?    Mark for Review   (1) Points               HAVING SUM(salary) > 100000 (*)      

    WHERE SUM(salary) > 100000           WHERE salary > 100000           HAVING salary > 100000                     Incorrect. Refer to Section 6                  64.  The MANUFACTURER table contains these columns:   MANUFACTURER_ID NUMBER   MANUFACTURER_NAME VARCHAR2(30)   TYPE VARCHAR2(25)   LOCATION_ID NUMBER    You need to display the number of unique types of manufacturers at each location. Which SELECT  statement should you use?    Mark for Review   (1) Points               SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer   GROUP BY location_id;  (*)    

        SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer;             SELECT location_id, COUNT(type)   FROM manufacturer   GROUP BY location_id;             SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer   GROUP BY type;                       Incorrect. Refer to Section 6                  65.  Evaluate this SELECT statement:  SELECT SUM(salary), dept_id, department_name   FROM employee   WHERE dept_id = 1   GROUP BY department;    

Which clause of the SELECT statement contains a syntax error?   Mark for Review   (1) Points               SELECT           FROM           WHERE           GROUP BY (*)                     Incorrect. Refer to Section 6                  66.  Which statement about the GROUP BY clause is true?  Mark for Review   (1) Points               To exclude rows before dividing them into groups using the GROUP BY clause, you use should a  WHERE clause. (*)           You can use a column alias in a GROUP BY clause.           By default, rows are not sorted when a GROUP BY clause is used.      

    You must use the HAVING clause with the GROUP BY clause.                     Correct                  67.  The PAYMENT table contains these columns:   PAYMENT_ID NUMBER(9) PK  PAYMENT_DATE DATE   CUSTOMER_ID NUMBER(9)     Which SELECT statement could you use to display the number of times each customer made a payment  between January 1, 2003 and June 30, 2003 ?   Mark for Review   (1) Points               SELECT customer_id, COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003'   GROUP BY customer_id;  (*)             SELECT COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003'; 

           SELECT customer_id, COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003';             SELECT COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003'   GROUP BY customer_id;                       Incorrect. Refer to Section 6                            Section 6 Lesson 2    (Answer all questions in this section)             68.  Which statement about subqueries is true?  Mark for Review   (1) Points          

    Subqueries should be enclosed in double quotation marks.           Subqueries cannot contain group functions.           Subqueries are often used in a WHERE clause to return values for an unknown conditional value. (*)           Subqueries generally execute last, after the main or outer query executes.                     Correct                  69.  Which operator can be used with subqueries that return only one row?  Mark for Review   (1) Points               LIKE (*)           ANY           ALL           IN                     Correct   

              70.  If you use the equality operator (=) with a subquery, how many values can the subquery return?   Mark for Review   (1) Points               only 1 (*)           up to 2           up to 5           unlimited                     Correct                   Page 7 of 10                     

Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 2    (Answer all questions in this section)             71.  You need to display all the players whose salaries are greater than or equal to John Brown's salary.  Which comparison operator should you use?  Mark for Review   (1) Points               =           >           <=           >= (*)                     Correct                  72.  Examine the structures of the CUSTOMER and ORDER_HISTORY tables:  

CUSTOMER   CUSTOMER_ID NUMBER(5)  NAME VARCHAR2(25)  CREDIT_LIMIT NUMBER(8,2)  OPEN_DATE DATE       ORDER_HISTORY  ORDER_ID NUMBER(5)  CUSTOMER_ID NUMBER(5)  ORDER_DATE DATE  TOTAL NUMBER(8,2)     Which of the following scenarios would require a subquery to return the desired results?    Mark for Review   (1) Points               You need to display the date each customer account was opened.           You need to display each date that a customer placed an order.           You need to display all the orders that were placed on a certain date.           You need to display all the orders that were placed on the same day as order number 25950. (*)      

              Correct                            Section 6 Lesson 3    (Answer all questions in this section)             73.  You need to produce a report that contains all employee‐related information for those employees  who have Brad Carter as a supervisor. However, you are not sure which supervisor ID belongs to Brad  Carter. Which query should you issue to accomplish this task?  Mark for Review   (1) Points               SELECT *   FROM employees   WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');              SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT supervisor_id  

     FROM employees        WHERE last_name = 'Carter');              SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT employee_id        FROM supervisors        WHERE last_name = 'Carter');             SELECT *   FROM employees  WHERE supervisor_id =        (SELECT employee_id        FROM employees        WHERE last_name = 'Carter');   (*)                       Correct               

  74.  Examine the structure of the EMPLOYEE, DEPARTMENT, and ORDERS tables.   EMPLOYEE  EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2(25)  FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)     DEPARTMENT   DEPARTMENT_ID NUMBER(9)  DEPARTMENT_NAME VARCHAR2(25)  CREATION_DATE DATE    ORDERS   ORDER_ID NUMBER(9)  EMPLOYEE_ID NUMBER(9)  DATE DATE   CUSTOMER_ID NUMBER(9)    You want to display all employees who had an order after the Sales department was established. Which  of the following constructs would you use?    Mark for Review   (1) Points               a group function           a single‐row subquery (*)  

        the HAVING clause           a MERGE statement                     Incorrect. Refer to Section 6                  75.  Which best describes a single‐row subquery?  Mark for Review   (1) Points               a query that returns only one row from the inner SELECT statement (*)           a query that returns one or more rows from the inner SELECT statement           a query that returns only one column value from the inner SELECT statement           a query that returns one or more column values from the inner SELECT statement                     Correct                  

         Section 6 Lesson 4    (Answer all questions in this section)             76.  Evaluate this SELECT statement:  SELECT customer_id, name   FROM customer   WHERE customer_id IN      (SELECT customer_id       FROM customer       WHERE state_id = 'GA' AND credit_limit > 500.00);     What would happen if the inner query returned null?    Mark for Review   (1) Points               An error would be returned.           No rows would be returned by the outer query. (*)           All the rows in the table would be selected.           Only the rows with CUSTOMER_ID values equal to null would be selected.              

      Correct                  77.  Which of the following best describes the meaning of the ANY operator?  Mark for Review   (1) Points               Equal to any member in the list           Compare value to each value returned by the subquery (*)           Compare value to every value returned by the subquery           Equal to each value in the list                     Correct                  78.  Which of the following statements contains a comparison operator that is used to restrict rows  based on a list of values returned from an inner query?  Mark for Review   (1) Points               SELECT description   FROM d_types   WHERE code IN (SELECT type_code FROM d_songs);    

        SELECT description  FROM d_types  WHERE code = ANY (SELECT type_code FROM d_songs);             SELECT description   FROM d_types   WHERE code <> ALL (SELECT type_code FROM d_songs);             All of the above. (*)                     Correct                  79.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        This statement fails when executed:  

  SELECT customer_id, payment_type   FROM payment   WHERE payment_id =      (SELECT payment_id       FROM payment       WHERE payment_amount = 596.00 OR payment_date = '20‐MAR‐2003');     Which change could correct the problem?    Mark for Review   (1) Points               Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)           Remove the quotes surrounding the date value in the OR clause.           Remove the parentheses surrounding the nested SELECT statement.           Change the comparison operator to a single‐row operator.                     Correct                  80.  What is wrong with the following query?  

SELECT employee_id, last_name   FROM employees   WHERE salary =     (SELECT MIN(salary) FROM employees GROUP BY department_id);     Mark for Review   (1) Points               Single rows contain multiple values and a logical operator is used.           Subquery returns more than one row and single row comparison operator is used. (*)           Subquery references the wrong table in the WHERE clause.           Nothing, it will run without problems.                     Correct                   Page 8 of 10             

        Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 4    (Answer all questions in this section)             81.  Evaluate this SELECT statement:  SELECT player_id, name   FROM players   WHERE team_id IN      (SELECT team_id       FROM teams       WHERE team_id > 300 AND salary_cap > 400000);     What would happen if the inner query returned a NULL value?    Mark for Review   (1) Points               No rows would be returned by the outer query. (*)  

        A syntax error in the outer query would be returned.           A syntax error in the inner query would be returned.           All the rows in the PLAYER table would be returned by the outer query.                     Correct                  82.  Evaluate this SELECT statement that includes a subquery:  SELECT last_name, first_name   FROM customer  WHERE area_code IN       (SELECT area_code FROM sales WHERE salesperson_id = 20);     Which statement is true about the given subquery?    Mark for Review   (1) Points               The outer query executes before the nested subquery.           The results of the inner query are returned to the outer query. (*)      

    An error occurs if the either the inner or outer queries do not return a value.           Both the inner and outer queries must return a value, or an error occurs.                     Correct                  83.  Which statement about single‐row and multiple‐row subqueries is true?  Mark for Review   (1) Points               Multiple‐row subqueries cannot be used with the LIKE operator. (*)           Single‐row operators can be used with both single‐row and multiple‐row subqueries.           Multiple‐row subqueries can be used with both single‐row and multiple‐row operators.           Multiple‐row subqueries can only be used in SELECT statements.                     Correct                  84.  You need to create a SELECT statement that contains a multiple‐row subquery, which comparison  operator(s) can you use?  Mark for Review   (1) Points  

            IN, ANY, and ALL (*)           LIKE           BETWEEN...AND...           =, <, and >                     Correct                  85.  Which statement about the ANY operator when used with a multiple‐row subquery is true?  Mark  for Review   (1) Points               The ANY operator compares every value returned by the subquery. (*)           The ANY operator can be used with the DISTINCT keyword.           The ANY operator is a synonym for the ALL operator.           The ANY operator can be used with the LIKE and IN operators.              

      Correct                  86.  What would happen if you attempted to use a single‐row operator with a multiple‐row subquery?   Mark for Review   (1) Points               An error would be returned. (*)           No rows will be selected.           All the rows will be selected.           The data returned may or may not be correct.                     Correct                            Section 7 Lesson 1    (Answer all questions in this section)             87.  You need to copy rows from the EMPLOYEE table to the EMPLOYEE_HIST table. What could you  use in the INSERT statement to accomplish this task?  Mark for Review  

(1) Points               an ON clause           a SET clause           a subquery (*)           a function                     Correct                  88.  The PRODUCTS table contains these columns:  PRODUCT_ID NUMBER NOT NULL   PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER NOT NULL  LIST_PRICE NUMBER (7,2)  COST NUMBER (5,2)  QTY_IN_STOCK NUMBER(4)  LAST_ORDER_DT DATE NOT NULL DEFAULT SYSDATE       Which INSERT statement will execute successfully?  

 Mark for Review   (1) Points               INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, 700); (*)           INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, SYSDATE);           INSERT INTO products(product_id, product_name) VALUES (2958, 'Cable');           INSERT INTO products(product_id, product_name, supplier_id VALUES (2958, 'Cable', 8690, SYSDATE);                     Correct                  89.  You have been instructed to add a new customer to the CUSTOMERS table. Because the new  customer has not had a credit check, you should not add an amount to the CREDIT column.   The CUSTOMERS table contains these columns:   CUST_ID NUMBER(10)   COMPANY VARCHAR2(30)   CREDIT NUMBER(10)   POC VARCHAR2(30)   LOCATION VARCHAR2(30)    Which two INSERT statements will accomplish your objective?    Mark for Review  

(1) Points              (Choose all correct answers)                INSERT INTO customers (cust_id, company, poc, location)   VALUES (200, 'InterCargo', 'tflanders', 'samerica');   (*)             INSERT INTO customers   VALUES (200, 'InterCargo', null, 'tflanders', 'samerica');   (*)             INSERT INTO customers   VALUES (cust_id, company, credit, poc, location) (200, 'InterCargo', 0, 'tflanders', 'samerica');              INSERT INTO customers   VALUES (200, InterCargo, 0, tflanders, samerica);                        Correct      

          90.  Assume all the column names are correct. The following SQL statement will execute which of the  following?  INSERT INTO departments (department_id, department_name, manager_id, location_id)   VALUES (70, 'Public Relations', 100, 1700);     Mark for Review   (1) Points               100 will be inserted into the department_id column           1700 will be inserted into the manager_id column           70 will be inserted into the department_id column (*)           'Public Relations' will be inserted into the manager_name column                     Correct                   Page 9 of 10             

        Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 7 Lesson 2    (Answer all questions in this section)             91.  You need to remove a row from the EMPLOYEE table. Which statement would you use?  Mark for  Review   (1) Points               UPDATE with a WHERE clause           INSERT with a WHERE clause           DELETE with a WHERE clause (*)           MERGE with a WHERE clause                     Correct   

              92.  One of your employees was recently married. Her employee ID is still 189, however, her last name  is now Rockefeller. Which SQL statement will allow you to reflect this change?  Mark for Review   (1) Points               INSERT INTO my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;           INSERT my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;           UPDATE INTO my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;           UPDATE my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189; (*)                     Correct                  93.  You want to enter a new record into the CUSTOMERS table. Which two commands can be used to  create new rows?  Mark for Review   (1) Points               INSERT, CREATE           MERGE, CREATE      

    INSERT, MERGE (*)           INSERT, UPDATE                     Correct                  94.  The EMPLOYEES table contains the following columns:   EMP_ID NUMBER(10) PRIMARY KEY  LNAME VARCHAR2(20)  FNAME VARCHAR2(20)  DEPT VARCHAR2(20)   HIRE_DATE DATE   SALARY NUMBER(9,2)  BONUS NUMBER(9,2)     You need to increase the salary for all employees in department 10 by 10 percent. You also need to  increase the bonus for all employees in department 10 by 15 percent. Which statement should you use?    Mark for Review   (1) Points               UPDATE employees  SET salary = salary * 1.10, bonus = bonus * 1.15   WHERE dept = 10;   (*) 

           UPDATE employees   SET salary = salary * 1.10 AND bonus = bonus * 1.15   WHERE dept = 10;              UPDATE employees   SET (salary = salary * 1.10) SET (bonus = bonus * 1.15)   WHERE dept = 10;              UPDATE employees  SET salary = salary * .10, bonus = bonus * .15   WHERE dept = 10;                        Incorrect. Refer to Section 7                  95.  One of the sales representatives, Janet Roper, has informed you that she was recently married, and  she has requested that you update her name in the employee database. Her new last name is Cooper.  Janet is the only person with the last name of Roper that is employed by the company. The EMPLOYEES  table contains these columns and all data is stored in lowercase:   EMP_ID NUMBER(10) PRIMARY KEY   LNAME VARCHAR2(20) 

FNAME VARCHAR2(20)  DEPT VARCHAR2 (20)  HIRE_DATE DATE  SALARY NUMBER(10)    Which UPDATE statement will accomplish your objective?   Mark for Review   (1) Points               UPDATE employees  SET lname = 'cooper'   WHERE lname = 'roper';   (*)             UPDATE employees lname = 'cooper'   WHERE lname = 'roper';             UPDATE employees  SET lname = 'roper'   WHERE lname = 'cooper';             UPDATE employees 

SET cooper = 'lname'   WHERE lname = 'roper';                       Correct                  96.  What would happen if you issued a DELETE statement without a WHERE clause?  Mark for Review   (1) Points               All the rows in the table would be deleted. (*)           An error message would be returned.           No rows would be deleted.           Only one row would be deleted.                     Correct                  97.  Which of the following represents the correct syntax for an INSERT statement?  Mark for Review   (1) Points  

            INSERT VALUES INTO customers (3178 J. Smith 123 Main Street Nashville TN 37777;           INSERT INTO customers VALUES '3178' 'J.' 'Smith' '123 Main Street' 'Nashville' 'TN' '37777';           INSERT INTO customers VALUES ('3178', 'J.', 'Smith', '123 Main Street', 'Nashville', 'TN', '37777'); (*)           INSERT customers VALUES 3178, J., Smith, 123 Main Street, Nashville, TN, 37777;                     Correct                  98.  The PLAYERS table contains these columns:  PLAYER_ID NUMBER NOT NULL  PLAYER_LNAME VARCHAR2(20) NOT NULL  PLAYER_FNAME VARCHAR2(10) NOT NULL   TEAM_ID NUMBER   SALARY NUMBER(9,2)     You need to increase the salary of each player for all players on the Tiger team by 12.5 percent. The  TEAM_ID value for the Tiger team is 5960. Which statement should you use?    Mark for Review   (1) Points               UPDATE players (salary) SET salary = salary * 1.125;  

        UPDATE players SET salary = salary * .125 WHERE team_id = 5960;           UPDATE players SET salary = salary * 1.125 WHERE team_id = 5960; (*)           UPDATE players (salary) VALUES(salary * 1.125) WHERE team_id = 5960;                     Correct                  99.  You need to update the expiration date of products manufactured before June 30th . In which  clause of the UPDATE statement will you specify this condition?  Mark for Review   (1) Points               the ON clause           the WHERE clause (*)           the SET clause           the USING clause                     Correct       

          100.  You need to delete a record in the EMPLOYEES table for Tim Jones, whose unique employee  identification number is 348. The EMPLOYEES table contains these columns:  ID_NUM NUMBER(5) PRIMARY KEY  LNAME VARCHAR2(20)  FNAME VARCHAR2(20)  ADDRESS VARCHAR2(30)  PHONE NUMBER(10)    Which DELETE statement will delete the appropriate record without deleting any additional records?    Mark for Review   (1) Points               DELETE FROM employees WHERE id_num = 348; (*)           DELETE FROM employees WHERE lname = jones;           DELETE * FROM employees WHERE id_num = 348;           DELETE 'jones' FROM employees;                     Correct                 

 Page 10 of 10                  1.  Which SQL function can be used to remove heading or trailing characters (or both) from a character  string?  Mark for Review   (1) Points               LPAD           CUT           NVL2           TRIM (*)                     Correct               2.  Which three statements about functions are true? (Choose three.)  Mark for Review   (1) Points  

           (Choose all correct answers)                The SYSDATE function returns the Oracle Server date and time. (*)           The ROUND number function rounds a value to a specified decimal place or the nearest whole  number. (*)           The CONCAT function can only be used on character strings, not on numbers.           The SUBSTR character function returns a portion of a string beginning at a defined character position  to a specified length. (*)                     Correct         You query the database with this SQL statement:     SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID"  FROM employee;      In which order are the functions evaluated?    Mark for Review   (1) Points          

    LOWER, SUBSTR, CONCAT           LOWER, CONCAT, SUBSTR           SUBSTR, CONCAT, LOWER           CONCAT, SUBSTR, LOWER (*)                     Correct        4.  The STYLES table contains this data:    STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL 85940  11.00    758960  SANDAL  86979 11.00        You query the database and return the value 40. Which script did you use?    Mark for Review  

(1) Points               SELECT INSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;              SELECT INSTR(category, ‐2,2)   FROM styles   WHERE style_id = 895840;              SELECT SUBSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;  (*)             SELECT SUBSTR(category, ‐2,2)   FROM styles   WHERE style_id = 758960;                       Correct   

     You issue this SQL statement:     SELECT INSTR ('organizational sales', 'al')   FROM dual;       Which value is returned by this command?    Mark for Review   (1) Points               1           2           13 (*)           17                     Correct       6.  You need to display the number of characters in each customer's last name. Which function should  you use?  Mark for Review   (1) Points          

    LENGTH (*)           LPAD           COUNT           SUBSTR                     Correct                7.  What will the following SQL statemtent display?     SELECT last_name, LPAD(salary, 15, '$')SALARY   FROM employees;       Mark for Review   (1) Points               The last name of employees that have a salary that includes a $ in the value, size of 15 and the column  labeled SALARY.           The last name and the format of the salary limited to 15 digits to the left of the decimal and the  column labeled SALARY.  

        The last name and salary for all employees with the format of the salary 15 characters long, left‐ padded with the $ and the column labeled SALARY. (*)           The query will result in an error: "ORA‐00923: FROM keyword not found where expected."                     Correct       .  You issue this SQL statement:    SELECT ROUND (1282.248, ‐2)   FROM dual;      What value does this statement produce?    Mark for Review   (1) Points               1200           1282           1282.25           1300 (*)  

                  Correct        9.  Evaluate this function: MOD (25, 2) Which value is returned?  Mark for Review   (1) Points               1 (*)           2           25           0                     Correct        10.  Which comparison operator retrieves a list of values?  Mark for Review   (1) Points               IN (*)           LIKE      

    BETWEEN...IN...           IS NULL                     Incorrect. Refer to Section 1 Lesson 1        11.  Which function would you use to return the current database server date and time?  Mark for  Review   (1) Points               DATE           SYSDATE (*)           DATETIME           CURRENTDATE                     Correct        12.  You need to display the number of months between today's date and each employee's hiredate.  Which function should you use?  Mark for Review   (1) Points          

    ROUND           BETWEEN           ADD_MONTHS           MONTHS_BETWEEN (*)                     Correct        13.  You need to subtract three months from the current date. Which function should you use?  Mark  for Review   (1) Points               ROUND           TO_DATE           ADD_MONTHS (*)           MONTHS_BETWEEN                     Incorrect. Refer to Section 1       

       14.  Which of the following Date Functions will add calendar months to a date?  Mark for Review   (1) Points               Months + Calendar (Month)           ADD_MONTHS (*)           MONTHS + Date           NEXT_MONTH                     Correct        15.  Evaluate this SELECT statement:    SELECT SYSDATE + 30  FROM dual;      Which value is returned by the query?    Mark for Review   (1) Points          

    the current date plus 30 hours           the current date plus 30 days (*)           the current date plus 30 months           No value is returned because the SELECT statement generates an error.                     Incorrect. Refer to Section 1       16.  Which SQL Statement should you use to display the prices in this format: "$00.30"?  Mark for  Review   (1) Points               SELECT TO_CHAR(price, '$99,900.99') FROM product; (*)           SELECT TO_CHAR(price, "$99,900.99") FROM product;           SELECT TO_CHAR(price, '$99,990.99') FROM product;           SELECT TO_NUMBER(price, '$99,900.99') FROM product;                     Correct      

 17.  All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a  report that displays each employee's name and salary. Each employee's salary must be displayed in the  following format: $000,000.00. Which function should you include in a SELECT statement to achieve the  desired result?  Mark for Review   (1) Points               TO_CHAR (*)           TO_DATE           TO_NUMBER           CHARTOROWID                     Incorrect. Refer to Section 2        18.  The EMPLOYEES table contains these columns:     EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2 (25)   FIRST_NAME VARCHAR2 (25)   HIRE_DATE DATE       You need to display HIRE_DATE values in this format:    

  January 28, 2000     Which SELECT statement could you use?    Mark for Review   (1) Points               SELECT TO_CHAR(hire_date, Month DD, YYYY)  FROM employees;              SELECT TO_CHAR(hire_date, 'Month DD, YYYY')   FROM employees;  (*)             SELECT hire_date(TO_CHAR 'Month DD', ' YYYY')  FROM employees;             SELECT TO_CHAR(hire_date, 'Month DD', ' YYYY')   FROM employees;                

      Incorrect. Refer to Section 2       19.  Which two statements concerning SQL functions are true? (Choose two.)  Mark for Review   (1) Points              (Choose all correct answers)                Character functions can accept numeric input.           Not all date functions return date values. (*)           Number functions can return number or character values.           Conversion functions convert a value from one data type to another data type. (*)           Single‐row functions manipulate groups of rows to return one result per group of rows.                     Incorrect. Refer to Section 2                20.  The EMPLOYEES table contains these columns:     EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2 (25)  

FIRST_NAME VARCHAR2 (25)   SALARY NUMBER(6)       You need to create a report to display the salaries of all employees. Which script should you use to  display the salaries in format: "$45,000.00"?    Mark for Review   (1) Points               SELECT TO_CHAR(salary, '$999,999')   FROM employees;             SELECT TO_NUM(salary, '$999,990.99')   FROM employees;             SELECT TO_NUM(salary, '$999,999.00')   FROM employees;             SELECT TO_CHAR(salary, '$999,999.00')  FROM employees;  (*)        

              Incorrect. Refer to Section 2       21.  If you use the RR format when writing a query using the date 27‐OCT‐17 and the year is 2001, what  year would be the result?  Mark for Review   (1) Points               2001           1901           2017 (*)           1917                     Correct         22.  Which of the following General Functions will return the first non‐null expression in the expression  list?  Mark for Review   (1) Points               NVL           NVL2      

    NULLIF           COALESCE (*)                     Correct       23.  When executed, which statement displays a zero if the TUITION_BALANCE value is zero and the  HOUSING_BALANCE value is null?  Mark for Review   (1) Points               SELECT NVL (tuition_balance + housing_balance, 0) "Balance Due"   FROM student_accounts;   (*)             SELECT NVL(tuition_balance, 0), NVL (housing_balance), tuition_balance + housing_balance "Balance  Due"   FROM student_accounts;             SELECT tuition_balance + housing_balance   FROM student_accounts;             SELECT TO_NUMBER(tuition_balance, 0), TO_NUMBER (housing_balance, 0), tutition_balance +  housing_balance "Balance Due"  

FROM student_accounts;                       Incorrect. Refer to Section 2               24.  Which statement about group functions is true?  Mark for Review   (1) Points               NVL and NVL2, but not COALESCE, can be used with group functions to replace null values.           NVL and COALESCE, but not NVL2, can be used with group functions to replace null values.           NVL, NVL2, and COALESCE can be used with group functions to replace null values. (*)           COALESCE, but not NVL and NVL2, can be used with group functions to replace null values.                     Correct       25.  When joining 3 tables in a SELECT statement, how many join conditions are needed in the WHERE  clause?  Mark for Review   (1) Points               0  

        1           2 (*)           3                     Correct        26.  You need to create a report that lists all employees in the Sales department who do not earn  $25,000 per year. Which query should you issue to accomplish this task?  Mark for Review   (1) Points               SELECT last_name, first_name, salary   FROM employees   WHERE salary > 25000 AND dept_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary = 25000 AND dept_id = 10;             SELECT last_name, first_name, salary   FROM employees  

WHERE salary <= 25000 AND dept_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary != 25000 AND dept_id = 10;  (*)                       Correct       27.  The CUSTOMERS and SALES tables contain these columns:   CUSTOMERS   CUST_ID NUMBER(10) PRIMARY KEY   COMPANY VARCHAR2(30)   LOCATION VARCHAR2(20)     SALES   SALES_ID NUMBER(5) PRIMARY KEY   CUST_ID NUMBER(10) FOREIGN KEY   TOTAL_SALES NUMBER(30)     Which SELECT statement will return the customer ID, the company and the total sales?   

 Mark for Review   (1) Points               SELECT c.cust_id, c.company, s.total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id (+);             SELECT cust_id, company, total_sales   FROM customers, sales   WHERE cust_id = cust_id;             SELECT c.cust_id, c.company, s.total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id;  (*)             SELECT cust_id, company, total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id;                

      Correct        28.  Your have two tables named EMPLOYEES and SALES. You want to identify the sales representatives  who have generated at least $100,000 in revenue.   Which query should you issue?  Mark for Review   (1) Points               SELECT e.fname, e.lname, s.sales   FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue > 100000;             SELECT e.fname, e.lname, s.sales   FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue >= 100000;  (*)             SELECT e.fname, e.lname, s.sales   FROM employees, sales   WHERE e.emp_id = s.emp_id AND revenue >= 100000;             SELECT fname, lname, sales   Q FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue > 100000; 

                     Correct        29.  What happens when you create a Cartesian product?  Mark for Review   (1) Points               All rows from one table are joined to all rows of another table (*)           The table is joined to itself, one column to the next column, exhausting all possibilities           The table is joined to another equal table           All rows that do not match in the WHERE clause are displayed                     Incorrect. Refer to Section       30.  Which statement about the join syntax of a SELECT statement is true?  Mark for Review   (1) Points               The ON keyword must be included.           The JOIN keyword must be included.  

        The FROM clause represents the join criteria.           The WHERE clause represents the join criteria. (*)                     Incorrect. Refer to Section 3        31.  Which statement about outer joins is true?  Mark for Review   (1) Points               The tables must be aliased.           The FULL, RIGHT, or LEFT keyword must be included.           The OR operator cannot be used to link outer join conditions. (*)           Outer joins are always evaluated before other types of joins in the query.                     Correct        32.  Evaluate this SELECT statement:   SELECT p.player_id, m.last_name, m.first_name, t.team_name   FROM player p  

LEFT OUTER JOIN player m ON (p.manager_id = m.player_id)   LEFT OUTER JOIN team t ON (p.team_id = t.team_id);     Which join is evaluated first?    Mark for Review   (1) Points               the self‐join of the player table (*)           the join between the player table and the team table on TEAM_ID           the join between the player table and the team table on MANAGER_ID           the join between the player table and the team table on PLAYER_ID                     Correct       33.  Which two operators can be used in an outer join condition using the outer join operator (+)?  Mark  for Review   (1) Points               AND and = (*)           OR and =      

    BETWEEN...AND... and IN           IN and =                     Incorrect. Refer to Section 3        34.  Which statement about a natural join is true?  Mark for Review   (1) Points               Columns with the same names must have identical data types.           Columns with the same names must have the same precision and datatype. (*)           Columns with the same names must have compatible data types.           Columns with the same names cannot be included in the SELECT list of the query.                     Incorrect. Refer to Section 4        35.  You need to join all the rows in the EMPLOYEE table to all the rows in the EMP_REFERENCE table.  Which type of join should you create?  Mark for Review   (1) Points               An equijoin  

        A cross join (*)           An inner join           A full outer join                     Incorrect. Refer to Section 4       36.  Which of the following best describes a natural join?  Mark for Review   (1) Points               A join between two tables that includes columns that share the same name, datatypes and lengths (*)           A join that produces a Cartesian product           A join between tables where matching fields do not exist           A join that uses only one table                     Correct              

 37.  Which SELECT clause creates an equijoin by specifying a column name common to both tables?   Mark for Review   (1) Points               A HAVING clause           The FROM clause           The SELECT clause           A USING clause (*)                     Correct        38.  Which of the following statements is the simplest description of a nonequijoin?  Mark for Review   (1) Points               A join condition containing something other than an equality operator (*)           A join condition that is not equal to other joins.           A join condition that includes the (+) on the left hand side.           A join that joins a table to itself      

              Incorrect. Refer to Section 4       39.  You created the CUSTOMERS and ORDERS tables by issuing these CREATE TABLE statements in  sequence:   CREATE TABLE customers   (custid varchar2(5),   companyname varchar2(30),   contactname varchar2(30),   address varchar2(30),   city varchar2(20),   state varchar2(30),   phone varchar2(20),   constraint pk_customers_01 primary key (custid));     CREATE TABLE orders   (orderid varchar2(5) constraint pk_orders_01 primary key,   orderdate date,   total number(15),   custid varchar2(5) references customers (custid));     You have been instructed to compile a report to present the information about orders placed by  customers who reside in Nashville . Which query should you issue to achieve the desired results?    Mark for Review   (1) Points          

    SELECT custid, companyname   FROM customers   WHERE city = 'Nashville';              SELECT orderid, orderdate, total   FROM orders o   NATURAL JOIN customers c ON o.custid = c.custid   WHERE city = 'Nashville';              SELECT orderid, orderdate, total   FROM orders o   JOIN customers c ON o.custid = c.custid   WHERE city = 'Nashville';   (*)             SELECT orderid, orderdate, total   FROM orders   WHERE city = 'Nashville';                       Correct   

   40.  Below find the structure of the CUSTOMERS and SALES_ORDER tables:     CUSTOMERS  CUSTOMER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_NAME VARCHAR2 (30)   CONTACT_NAME VARCHAR2 (30)  CONTACT_TITLE VARCHAR2 (20)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (20)  COUNTRY_ID NUMBER Foreign key to COUNTRY_ID column of the COUNTRY table   PHONE VARCHAR2 (20)  FAX VARCHAR2 (20)   CREDIT_LIMIT NUMBER(7,2)      SALES_ORDER  ORDER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_ID NUMBER Foreign key to CUSTOMER_ID column of the CUSTOMER table  ORDER_DT DATE   ORDER_AMT NUMBER (7,2)   SHIP_METHOD VARCHAR2 (5)    

  You need to create a report that displays customers without a sales order. Which statement could you  use?    Mark for Review   (1) Points               SELECT c.customer_name   FROM customers c   WHERE c.customer_id not in (SELECT s.customer_id FROM sales_order s);   (*)             SELECT c.customer_name   FROM customers c, sales_order s   WHERE c.customer_id = s.customer_id(+);              SELECT c.customer_name   FROM customers c, sales_order s   WHERE c.customer_id (+) = s.customer_id;              SELECT c.customer_name   FROM customers c  RIGHT OUTER JOIN sales_order s ON (c.customer_id = s.customer_id);     

                  Incorrect. Refer to Section 4        41.  Which query will retrieve all the rows in the EMPLOYEES table, even if there is no match in the  DEPARTMENTS table?  Mark for Review   (1) Points               SELECT e.last_name, e.department_id, d.department_name   FROM employees e   RIGHT OUTER JOIN departments d ON (e.department_id = d.department_id);              SELECT e.last_name, e.department_id, d.department_name   FROM employees e   NATURAL JOIN departments d;              SELECT e.last_name, e.department_id, d.department_name   FROM employees e  LEFT OUTER JOIN departments d ON (e.department_id = d.department_id);   (*)             SELECT e.last_name, e.department_id, d.department_name   FROM employees e  

JOIN departments d USING (e.department_id = d.department_id);                        Incorrect. Refer to Section 4        42.  Which two sets of join keywords create a join that will include unmatched rows from the first table  specified in the SELECT statement?  Mark for Review   (1) Points               LEFT OUTER JOIN and FULL OUTER JOIN (*)           RIGHT OUTER JOIN and LEFT OUTER JOIN           USING and HAVING           OUTER JOIN and USING                     Incorrect. Refer to Section 4       43.  What should be included in a SELECT statement to return NULL values from all tables?  Mark for  Review   (1) Points               natural joins  

        left outer joins           full outer joins (*)           right outer joins                     Incorrect. Refer to Section 4       44.  If a select list contains both a column as well as a group function then what clause is required?   Mark for Review   (1) Points               having clause           join clause           order by clause           group by clause (*)                     Incorrect. Refer to Section 5       45.  Evaluate this SELECT statement: 

SELECT MAX(salary), dept_id   FROM employee   GROUP BY dept_id;     Which values are displayed?    Mark for Review   (1) Points               The highest salary for all employees.           The highest salary in each department. (*)           The employees with the highest salaries.           The employee with the highest salary for each department.                     Incorrect. Refer to Section 5        46.  Which statement about group functions is true?  Mark for Review   (1) Points               Group functions ignore null values. (*)           Group functions can only be used in a SELECT list.  

        Group functions can be used in a WHERE clause.           A query that includes a group function in the SELECT list must include a GROUP BY clause.                     Incorrect. Refer to Section 5       47.  What is the best explanation as to why this SQL statement will NOT execute?   SELECT department_id "Department", AVG (salary)"Average"   FROM employees   GROUP BY Department;    Mark for Review   (1) Points               Salaries cannot be averaged as not all the numbers will divide evenly.           You cannot use a column alias in the GROUP BY clause. (*)           The GROUP BY clause must have something to GROUP.           The department id is not listed in the departments table.                     Incorrect. Refer to Section 5   

   48.  The AVG, SUM, VARIANCE, and STDDEV functions can be used with which of the following?  Mark  for Review   (1) Points               Only numeric data types (*)           Integers only           Any data type           All except numeric                     Correct        49.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        You need to determine the average payment amount made by each customer in January, February and  March of 2003. Which SELECT statement should you use?    Mark for Review  

(1) Points               SELECT AVG(payment_amount)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '31‐MAR‐2003';   (*)             SELECT AVG(payment_amount)   FROM payment;             SELECT SUM(payment_amount)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' and '31‐MAR‐2003';             SELECT AVG(payment_amount)   FROM payment   WHERE TO_CHAR(payment_date) IN (JAN, FEB, MAR);                        Correct      

50.  You need to calculate the standard deviation for the cost of products produced in the Birmingham  facility. Which group function will you use?  Mark for Review   (1) Points               STDEV           STDDEV (*)           VAR_SAMP           VARIANCE                     Incorrect. Refer to Section 5       51.  The VENDORS table contains these columns:   VENDOR_ID NUMBER Primary Key   NAME VARCHAR2(30)   LOCATION_ID NUMBER   ORDER_DT DATE   ORDER_AMOUNT NUMBER(8,2)     Which two clauses represent valid uses of aggregate functions for this table?    Mark for Review   (1) Points          

   (Choose all correct answers)                FROM MAX(order_dt)           SELECT SUM(order_dt)           SELECT SUM(order_amount) (*)           WHERE MAX(order_dt) = order_dt           SELECT location_id, MIN(AVG(order_amount)) (*)                     Incorrect. Refer to Section 5       52.  Which group function would you use to display the lowest value in the SALES_AMOUNT column?   Mark for Review   (1) Points               AVG           COUNT           MAX           MIN (*)  

                  Incorrect. Refer to Section 5        53.  You need to calculate the average salary of employees in each department. Which group function  will you use?  Mark for Review   (1) Points               AVG (*)           MEAN           MEDIAN           AVERAGE                     Correct        54.  Which group functions below act on character, number and date data types?   (Choose more than one answer)  Mark for Review   (1) Points              (Choose all correct answers)                SUM  

        MAX (*)           MIN (*)           AVG           COUNT (*)                     Correct               55.  The PRODUCTS table contains these columns:  PROD_ID NUMBER(4)   PROD_NAME VARCHAR2(30)  PROD_CAT VARCHAR2(30)  PROD_PRICE NUMBER(3)   PROD_QTY NUMBER(4)    The following statement is issued:     SELECT AVG(prod_price, prod_qty)   FROM products;    

What happens when this statement is issued?    Mark for Review   (1) Points               Both the average price and the average quantity of the products are returned.           Only the average quantity of the products is returned.           The values in the PROD_PRICE column and the PROD_QTY column are averaged together.           An error occurs. (*)                     Incorrect. Refer to Section 5       56.  The STYLES table contains this data:   STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL  85940  11.00    758960  SANDAL  86979     

  You issue this SELECT statement:    SELECT COUNT(category)  FROM styles;     Which value is displayed?    Mark for Review   (1) Points               0           6           7 (*)           The statement will NOT execute successfully.                     Incorrect. Refer to Section 5        57.  Examine the data from the LINE_ITEM table:   LINE_ITEM_ID  ORDER_ID  PRODUCT_ID  PRICE  DISCOUNT    890898  847589  848399  8.99  0.10    768385  862459  849869  5.60  0.05   

867950  985490  945809  5.60    954039  439203  438925  5.25  0.15    543949  349302  453235  4.50        You query the LINE_ITEM table and a value of 5 is returned. Which SQL statement did you execute?    Mark for Review   (1) Points               SELECT COUNT(discount) FROM line_item;           SELECT COUNT(*) FROM line_item; (*)           SELECT SUM(discount) FROM line_item;           SELECT AVG(discount) FROM line_item;                     Incorrect. Refer to Section 5       58.  Group functions can avoid computations involving duplicate values by including which keyword?   Mark for Review   (1) Points               NULL      

    DISTINCT (*)           SELECT           UNLIKE                     Incorrect. Refer to Section 5               59.  Evaluate this SELECT statement:  SELECT COUNT(*)   FROM products;     Which statement is true?    Mark for Review   (1) Points               The number of rows in the table is displayed. (*)           The number of unique PRODUCT_IDs in the table is displayed.           An error occurs due to an error in the SELECT clause.           An error occurs because no WHERE clause is included in the SELECT statement.  

                  Incorrect. Refer to Section 5       60.  The PLAYERS table contains these columns:   PLAYER_ID NUMBER PK   PLAYER_NAME VARCHAR2 (30)   TEAM_ID NUMBER   HIRE_DATE DATE   SALARY NUMBER (8,2)     Which two clauses represent valid uses of aggregate functions? (Choose three.)    Mark for Review   (1) Points              (Choose all correct answers)                ORDER BY AVG(salary)           GROUP BY MAX(salary) (*)           SELECT AVG(NVL(salary, 0)) (*)           HAVING MAX(salary) > 10000 (*)      

    WHERE hire_date > AVG(hire_date)                     Incorrect. Refer to Section 6       61.  The MANUFACTURER table contains these columns:   MANUFACTURER_ID NUMBER   MANUFACTURER_NAME VARCHAR2(30)   TYPE VARCHAR2(25)   LOCATION_ID NUMBER    You need to display the number of unique types of manufacturers at each location. Which SELECT  statement should you use?    Mark for Review   (1) Points               SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer   GROUP BY location_id;  (*)             SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer;        

    SELECT location_id, COUNT(type)   FROM manufacturer   GROUP BY location_id;             SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer   GROUP BY type;                       Correct        62.  What is the correct order of clauses in a SELECT statement?  Mark for Review   (1) Points               SELECT   FROM   WHERE   ORDER BY   HAVING             SELECT   FROM  

HAVING   GROUP BY   WHERE  ORDER BY              SELECT   FROM   WHERE  GROUP BY   HAVING   ORDER BY  (*)             SELECT   FROM   WHERE   HAVING   ORDER BY   GROUP BY                       Correct   

    63.  The PRODUCTS table contains these columns:   PROD_ID NUMBER(4)   PROD_NAME VARCHAR(20)   PROD_CAT VARCHAR2(15)   PROD_PRICE NUMBER(5)  PROD_QTY NUMBER(4)     You need to identify the minimum product price in each product category.  Which statement could you use to accomplish this task?   Mark for Review   (1) Points               SELECT prod_cat, MIN (prod_price)   FROM products  GROUP BY prod_price;             SELECT prod_cat, MIN (prod_price)   FROM products  GROUP BY prod_cat;  (*)             SELECT MIN (prod_price), prod_cat 

FROM products   GROUP BY MIN (prod_price), prod_cat;             SELECT prod_price, MIN (prod_cat)  FROM products  GROUP BY prod_cat;                       Correct        64.  The EMPLOYEES table contains these columns:   ID_NUMBER NUMBER Primary Key   NAME VARCHAR2 (30)   DEPARTMENT_ID NUMBER   SALARY NUMBER (7,2)   HIRE_DATE DATE    Evaluate this SQL statement:     SELECT id_number, name, department_id, SUM(salary)   FROM employees   WHERE salary > 25000   GROUP BY department_id, id_number, name  

ORDER BY hire_date;     Why will this statement cause an error?    Mark for Review   (1) Points               The HAVING clause is missing.           The WHERE clause contains a syntax error.           The SALARY column is NOT included in the GROUP BY clause.           The HIRE_DATE column is NOT included in the GROUP BY clause. (*)                     Correct        65.  Evaluate this SELECT statement:  SELECT SUM(salary), dept_id, department_name   FROM employee   WHERE dept_id = 1   GROUP BY department;     Which clause of the SELECT statement contains a syntax error?   Mark for Review  

(1) Points               SELECT           FROM           WHERE           GROUP BY (*)                     Incorrect. Refer to Section       66.  The PLAYERS and TEAMS tables contain these columns:   PLAYERS   PLAYER_ID NUMBER NOT NULL, Primary Key   LAST_NAME VARCHAR2 (30) NOT NULL   FIRST_NAME VARCHAR2 (25) NOT NULL  TEAM_ID NUMBER   POSITION VARCHAR2 (25)    TEAMS   TEAM_ID NUMBER NOT NULL, Primary Key   TEAM_NAME VARCHAR2 (25)    

You need to create a report that lists the names of each team with more than five pitchers.   Which SELECT statement will produce the desired result?   Mark for Review   (1) Points               SELECT t.team_name, COUNT(p.player_id)  FROM players p, teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'PITCHER'   GROUP BY t.team_name;             SELECT t.team_name, COUNT(p.player_id)   FROM players JOIN teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'PITCHER' HAVING COUNT(p.player_id) > 5;             SELECT t.team_name, COUNT(p.player_id)   FROM players p, teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'PITCHER'   GROUP BY t.team_name HAVING COUNT(p.player_id) > 5;              SELECT t.team_name, COUNT(p.player_id)   FROM players p JOIN teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'PITCHER'  

GROUP BY t.team_name HAVING COUNT(p.player_id) > 5;   (*)                       Incorrect. Refer to Section 6        67.  Which statement about the GROUP BY clause is true?  Mark for Review   (1) Points               To exclude rows before dividing them into groups using the GROUP BY clause, you use should a  WHERE clause. (*)           You can use a column alias in a GROUP BY clause.           By default, rows are not sorted when a GROUP BY clause is used.           You must use the HAVING clause with the GROUP BY clause.                     Incorrect. Refer to Section 6       68.  Using a subquery in which clause will return a syntax error?  Mark for Review   (1) Points               WHERE  

        FROM           HAVING           There are no places you cannot place subqueries. (*)                     Incorrect. Refer to Section 6        69.  Which of the following is TRUE regarding the order of subquery execution?  Mark for Review   (1) Points               The outer query is executed first           The subquery executes once after the main query           The subquery executes once before the main query (*)           The result of the main query is used with the subquery                     Correct        70.  The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns:  

TEACHERS  TEACHER_ID NUMBER(5) Primary Key  NAME VARCHAR2 (25)   SUBJECT_ID NUMBER(5)       CLASS_ASSIGNMENTS  CLASS_ID NUMBER (5) Primary Key   TEACHER_ID NUMBER (5)  START_DATE DATE  MAX_CAPACITY NUMBER (3)    All MAX_CAPACITY values are greater than 10. Which two SQL statements correctly use subqueries?  (Choose two.)    Mark for Review   (1) Points              (Choose all correct answers)                SELECT *   FROM class_assignments   WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments);  (*)             SELECT *  

FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE class_id = 45963);   (*)             SELECT *   FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);              SELECT *   FROM teachers   WHERE teacher_id LIKE (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);              SELECT *   FROM class_assignments   WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments GROUP BY teacher_id);                        Incorrect. Refer to Section 6                71.  The EMPLOYEES and ORDERS tables contain these columns:  

EMPLOYEES  EMP_ID NUMBER(10) NOT NULL PRIMARY KEY   FNAME VARCHAR2(30)  LNAME VARCHAR2(30)  ADDRESS VARCHAR2(25)  CITY VARCHAR2(20)  STATE VARCHAR2(2)   ZIP NUMBER(9)  TELEPHONE NUMBER(10)     ORDERS   ORDER_ID NUMBER(10) NOT NULL PRIMARY KEY   EMP_ID NUMBER(10) NOT NULL FOREIGN KEY  ORDER_DATE DATE  TOTAL NUMBER(10)     Which SELECT statement will return all orders generated by a sales representative named Franklin  during the year 2001?    Mark for Review   (1) Points               SELECT order_id, total   FROM ORDERS (SELECT emp_id FROM employees WHERE lname = 'Franklin')   WHERE order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01';         

    SELECT (SELECT emp_id FROM employees WHERE lname = 'Franklin') AND order_id, total   FROM ORDERS   WHERE order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01';              SELECT order_id, emp_id, total   FROM ORDERS   WHERE order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01' AND emp_id = 'Franklin';              SELECT order_id, total   FROM ORDERS  WHERE emp_id = (SELECT emp_id FROM employees WHERE lname = 'Franklin')   AND order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01';   (*)                       Correct       72.  Examine the structures of the CUSTOMER and ORDER_HISTORY tables:   CUSTOMER   CUSTOMER_ID NUMBER(5)  NAME VARCHAR2(25)  CREDIT_LIMIT NUMBER(8,2) 

OPEN_DATE DATE       ORDER_HISTORY  ORDER_ID NUMBER(5)  CUSTOMER_ID NUMBER(5)  ORDER_DATE DATE  TOTAL NUMBER(8,2)     Which of the following scenarios would require a subquery to return the desired results?    Mark for Review   (1) Points               You need to display the date each customer account was opened.           You need to display each date that a customer placed an order.           You need to display all the orders that were placed on a certain date.           You need to display all the orders that were placed on the same day as order number 25950. (*)                     Incorrect. Refer to Section 6      

73.  You need to produce a report that contains all employee‐related information for those employees  who have Brad Carter as a supervisor. However, you are not sure which supervisor ID belongs to Brad  Carter. Which query should you issue to accomplish this task?  Mark for Review   (1) Points               SELECT *   FROM employees   WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');              SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');              SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT employee_id        FROM supervisors  

     WHERE last_name = 'Carter');             SELECT *   FROM employees  WHERE supervisor_id =        (SELECT employee_id        FROM employees        WHERE last_name = 'Carter');   (*)                       Incorrect. Refer to Section 6                74.  If a single‐row subquery returns a null value and uses the equality comparison operator, what will  the outer query return?  Mark for Review   (1) Points               no rows (*)           all the rows in the table           a null value      

    an error                     Incorrect. Refer to Section 6        75.  Which best describes a single‐row subquery?  Mark for Review   (1) Points               a query that returns only one row from the inner SELECT statement (*)           a query that returns one or more rows from the inner SELECT statement           a query that returns only one column value from the inner SELECT statement           a query that returns one or more column values from the inner SELECT statement                     Incorrect. Refer to Section 6        76.  Which best describes a multiple‐row subquery?  Mark for Review   (1) Points               A query that returns only one row from the inner SELECT statement           A query that returns one or more rows from the inner SELECT statement (*)  

        A query that returns only one column value from the inner SELECT statement           A query that returns one or more column values from the inner SELECT statement                     Incorrect. Refer to Section 6        77.  Which of the following statements contains a comparison operator that is used to restrict rows  based on a list of values returned from an inner query?  Mark for Review   (1) Points               SELECT description   FROM d_types   WHERE code IN (SELECT type_code FROM d_songs);             SELECT description  FROM d_types  WHERE code = ANY (SELECT type_code FROM d_songs);             SELECT description   FROM d_types   WHERE code <> ALL (SELECT type_code FROM d_songs);    

        All of the above. (*)                     Incorrect. Refer to Section 6        78.  Evaluate this SELECT statement:  SELECT customer_id, name   FROM customer   WHERE customer_id IN      (SELECT customer_id       FROM customer       WHERE state_id = 'GA' AND credit_limit > 500.00);     What would happen if the inner query returned null?    Mark for Review   (1) Points               An error would be returned.           No rows would be returned by the outer query. (*)           All the rows in the table would be selected.           Only the rows with CUSTOMER_ID values equal to null would be selected.  

                  Incorrect. Refer to Section 6       79.  You need to create a SELECT statement that contains a multiple‐row subquery, which comparison  operator(s) can you use?  Mark for Review   (1) Points               IN, ANY, and ALL (*)           LIKE           BETWEEN...AND...           =, <, and >                     Incorrect. Refer to Section 6       80.  Which of the following best describes the meaning of the ANY operator?  Mark for Review   (1) Points               Equal to any member in the list           Compare value to each value returned by the subquery (*)      

    Compare value to every value returned by the subquery           Equal to each value in the list                     Correct        81.  Which operator or keyword cannot be used with a multiple‐row subquery?  Mark for Review   (1) Points               ALL           ANY           = (*)           >                     Incorrect. Refer        82.  What would happen if you attempted to use a single‐row operator with a multiple‐row subquery?   Mark for Review   (1) Points               An error would be returned. (*)  

        No rows will be selected.           All the rows will be selected.           The data returned may or may not be correct.                     Incorrect. Refer to Section 6       83.  Evaluate this SQL statement:   SELECT employee_id, last_name, salary   FROM employees  WHERE department_id IN      (SELECT department_id      FROM employees      WHERE salary > 30000 AND salary < 50000);    Which values will be displayed?    Mark for Review   (1) Points               Only employees who earn more than $30,000.           Only employees who earn less than $50,000.  

        All employees who work in a department with employees who earn more than $30,000 and more  than $50,000.           All employees who work in a department with employees who earn more than $30,000, but less than  $50,000. (*)                     Correct       84.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        This statement fails when executed:     SELECT customer_id, payment_type   FROM payment   WHERE payment_id =      (SELECT payment_id       FROM payment       WHERE payment_amount = 596.00 OR payment_date = '20‐MAR‐2003');    

Which change could correct the problem?    Mark for Review   (1) Points               Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)           Remove the quotes surrounding the date value in the OR clause.           Remove the parentheses surrounding the nested SELECT statement.           Change the comparison operator to a single‐row operator.                     Incorrect. Refer to Section 6        85.  What is wrong with the following query?   SELECT employee_id, last_name   FROM employees   WHERE salary =     (SELECT MIN(salary) FROM employees GROUP BY department_id);     Mark for Review   (1) Points               Single rows contain multiple values and a logical operator is used.  

        Subquery returns more than one row and single row comparison operator is used. (*)           Subquery references the wrong table in the WHERE clause.           Nothing, it will run without problems.                     Incorrect. Refer to Section 6                86.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        This statement fails when executed:     SELECT payment_date, customer_id, payment_amount   FROM payment   WHERE payment_id =      (SELECT payment_id       FROM payment  

    WHERE payment_date >= '05‐JAN‐2002' OR payment_amount > 500.00);     Which change could correct the problem?    Mark for Review   (1) Points               Remove the subquery WHERE clause.           Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)           Include the PAYMENT_ID column in the select list of the outer query.           Remove the single quotes around the date value in the inner query WHERE clause.                     Incorrect. Refer to Section 6        87.  Assume all the column names are correct. The following SQL statement will execute which of the  following?  INSERT INTO departments (department_id, department_name, manager_id, location_id)   VALUES (70, 'Public Relations', 100, 1700);     Mark for Review   (1) Points               100 will be inserted into the department_id column  

        1700 will be inserted into the manager_id column           70 will be inserted into the department_id column (*)           'Public Relations' will be inserted into the manager_name column                     Incorrect. Refer to Section 7        88.  You need to add a row to an existing table. Which DML statement should you use?  Mark for  Review   (1) Points               UPDATE           INSERT (*)           DELETE           CREATE                     Incorrect. Refer        89.  The PRODUCTS table contains these columns: 

PRODUCT_ID NUMBER NOT NULL   PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER NOT NULL  LIST_PRICE NUMBER (7,2)  COST NUMBER (5,2)  QTY_IN_STOCK NUMBER(4)  LAST_ORDER_DT DATE NOT NULL DEFAULT SYSDATE       Which INSERT statement will execute successfully?    Mark for Review   (1) Points               INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, 700); (*)           INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, SYSDATE);           INSERT INTO products(product_id, product_name) VALUES (2958, 'Cable');           INSERT INTO products(product_id, product_name, supplier_id VALUES (2958, 'Cable', 8690, SYSDATE);                     Incorrect. Refer to Section 7        90.  You need to copy rows from the EMPLOYEE table to the EMPLOYEE_HIST table. What could you use  in the INSERT statement to accomplish this task?  Mark for Review  

(1) Points               an ON clause           a SET clause           a subquery (*)           a function                     Correct               91.  One of the sales representatives, Janet Roper, has informed you that she was recently married, and  she has requested that you update her name in the employee database. Her new last name is Cooper.  Janet is the only person with the last name of Roper that is employed by the company. The EMPLOYEES  table contains these columns and all data is stored in lowercase:   EMP_ID NUMBER(10) PRIMARY KEY   LNAME VARCHAR2(20)  FNAME VARCHAR2(20)  DEPT VARCHAR2 (20)  HIRE_DATE DATE  SALARY NUMBER(10)    Which UPDATE statement will accomplish your objective?   Mark for Review  

(1) Points               UPDATE employees  SET lname = 'cooper'   WHERE lname = 'roper';   (*)             UPDATE employees lname = 'cooper'   WHERE lname = 'roper';             UPDATE employees  SET lname = 'roper'   WHERE lname = 'cooper';             UPDATE employees  SET cooper = 'lname'   WHERE lname = 'roper';                       Incorrect. Refer to Section 7      

92.  You need to remove a row from the EMPLOYEE table. Which statement would you use?  Mark for  Review   (1) Points               UPDATE with a WHERE clause           INSERT with a WHERE clause           DELETE with a WHERE clause (*)           MERGE with a WHERE clause                     Correct        93.  Examine the structures of the PLAYERS, MANAGERS, and TEAMS tables:  PLAYERS  PLAYER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (30)  FIRST_NAME VARCHAR2 (25)  TEAM_ID NUMBER  MGR_ID NUMBER  SIGNING_BONUS NUMBER(9,2)  SALARY NUMBER(9,2)    MANAGERS 

MANAGER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (20)  FIRST_NAME VARCHAR2 (20)  TEAM_ID NUMBER    TEAMS  TEAM_ID NUMBER Primary Key  TEAM_NAME VARCHAR2 (20)  OWNER_LAST_NAME VARCHAR2 (20)  OWNER_FIRST_NAME VARCHAR2 (20)    Which situation would require a subquery to return the desired result?    Mark for Review   (1) Points               To display the names each player on the Lions team           To display the maximum and minimum player salary for each team           To display the names of the managers for all the teams owned by a given owner (*)           To display each player, their manager, and their team name for all teams with a id value greater than  5000                     Correct   

    94.  The EMPLOYEES table contains the following columns:   EMP_ID NUMBER(10) PRIMARY KEY   LNAME VARCHAR2(20)   FNAME VARCHAR2(20)  DEPT VARCHAR2(20)  HIRE_DATE DATE   SALARY NUMBER(9,2)   BONUS NUMBER(9,2)     You want to execute one DML statement to change the salary of all employees in department 10 to  equal the new salary of employee number 89898. Currently, all employees in department 10 have the  same salary value. Which statement should you execute?    Mark for Review   (1) Points               UPDATE employee   SET salary = SELECT salary   FROM employee   WHERE emp_id = 89898;             UPDATE employee   SET salary = (SELECT salary FROM employee WHERE emp_id = 89898);        

    UPDATE employee  SET salary = (SELECT salary FROM employee WHERE emp_id = 89898)   WHERE dept = 10;   (*)             UPDATE employee   SET salary = (SELECT salary FROM employee WHERE emp_id = 89898 AND dept = 10);                       Incorrect. Refer to Section 7        95.  Evaluate this statement: DELETE FROM customer; Which statement is true?  Mark for Review   (1) Points               The statement deletes all the rows from the CUSTOMER table. (*)           The statement deletes the CUSTOMER column.           The statement deletes the first row in the CUSTOMERS table.           The statement removes the structure of the CUSTOMER table from the database.              

      Incorrect. Refer to Section 7       96.  When the WHERE clause is missing in a DELETE statement, what is the result?  Mark for Review   (1) Points               All rows are deleted from the table. (*)           The table is removed from the database.           An error message is displayed indicating incorrect syntax.           Nothing. The statement will not execute.                     Correct                97.  The PLAYERS table contains these columns:  PLAYER_ID NUMBER NOT NULL  PLAYER_LNAME VARCHAR2(20) NOT NULL  PLAYER_FNAME VARCHAR2(10) NOT NULL   TEAM_ID NUMBER   SALARY NUMBER(9,2)     You need to increase the salary of each player for all players on the Tiger team by 12.5 percent. The  TEAM_ID value for the Tiger team is 5960. Which statement should you use?  

 Mark for Review   (1) Points               UPDATE players (salary) SET salary = salary * 1.125;           UPDATE players SET salary = salary * .125 WHERE team_id = 5960;           UPDATE players SET salary = salary * 1.125 WHERE team_id = 5960; (*)           UPDATE players (salary) VALUES(salary * 1.125) WHERE team_id = 5960;                     Correct        98.  You need to delete a record in the EMPLOYEES table for Tim Jones, whose unique employee  identification number is 348. The EMPLOYEES table contains these columns:  ID_NUM NUMBER(5) PRIMARY KEY  LNAME VARCHAR2(20)  FNAME VARCHAR2(20)  ADDRESS VARCHAR2(30)  PHONE NUMBER(10)    Which DELETE statement will delete the appropriate record without deleting any additional records?    Mark for Review   (1) Points          

    DELETE FROM employees WHERE id_num = 348; (*)           DELETE FROM employees WHERE lname = jones;           DELETE * FROM employees WHERE id_num = 348;           DELETE 'jones' FROM employees;                     Correct       99.  You need to update the expiration date of products manufactured before June 30th . In which  clause of the UPDATE statement will you specify this condition?  Mark for Review   (1) Points               the ON clause           the WHERE clause (*)           the SET clause           the USING clause                     Correct      

 100.  You need to update both the DEPARTMENT_ID and LOCATION_ID columns in the EMPLOYEE table  using one UPDATE statement. Which clause should you include in the UPDATE statement to update  multiple columns?  Mark for Review   (1) Points               the USING clause           the ON clause           the WHERE clause           the SET clause (*)                     Correct               Section 1 Lesson 1    (Answer all questions in this section)             1.  Which three statements about functions are true? (Choose three.)  Mark for Review   (1) Points              (Choose all correct answers)   

            The SYSDATE function returns the Oracle Server date and time. (*)           The ROUND number function rounds a value to a specified decimal place or the nearest whole  number. (*)           The CONCAT function can only be used on character strings, not on numbers.           The SUBSTR character function returns a portion of a string beginning at a defined character position  to a specified length. (*)                     Correct                  2.  The STYLES table contains this data:    STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL 85940  11.00    758960  SANDAL  86979 12.00     

  You query the database and return the value 79. Which script did you use?    Mark for Review   (1) Points               SELECT INSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;              SELECT INSTR(category, ‐2,2)   FROM styles   WHERE style_id = 895840;              SELECT SUBSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;             SELECT SUBSTR(category, ‐2,2)   FROM styles   WHERE style_id = 758960;  (*)    

                  Correct                  3.  You need to display the number of characters in each customer's last name. Which function should  you use?  Mark for Review   (1) Points               LENGTH (*)           LPAD           COUNT           SUBSTR                     Correct                  4.  You need to return a portion of each employee's last name, beginning with the first character up to  the fifth character. Which character function should you use?  Mark for Review   (1) Points               INSTR  

        TRUNC           SUBSTR (*)           CONCAT                     Correct                  5.  Which functions can be used to manipulate character, number, and date column values?  Mark for  Review   (1) Points               CONCAT, RPAD, and TRIM (*)           UPPER, LOWER, and INITCAP           ROUND, TRUNC, and MOD           ROUND, TRUNC, and ADD_MONTHS                     Incorrect. Refer to Section 1       

          6.  You query the database with this SQL statement:     SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID"  FROM employee;      In which order are the functions evaluated?    Mark for Review   (1) Points               LOWER, SUBSTR, CONCAT           LOWER, CONCAT, SUBSTR           SUBSTR, CONCAT, LOWER           CONCAT, SUBSTR, LOWER (*)                     Correct                  7.  You query the database with this SQL statement:    

SELECT CONCAT(last_name, (SUBSTR(LOWER(first_name), 4))) "Default Password"   FROM employees;       Which function will be evaluated first?    Mark for Review   (1) Points               CONCAT           SUBSTR           LOWER (*)           All three will be evaluated simultaneously.                     Correct                            Section 1 Lesson 2    (Answer all questions in this section)          

  8.  Evaluate this function: MOD (25, 2) Which value is returned?  Mark for Review   (1) Points               1 (*)           2           25           0                     Correct                  9.  Which comparison operator retrieves a list of values?  Mark for Review   (1) Points               IN (*)           LIKE           BETWEEN...IN...           IS NULL  

                  Correct                  10.  Which script displays '01‐MAY‐04' when the HIRE_DATE value is '20‐MAY‐04'?  Mark for Review   (1) Points               SELECT TRUNC(hire_date, 'MONTH')   FROM employees;  (*)             SELECT ROUND(hire_date, 'MONTH')   FROM employees;             SELECT ROUND(hire_date, 'MON')   FROM employees;             SELECT TRUNC(hire_date, 'MI')   FROM employees;        

              Correct                  Page 1 of 10                    Section 1 Lesson 3    (Answer all questions in this section)             11.  Which SELECT statement will NOT return a date value?  Mark for Review   (1) Points               SELECT (30 + hire_date) + 1440/24   FROM employees;             SELECT (SYSDATE ‐ hire_date) + 10*8   FROM employees;  (*)    

        SELECT SYSDATE ‐ TO_DATE('25‐JUN‐02') + hire_date   FROM employees;             SELECT (hire_date ‐ SYSDATE) + TO_DATE('25‐JUN‐02')   FROM employees;                       Incorrect. Refer to Section 1                  12.  You need to display the number of months between today's date and each employee's hiredate.  Which function should you use?  Mark for Review   (1) Points               ROUND           BETWEEN           ADD_MONTHS           MONTHS_BETWEEN (*)              

      Correct                  13.  You want to create a report that displays all orders and their amounts that were placed during the  month of January. You want the orders with the highest amounts to appear first. Which query should  you issue?  Mark for Review   (1) Points               SELECT orderid, total   FROM orders   WHERE order_date LIKE '01‐jan‐02' AND '31‐jan‐02'   ORDER BY total DESC;             SELECT orderid, total   FROM orders   WHERE order_date IN ( 01‐jan‐02 , 31‐jan‐02 )   ORDER BY total;             SELECT orderid, total   FROM orders   WHERE order_date BETWEEN '01‐jan‐02' AND '31‐jan‐02'   ORDER BY total DESC;  (*)    

        SELECT orderid, total   FROM orders   WHERE order_date BETWEEN '31‐jan‐02' AND '01‐jan‐02'   ORDER BY total DESC;                       Correct                  14.  Which function would you use to return the current database server date and time?  Mark for  Review   (1) Points               DATE           SYSDATE (*)           DATETIME           CURRENTDATE                     Correct       

          15.  The EMPLOYEES table contains these columns:     LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   HIRE_DATE DATE  EVAL_MONTHS NUMBER(3)       Evaluate this SELECT statement:       SELECT hire_date + eval_months   FROM employees;     The values returned by this SELECT statement will be of which data type?    Mark for Review   (1) Points               DATE (*)           NUMBER           DATETIME      

    INTEGER                     Correct                            Section 2 Lesson 1    (Answer all questions in this section)             16.  All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a  report that displays each employee's name and salary. Each employee's salary must be displayed in the  following format: $000,000.00. Which function should you include in a SELECT statement to achieve the  desired result?  Mark for Review   (1) Points               TO_CHAR (*)           TO_DATE           TO_NUMBER           CHARTOROWID                     Correct   

              17.  If you use the RR format when writing a query using the date 27‐OCT‐17 and the year is 2001, what  year would be the result?  Mark for Review   (1) Points               2001           1901           2017 (*)           1917                     Correct                  18.  Which best describes the TO_CHAR function?  Mark for Review   (1) Points               The TO_CHAR function can be used to specify meaningful column names in an SQL statement's result  set.           The TO_CHAR function can be used to remove text from column data that will be returned by the  database.      

    The TO_CHAR function can be used to display dates and numbers according to formatting conventions  that are supported by Oracle. (*)           The TO_CHAR function can only be used on DATE columns.                     Incorrect. Refer to Section 2                  19.  Which statement concerning single row functions is true?  Mark for Review   (1) Points               Single row functions can accept only one argument, but can return multiple values.           Single row functions cannot modify a data type.           Single row functions can be nested. (*)           Single row functions return one or more results per row.                     Incorrect. Refer to Section 2                  20.  Which three statements concerning explicit data type conversions are true? (Choose three.)  Mark  for Review  

(1) Points              (Choose all correct answers)                Use the TO_NUMBER function to convert a number to a character string.           Use the TO_DATE function to convert a character string to a date value. (*)           Use the TO_NUMBER function to convert a character string of digits to a number. (*)           Use the TO_DATE function to convert a date value to character string or number.           Use the TO_CHAR function to convert a number or date value to character string. (*)                     Correct                   Page 2 of 10       Section 2 Lesson 1    (Answer all questions in this section)             21.  The EMPLOYEES table contains these columns:  

  EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2 (25)   FIRST_NAME VARCHAR2 (25)   HIRE_DATE DATE       You need to display HIRE_DATE values in this format:       January 28, 2000     Which SELECT statement could you use?    Mark for Review   (1) Points               SELECT TO_CHAR(hire_date, Month DD, YYYY)  FROM employees;              SELECT TO_CHAR(hire_date, 'Month DD, YYYY')   FROM employees;  (*)        

    SELECT hire_date(TO_CHAR 'Month DD', ' YYYY')  FROM employees;             SELECT TO_CHAR(hire_date, 'Month DD', ' YYYY')   FROM employees;                       Incorrect. Refer to Section 2                            Section 2 Lesson 2    (Answer all questions in this section)             22.  Which statement about group functions is true?  Mark for Review   (1) Points               NVL and NVL2, but not COALESCE, can be used with group functions to replace null values.           NVL and COALESCE, but not NVL2, can be used with group functions to replace null values.           NVL, NVL2, and COALESCE can be used with group functions to replace null values. (*)  

        COALESCE, but not NVL and NVL2, can be used with group functions to replace null values.                     Correct                  23.  Which of the following General Functions will return the first non‐null expression in the expression  list?  Mark for Review   (1) Points               NVL           NVL2           NULLIF           COALESCE (*)                     Incorrect. Refer to Section 2                  24.  When executed, which statement displays a zero if the TUITION_BALANCE value is zero and the  HOUSING_BALANCE value is null?  Mark for Review   (1) Points  

            SELECT NVL (tuition_balance + housing_balance, 0) "Balance Due"   FROM student_accounts;   (*)             SELECT NVL(tuition_balance, 0), NVL (housing_balance), tuition_balance + housing_balance "Balance  Due"   FROM student_accounts;             SELECT tuition_balance + housing_balance   FROM student_accounts;             SELECT TO_NUMBER(tuition_balance, 0), TO_NUMBER (housing_balance, 0), tutition_balance +  housing_balance "Balance Due"   FROM student_accounts;                       Correct                          

 Section 3 Lesson 2    (Answer all questions in this section)             25.  Evaluate this SQL statement:   SELECT e.employee_id, e.last_name, e.first_name, d.department_name   FROM employees e, departments d   WHERE e.department_id = d.department_id AND employees.department_id > 5000   ORDER BY 4;     Which clause contains a syntax error?     Mark for Review   (1) Points               SELECT e.employee_id, e.last_name, e.first_name, d.department_name           FROM employees e, departments d           WHERE e.department_id = d.department_id           AND employees.department_id > 5000 (*)           ORDER BY 4;              

      Incorrect. Refer to Section 3                  26.  What is the minimum number of join conditions required to join 5 tables together?  Mark for  Review   (1) Points               3           4 (*)           5           One more than the number of tables                     Incorrect. Refer to Section 3                  27.  You need to create a report that lists all employees in department 10 (Sales) whose salary is not  equal to $25,000 per year. Which query should you issue to accomplish this task?  Mark for Review   (1) Points               SELECT last_name, first_name, salary   FROM employees   WHERE salary > 25000 AND department_id = 10; 

           SELECT last_name, first_name, salary   FROM employees   WHERE salary = 25000 AND department_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary <= 25000 AND department_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary != 25000 AND department_id = 10;  (*)                       Correct                  28.  Which statement about the join syntax of an Oracle Proprietary join syntax SELECT statement is  true?  Mark for Review   (1) Points          

    The ON keyword must be included.           The JOIN keyword must be included.           The FROM clause represents the join criteria.           The WHERE clause represents the join criteria. (*)                     Correct                  29.  The CUSTOMERS and SALES tables contain these columns:   CUSTOMERS   CUST_ID NUMBER(10) PRIMARY KEY   COMPANY VARCHAR2(30)   LOCATION VARCHAR2(20)     SALES   SALES_ID NUMBER(5) PRIMARY KEY   CUST_ID NUMBER(10) FOREIGN KEY   TOTAL_SALES NUMBER(30)     Which SELECT statement will return the customer ID, the company and the total sales?   

 Mark for Review   (1) Points               SELECT c.cust_id, c.company, s.total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id (+);             SELECT cust_id, company, total_sales   FROM customers, sales   WHERE cust_id = cust_id;             SELECT c.cust_id, c.company, s.total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id;  (*)             SELECT cust_id, company, total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id;                

      Correct                  30.  Your have two tables named EMPLOYEES and SALES. You want to identify the sales representatives  who have generated $100,000, or more, in revenue.   Which query should you issue?  Mark for Review   (1) Points               SELECT e.first_name, e.last_name, s.sales   FROM employees e, sales s   WHERE e.employee_id = s.employee_id AND revenue > 100000;             SELECT e.first_name, e.last_name, s.sales   FROM employees e, sales s   WHERE e.employee_id = s.employee_id AND revenue >= 100000;  (*)             SELECT e.first_name, e.last_name, s.sales   FROM employees, sales   WHERE e.employee_id = s.employee_id AND revenue >= 100000;             SELECT first_name, last_name, sales   Q FROM employees e, sales s  

WHERE e.employee_id = s.employee_id AND revenue > 100000;                       Correct                   Page 3 of 10       Section 3 Lesson 4    (Answer all questions in this section)             31.  The EMPLOYEE_ID column in the EMPLOYEES table corresponds to the EMPLOYEE_ID column of  the ORDERS table. The EMPLOYEE_ID column in the ORDERS table contains null values for rows that you  need to display.   Which type of join should you use to display the data?  Mark for Review   (1) Points               natural join           self‐join           outer join (*)           equijoin  

                  Correct                  32.  Which statement about outer joins is true?  Mark for Review   (1) Points               The tables must be aliased.           The FULL, RIGHT, or LEFT keyword must be included.           The OR operator cannot be used to link outer join conditions. (*)           Outer joins are always evaluated before other types of joins in the query.                     Correct                  33.  Using Oracle Proprietary join syntax, which two operators can be used in an outer join condition  using the outer join operator (+)?  Mark for Review   (1) Points               AND and = (*)      

    OR and =           BETWEEN...AND... and IN           IN and =                     Correct                            Section 4 Lesson 2    (Answer all questions in this section)             34.  The following SQL statement will produce what output?  SELECT last_name, department_name   FROM employees   CROSS JOIN departments;     Mark for Review   (1) Points               The missing rows from the join condition.      

    The last_name and department name from the employee table.           A Cartesian product between the two tables. (*)           A cross referenced result omitting similar fields from the two tables.                     Correct                  35.  You need to join two tables that have two columns with the same name, datatype and precision.  Which type of join would you create to join the tables on both of the columns?  Mark for Review   (1) Points               Natural join (*)           Cross join           Outer join           Self‐join                     Correct               

  36.  You need to join all the rows in the EMPLOYEES table to all the rows in the EMP_REFERENCES  table. Which type of join should you create?  Mark for Review   (1) Points               An equijoin           A cross join (*)           An inner join           A full outer join                     Correct                            Section 4 Lesson 3    (Answer all questions in this section)             37.  For which condition would you use an equijoin query with the USING keyword?  Mark for Review   (1) Points               You need to perform a join of the CUSTOMER and ORDER tables but limit the number of columns in  the join condition. (*)  

        The ORDER table contains a column that has a referential constraint to a column in the PRODUCT  table.           The CUSTOMER and ORDER tables have no columns with identical names.           The CUSTOMER and ORDER tables have a corresponding column, CUST_ID. The CUST_ID column in the  ORDER table contains null values that need to be displayed.                     Incorrect. Refer to Section 4                  38.  Below find the structure of the CUSTOMERS and SALES_ORDER tables:     CUSTOMERS  CUSTOMER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_NAME VARCHAR2 (30)   CONTACT_NAME VARCHAR2 (30)  CONTACT_TITLE VARCHAR2 (20)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (20)  COUNTRY_ID NUMBER Foreign key to COUNTRY_ID column of the COUNTRY table   PHONE VARCHAR2 (20) 

FAX VARCHAR2 (20)   CREDIT_LIMIT NUMBER(7,2)      SALES_ORDER  ORDER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_ID NUMBER Foreign key to CUSTOMER_ID column of the CUSTOMER table  ORDER_DT DATE   ORDER_AMT NUMBER (7,2)   SHIP_METHOD VARCHAR2 (5)       You need to create a report that displays customers without a sales order. Which statement could you  use?    Mark for Review   (1) Points               SELECT c.customer_name   FROM customers c   WHERE c.customer_id not in (SELECT s.customer_id FROM sales_order s);   (*)             SELECT c.customer_name   FROM customers c, sales_order s   WHERE c.customer_id = s.customer_id(+);  

           SELECT c.customer_name   FROM customers c, sales_order s   WHERE c.customer_id (+) = s.customer_id;              SELECT c.customer_name   FROM customers c  RIGHT OUTER JOIN sales_order s ON (c.customer_id = s.customer_id);                        Correct                  39.  Which of the following statements is the simplest description of a nonequijoin?  Mark for Review   (1) Points               A join condition containing something other than an equality operator (*)           A join condition that is not equal to other joins.           A join condition that includes the (+) on the left hand side.      

    A join that joins a table to itself                     Correct                  40.  You created the CUSTOMERS and ORDERS tables by issuing these CREATE TABLE statements in  sequence:   CREATE TABLE customers   (custid varchar2(5),   companyname varchar2(30),   contactname varchar2(30),   address varchar2(30),   city varchar2(20),   state varchar2(30),   phone varchar2(20),   constraint pk_customers_01 primary key (custid));     CREATE TABLE orders   (orderid varchar2(5) constraint pk_orders_01 primary key,   orderdate date,   total number(15),   custid varchar2(5) references customers (custid));     You have been instructed to compile a report to present the information about orders placed by  customers who reside in Nashville . Which query should you issue to achieve the desired results?  

 Mark for Review   (1) Points               SELECT custid, companyname   FROM customers   WHERE city = 'Nashville';              SELECT orderid, orderdate, total   FROM orders o   NATURAL JOIN customers c ON o.custid = c.custid   WHERE city = 'Nashville';              SELECT orderid, orderdate, total   FROM orders o   JOIN customers c ON o.custid = c.custid   WHERE city = 'Nashville';   (*)             SELECT orderid, orderdate, total   FROM orders   WHERE city = 'Nashville';    

                  Correct                   Page 4 of 10                    Section 4 Lesson 4    (Answer all questions in this section)             41.  You need to display all the rows from both the EMPLOYEES and EMPLOYEE_HISTS tables. Which  type of join would you use?  Mark for Review   (1) Points               a right outer join           a left outer join           a full outer join (*)           an inner join  

                  Correct                  42.  Which query represents the correct syntax for a left outer join?  Mark for Review   (1) Points               SELECT companyname, orderdate, total   FROM customers c   LEFT JOIN orders o  ON c.cust_id = o.cust_id;             SELECT companyname, orderdate, total  FROM customers c  OUTER JOIN orders o  ON c.cust_id = o.cust_id;             SELECT companyname, orderdate, total   FROM customers c   LEFT OUTER JOIN orders o   ON c.cust_id = o.cust_id;   (*) 

           SELECT companyname, orderdate, total   FROM customers c   LEFT OUTER orders o   ON c.cust_id = o.cust_id;                        Correct                  43.  Which type of join returns rows from one table that have NO direct match in the other table?   Mark for Review   (1) Points               equijoin           self join           outer join (*)           natural join                     Correct   

                        Section 5 Lesson 1    (Answer all questions in this section)             44.  Evaluate this SELECT statement:     SELECT MIN(hire_date), department_id   FROM employees   GROUP BY department_id;     Which values are displayed?    Mark for Review   (1) Points               The earliest hire date in each department. (*)           The the earliest hire date in the EMPLOYEES table.           The latest hire date in the EMPLOYEES table.           The hire dates in the EMPLOYEES table that contain NULL values.      

              Correct                  45.  Group functions can be nested to a depth of?  Mark for Review   (1) Points               three           four           two (*)           Group functions cannot be nested.                     Correct                  46.  Which statement about the GROUP BY clause is true?  Mark for Review   (1) Points               The first column listed in the GROUP BY clause is the most major grouping. (*)           The last column listed in the GROUP BY clause is the most major grouping.  

        The GROUP BY clause can contain an aggregate function.           A GROUP BY clause cannot be used without an ORDER BY clause.                     Correct                  47.  If a select list contains both columns as well as groups function then what clause is required?  Mark  for Review   (1) Points               having clause           join clause           order by clause           group by clause (*)                     Correct                  

         Section 5 Lesson 2    (Answer all questions in this section)             48.  The CUSTOMERS table contains these columns:   CUSTOMER_ID NUMBER(9)   FIRST_NAME VARCHAR2(25)   LAST_NAME VARCHAR2(30)   CREDIT_LIMIT NUMBER (7,2)  CATEGORY VARCHAR2(20)     You need to calculate the average credit limit for all the customers in each category. The average should  be calculated based on all the rows in the table excluding any customers who have not yet been  assigned a credit limit value. Which group function should you use to calculate this value?    Mark for Review   (1) Points               AVG (*)           SUM           COUNT           STDDEV              

      Correct                  49.  The EMPLOYEES table contains these columns:   EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2(20)  FIRST_NAME VARCHAR2(20)   SALARY NUMBER(9,2)  HIRE_DATE DATE   BONUS NUMBER(7,2)   COMM_PCT NUMBER(4,2)     Which three functions could be used with the HIRE_DATE, LAST_NAME, or SALARY columns? (Choose  three.)    Mark for Review   (1) Points              (Choose all correct answers)                MAX (*)           SUM           AVG           MIN (*)  

        COUNT (*)                     Incorrect. Refer to Section 5                  50.  You need to compute the total salary for all employees in department 10. Which group function  will you use?  Mark for Review   (1) Points               MAX           SUM (*)           VARIANCE           COUNT                     Correct                   Page 5 of 10      

             Section 5 Lesson 2    (Answer all questions in this section)             51.  Which aggregate function can be used on a column of the DATE data type?  Mark for Review   (1) Points               AVG           MAX (*)           STDDEV           SUM                     Correct                  52.  Which group function would you use to display the lowest value in the SALES_AMOUNT column?   Mark for Review   (1) Points          

    AVG           COUNT           MAX           MIN (*)                     Correct                  53.  Which group functions below act on character, number and date data types?   (Choose three)  Mark for Review   (1) Points              (Choose all correct answers)                SUM           MAX (*)           MIN (*)           AVG  

        COUNT (*)                     Correct                  54.  Group functions return a value for ________________ and ________________ null values in their  computations.  Mark for Review   (1) Points               a row set, ignore (*)           each row, ignore           a row set, include           each row, include                     Incorrect. Refer to Section 5                  55.  Which group function would you use to display the average price of all products in the PRODUCTS  table?  Mark for Review   (1) Points  

            SUM           AVG (*)           COUNT           MAX                     Correct                            Section 5 Lesson 3    (Answer all questions in this section)             56.  Group functions can avoid computations involving duplicate values by including which keyword?   Mark for Review   (1) Points               NULL           DISTINCT (*)      

    SELECT           UNLIKE                     Correct                  57.  The STYLES table contains this data:   STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL  85940  11.00    758960  SANDAL  86979        You issue this SELECT statement:    SELECT COUNT(category)  FROM styles;     Which value is displayed?  

 Mark for Review   (1) Points               0           6           7 (*)           The statement will NOT execute successfully.                     Correct                  58.  Evaluate this SELECT statement:  SELECT COUNT(*)  FROM employees   WHERE salary > 30000;     Which results will the query display?    Mark for Review   (1) Points               The number of employees that have a salary less than 30000.  

        The total of the SALARY column for all employees that have a salary greater than 30000.           The number of rows in the EMPLOYEES table that have a salary greater than 30000. (*)           The query generates an error and returns no results.                     Correct                  59.  Which SELECT statement will calculate the number of rows in the PRODUCTS table?  Mark for  Review   (1) Points               SELECT COUNT(products);           SELECT COUNT FROM products;           SELECT COUNT (*) FROM products; (*)           SELECT ROWCOUNT FROM products;                     Correct       

                    Section 6 Lesson 1    (Answer all questions in this section)             60.  The PLAYERS and TEAMS tables contain these columns:   PLAYERS   PLAYER_ID NUMBER NOT NULL, Primary Key   LAST_NAME VARCHAR2 (30) NOT NULL   FIRST_NAME VARCHAR2 (25) NOT NULL  TEAM_ID NUMBER   POSITION VARCHAR2 (25)    TEAMS   TEAM_ID NUMBER NOT NULL, Primary Key   TEAM_NAME VARCHAR2 (25)     You need to create a report that lists the names of each team with more than three goal keepers.   Which SELECT statement will produce the desired result?   Mark for Review   (1) Points               SELECT t.team_name, COUNT(p.player_id)  FROM players p, teams t ON (p.team_id = t.team_id)  

WHERE UPPER(p.position) = 'GOAL KEEPER'   GROUP BY t.team_name;             SELECT t.team_name, COUNT(p.player_id)   FROM players JOIN teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'GOAL KEEPER' HAVING COUNT(p.player_id) > 3;             SELECT t.team_name, COUNT(p.player_id)   FROM players p, teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'GOAL KEEPER'   GROUP BY t.team_name HAVING COUNT(p.player_id) > 3;              SELECT t.team_name, COUNT(p.player_id)   FROM players p JOIN teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'GOAL KEEPER'   GROUP BY t.team_name HAVING COUNT(p.player_id) > 3;   (*)                       Correct       

           Page 6 of 10                  Section 6 Lesson 1    (Answer all questions in this section)             61.  Evaluate this SELECT statement:   SELECT COUNT(emp_id), mgr_id, dept_id   FROM employee  WHERE status = 'I'   GROUP BY dept_id   HAVING salary > 30000   ORDER BY 2;     Why does this statement return a syntax error?   Mark for Review   (1) Points               MGR_ID must be included in the GROUP BY clause. (*)           The HAVING clause must specify an aggregate function.  

        A single query cannot contain a WHERE clause and a HAVING clause.           The ORDER BY clause must specify a column name in the EMPLOYEE table.                     Correct                  62.  Evaluate this SELECT statement:   SELECT SUM(salary), department_id, manager_id  FROM employees   GROUP BY department_id, manager_id;     Which SELECT statement clause allows you to restrict the rows returned, based on a group function?    Mark for Review   (1) Points               HAVING SUM(salary) > 100000 (*)           WHERE SUM(salary) > 100000           WHERE salary > 100000           HAVING salary > 100000  

                  Incorrect. Refer to Section 6                  63.  The PRODUCTS table contains these columns:   PROD_ID NUMBER(4)   PROD_NAME VARCHAR(20)   PROD_CAT VARCHAR2(15)   PROD_PRICE NUMBER(5)  PROD_QTY NUMBER(4)     You need to identify the minimum product price in each product category.  Which statement could you use to accomplish this task?   Mark for Review   (1) Points               SELECT prod_cat, MIN (prod_price)   FROM products  GROUP BY prod_price;             SELECT prod_cat, MIN (prod_price)   FROM products  GROUP BY prod_cat; 

(*)             SELECT MIN (prod_price), prod_cat  FROM products   GROUP BY MIN (prod_price), prod_cat;             SELECT prod_price, MIN (prod_cat)  FROM products  GROUP BY prod_cat;                       Correct                  64.  The EMPLOYEES table contains these columns:   ID_NUMBER NUMBER Primary Key   NAME VARCHAR2 (30)   DEPARTMENT_ID NUMBER   SALARY NUMBER (7,2)   HIRE_DATE DATE    Evaluate this SQL statement:  

  SELECT id_number, name, hire_date, department_id, SUM(salary)   FROM employees   WHERE salary > 25000   GROUP BY department_id, id_number, name   ORDER BY hire_date;     Why will this statement cause an error?    Mark for Review   (1) Points               The HAVING clause is missing.           The WHERE clause contains a syntax error.           The SALARY column is NOT included in the GROUP BY clause.           The HIRE_DATE column is NOT included in the GROUP BY clause. (*)                     Correct                  65.  You want to write a report that returns the average salary of all employees in the company, sorted  by departments. The EMPLOYEES table contains the following columns:   EMPLOYEES:  

EMPLOYEE_ID NUMBER(10) PRIMARY KEY   LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   DEPARTMENT VARCHAR2(20)   HIRE_DATE DATE  SALARY NUMBER(10)     Which SELECT statement will return the information that you require?    Mark for Review   (1) Points               SELECT salary (AVG)  FROM employees   GROUP BY department;             SELECT AVG (salary)   FROM employees  GROUP BY department;  (*)             SELECT AVG (salary)   FROM employees   BY department; 

           SELECT AVG salary   FROM employees  BY department;                       Correct                  66.  Evaluate this statement:   SELECT department_id, AVG(salary)   FROM employees   WHERE job_id <> 69879   GROUP BY job_id, department_id   HAVING AVG(salary) > 35000   ORDER BY department_id;     Which clauses restricts the result? Choose two.   Mark for Review   (1) Points              (Choose all correct answers)           

    SELECT department_id, AVG(salary)           WHERE job_id <> 69879 (*)           GROUP BY job_id, department_id           HAVING AVG(salary) > 35000 (*)                     Correct                  67.  Evaluate this SELECT statement:  SELECT SUM(salary), department_id, department_name   FROM employees   WHERE department_id = 1   GROUP BY department;     Which clause of the SELECT statement contains a syntax error?   Mark for Review   (1) Points               SELECT           FROM  

        WHERE           GROUP BY (*)                     Correct                            Section 6 Lesson 2    (Answer all questions in this section)             68.  Examine the structures of the CUSTOMER and ORDER_HISTORY tables:   CUSTOMER   CUSTOMER_ID NUMBER(5)  NAME VARCHAR2(25)  CREDIT_LIMIT NUMBER(8,2)  OPEN_DATE DATE       ORDER_HISTORY  ORDER_ID NUMBER(5)  CUSTOMER_ID NUMBER(5) 

ORDER_DATE DATE  TOTAL NUMBER(8,2)     Which of the following scenarios would require a subquery to return the desired results?    Mark for Review   (1) Points               You need to display the date each customer account was opened.           You need to display each date that a customer placed an order.           You need to display all the orders that were placed on a certain date.           You need to display all the orders that were placed on the same day as order number 25950. (*)                     Correct                  69.  If you use the equality operator (=) with a subquery, how many values can the subquery return?   Mark for Review   (1) Points               only 1 (*)           up to 2  

        up to 5           unlimited                     Incorrect. Refer to Section 6                  70.  Using a subquery in which of the following clauses will return a syntax error?  Mark for Review   (1) Points               WHERE           FROM           HAVING           You can use subqueries in all of the above clauses. (*)                     Correct                 

 Page 7 of 10               Section 6 Lesson 2    (Answer all questions in this section)             71.  Which statement about subqueries is true?  Mark for Review   (1) Points               Subqueries should be enclosed in double quotation marks.           Subqueries cannot contain group functions.           Subqueries are often used in a WHERE clause to return values for an unknown conditional value. (*)           Subqueries generally execute last, after the main or outer query executes.                     Correct                  72.  Which of the following is TRUE regarding the order of subquery execution?  Mark for Review   (1) Points          

    The outer query is executed first           The subquery executes once after the main query           The subquery executes once before the main query (*)           The result of the main query is used with the subquery                     Correct                            Section 6 Lesson 3    (Answer all questions in this section)             73.  Examine the following EMPLOYEES table:   EMPLOYEES  EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2(25)  FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)  SUPERVISOR_ID NUMBER(9)    

You need to produce a report that contains all employee‐related information for those employees who  have Brad Carter as a supervisor. However, you are not sure which supervisor ID belongs to Brad Carter.  Which query should you issue to accomplish this task?    Mark for Review   (1) Points               SELECT *   FROM employees   WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');              SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');              SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT employee_id  

     FROM supervisors        WHERE last_name = 'Carter');             SELECT *   FROM employees  WHERE supervisor_id =        (SELECT employee_id        FROM employees        WHERE last_name = 'Carter');   (*)                       Incorrect. Refer to Section 6                  74.  Which statement about the <> operator is true?  Mark for Review   (1) Points               The <> operator is NOT a valid SQL operator.           The <> operator CANNOT be used in a single‐row subquery.           The <> operator returns the same result as the ANY operator in a subquery.  

        The <> operator can be used when a single‐row subquery returns only one row. (*)                     Correct                  75.  Examine the structure of the EMPLOYEE, DEPARTMENT, and ORDERS tables.   EMPLOYEE  EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2(25)  FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)     DEPARTMENT   DEPARTMENT_ID NUMBER(9)  DEPARTMENT_NAME VARCHAR2(25)  CREATION_DATE DATE    ORDERS   ORDER_ID NUMBER(9)  EMPLOYEE_ID NUMBER(9)  DATE DATE   CUSTOMER_ID NUMBER(9)   

You want to display all employees who had an order after the Sales department was established. Which  of the following constructs would you use?    Mark for Review   (1) Points               a group function           a single‐row subquery (*)           the HAVING clause           a MERGE statement                     Correct                            Section 6 Lesson 4    (Answer all questions in this section)             76.  Which statement about single‐row and multiple‐row subqueries is true?  Mark for Review   (1) Points               Multiple‐row subqueries cannot be used with the LIKE operator. (*)  

        Single‐row operators can be used with both single‐row and multiple‐row subqueries.           Multiple‐row subqueries can be used with both single‐row and multiple‐row operators.           Multiple‐row subqueries can only be used in SELECT statements.                     Correct                  77.  Evaluate this SELECT statement that includes a subquery:  SELECT last_name, first_name   FROM customer  WHERE area_code IN       (SELECT area_code FROM sales WHERE salesperson_id = 20);     Which statement is true about the given subquery?    Mark for Review   (1) Points               The outer query executes before the nested subquery.           The results of the inner query are returned to the outer query. (*)      

    An error occurs if the either the inner or outer queries do not return a value.           Both the inner and outer queries must return a value, or an error occurs.                     Incorrect. Refer to Section 6                  78.  You need to create a SELECT statement that contains a multiple‐row subquery, which comparison  operator(s) can you use?  Mark for Review   (1) Points               IN, ANY, and ALL (*)           LIKE           BETWEEN...AND...           =, <, and >                     Correct                  79.  Evaluate the structure of the EMPLOYEE and DEPART_HIST tables:   EMPLOYEE: 

EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2(25)   FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)  MANAGER_ID NUMBER(9)  SALARY NUMBER(7,2)     DEPART_HIST:   EMPLOYEE_ID NUMBER(9)   OLD_DEPT_ID NUMBER(9)  NEW_DEPT_ID NUMBER(9)  CHANGE_DATE DATE     You want to generate a list of employees who are in department 10, but used to be in department 15.   Which query should you use?    Mark for Review   (1) Points               SELECT employee_id, last_name, first_name, department_id  FROM employee   WHERE (employee_id, department_id) IN      (SELECT employee_id, new_dept_id      FROM depart_hist       WHERE old_dept_id = 15) AND new_dept_id = 10;  (*) 

           SELECT employee_id, last_name, first_name, department_id  FROM employee  WHERE (employee_id) IN      (SELECT employee_id       FROM employee_hist       WHERE old_dept_id = 15);             SELECT employee_id, last_name, first_name, department_id  FROM employee  WHERE (employee_id, department_id) =      (SELECT employee_id, new_dept_id       FROM depart_hist       WHERE new_dept_id = 15);              SELECT employee_id, last_name, first_name, department_id   FROM employee   WHERE (employee_id, department_id) IN      (SELECT employee_id, dept_id       FROM employee       WHERE old_dept_id = 15);    

                  Correct                  80.  Which operator or keyword cannot be used with a multiple‐row subquery?  Mark for Review   (1) Points               ALL           ANY           = (*)           >                     Correct                   Page 8 of 10             

      Section 6 Lesson 4    (Answer all questions in this section)             81.  Which comparison operator would you use to compare a value to every value returned by a  subquery?  Mark for Review   (1) Points               SOME           ANY           ALL (*)           IN                     Correct                  82.  You are looking for Executive information using a subquery. What will the following SQL statement  display?   SELECT department_id, last_name, job_id   FROM employees   WHERE department_id IN  

   (SELECT department_id       FROM departments       WHERE department_name = 'Executive');    Mark for Review   (1) Points               The department ID, department name and last name for every employee in the Executive  department.           The department ID, last name, department name for every Executive in the employees table.           The department ID, last name, job ID from departments for Executive employees.           The department ID, last name, job ID for every employee in the Executive department. (*)                     Correct                  83.  Which of the following best describes the meaning of the ANY operator?  Mark for Review   (1) Points               Equal to any member in the list           Compare value to each value returned by the subquery (*)      

    Compare value to every value returned by the subquery           Equal to each value in the list                     Correct                  84.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        This statement fails when executed:     SELECT payment_date, customer_id, payment_amount   FROM payment   WHERE payment_id =      (SELECT payment_id       FROM payment       WHERE payment_date >= '05‐JAN‐2002' OR payment_amount > 500.00);     Which change could correct the problem?  

 Mark for Review   (1) Points               Remove the subquery WHERE clause.           Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)           Include the PAYMENT_ID column in the select list of the outer query.           Remove the single quotes around the date value in the inner query WHERE clause.                     Correct                  85.  You need to display all the products that cost more than the maximum cost of every product  produced in Japan. Which multiple‐row comparison operator could you use?  Mark for Review   (1) Points               >ANY (*)           NOT=ALL           IN           >IN  

                  Correct                  86.  Which of the following statements contains a comparison operator that is used to restrict rows  based on a list of values returned from an inner query?  Mark for Review   (1) Points               SELECT description   FROM d_types   WHERE code IN (SELECT type_code FROM d_songs);             SELECT description  FROM d_types  WHERE code = ANY (SELECT type_code FROM d_songs);             SELECT description   FROM d_types   WHERE code <> ALL (SELECT type_code FROM d_songs);             All of the above. (*)      

              Correct                            Section 7 Lesson 1    (Answer all questions in this section)             87.  Which statement about the VALUES clause of an INSERT statement is true?  Mark for Review   (1) Points               If no column list is specified, then the values must be in the order the columns are specified in the  table. (*)           The VALUES clause in an INSERT statement is optional.           Character, date, and numeric data must be enclosed within single quotes in the VALUES clause.           To specify a null value in the VALUES clause, use an empty string (' ').                     Incorrect. Refer to Section 7               

  88.  You need to copy rows from the EMPLOYEE table to the EMPLOYEE_HIST table. What could you  use in the INSERT statement to accomplish this task?  Mark for Review   (1) Points               an ON clause           a SET clause           a subquery (*)           a function                     Correct                  89.  The PRODUCTS table contains these columns:  PRODUCT_ID NUMBER NOT NULL   PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER NOT NULL  LIST_PRICE NUMBER (7,2)  COST NUMBER (5,2)  QTY_IN_STOCK NUMBER(4)  LAST_ORDER_DT DATE NOT NULL DEFAULT SYSDATE      

Which INSERT statement will execute successfully?    Mark for Review   (1) Points               INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, 700); (*)           INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, SYSDATE);           INSERT INTO products(product_id, product_name) VALUES (2958, 'Cable');           INSERT INTO products(product_id, product_name, supplier_id VALUES (2958, 'Cable', 8690, SYSDATE);                     Correct                  90.  Assume all the column names are correct. The following SQL statement will execute which of the  following?  INSERT INTO departments (department_id, department_name, manager_id, location_id)   VALUES (70, 'Public Relations', 100, 1700);     Mark for Review   (1) Points               100 will be inserted into the department_id column      

    1700 will be inserted into the manager_id column           70 will be inserted into the department_id column (*)           'Public Relations' will be inserted into the manager_name column                     Correct                   Page 9 of 10                    Section 7 Lesson 2    (Answer all questions in this section)             91.  The EMPLOYEES table contains the following columns:   EMPLOYEE_ID NUMBER(10) PRIMARY KEY   LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)  DEPARTMENT_ID NUMBER(10) 

HIRE_DATE DATE   SALARY NUMBER(9,2)   BONUS NUMBER(9,2)     You want to execute one DML statement to change the salary of all employees in department 10 to  equal the new salary of employee id 89898. Currently, all employees in department 10 have the same  salary value. Which statement should you execute?    Mark for Review   (1) Points               UPDATE employees   SET salary = SELECT salary   FROM employees   WHERE employee_id = 89898;             UPDATE employees   SET salary = (SELECT salary FROM employees WHERE employee_id = 89898);             UPDATE employees  SET salary = (SELECT salary FROM employees WHERE employee_id = 89898)   WHERE department_id = 10;   (*)        

    UPDATE employees   SET salary = (SELECT salary FROM employees WHERE employee_id = 89898 AND department_id = 10);                       Correct                  92.  What would happen if you issued a DELETE statement without a WHERE clause?  Mark for Review   (1) Points               All the rows in the table would be deleted. (*)           An error message would be returned.           No rows would be deleted.           Only one row would be deleted.                     Correct                  93.  You need to remove a row from the EMPLOYEES table. Which statement would you use?  Mark for  Review   (1) Points  

            UPDATE with a WHERE clause           INSERT with a WHERE clause           DELETE with a WHERE clause (*)           MERGE with a WHERE clause                     Correct                  94.  You want to enter a new record into the CUSTOMERS table. Which two commands can be used to  create new rows?  Mark for Review   (1) Points               INSERT, CREATE           MERGE, CREATE           INSERT, MERGE (*)           INSERT, UPDATE              

      Correct                  95.  The EMPLOYEES table contains the following columns:   EMPLOYEE_ID NUMBER(10) PRIMARY KEY  LAST_NAME VARCHAR2(20)  FIRST_NAME VARCHAR2(20)  DEPARTMENT_ID NUMBER(10)   HIRE_DATE DATE   SALARY NUMBER(9,2)  BONUS NUMBER(9,2)     You need to increase the salary for all employees in department 10 by 10 percent. You also need to  increase the bonus for all employees in department 10 by 15 percent. Which statement should you use?    Mark for Review   (1) Points               UPDATE employees  SET salary = salary * 1.10, bonus = bonus * 1.15   WHERE department_id = 10;   (*)             UPDATE employees   SET salary = salary * 1.10 AND bonus = bonus * 1.15   WHERE department_id = 10;  

           UPDATE employees   SET (salary = salary * 1.10) SET (bonus = bonus * 1.15)   WHERE department_id = 10;              UPDATE employees  SET salary = salary * .10, bonus = bonus * .15   WHERE department_id = 10;                        Correct                  96.  What keyword in an UPDATE statement specifies the columns you want to change? Mark for  Review   (1) Points               SELECT           WHERE           SET (*)      

    HAVING                     Incorrect. Refer to Section 7                  97.  Evaluate this statement: DELETE FROM customer; Which statement is true?  Mark for Review   (1) Points               The statement deletes all the rows from the CUSTOMER table. (*)           The statement deletes the CUSTOMER column.           The statement deletes the first row in the CUSTOMERS table.           The statement removes the structure of the CUSTOMER table from the database.                     Correct                  98.  You need to update the expiration date of products manufactured before June 30th. In which  clause of the UPDATE statement will you specify this condition?  Mark for Review   (1) Points               the ON clause  

        the WHERE clause (*)           the SET clause           the USING clause                     Correct                  99.  Which of the following represents the correct syntax for an INSERT statement?  Mark for Review   (1) Points               INSERT VALUES INTO customers (3178 J. Smith 123 Main Street Nashville TN 37777;           INSERT INTO customers VALUES '3178' 'J.' 'Smith' '123 Main Street' 'Nashville' 'TN' '37777';           INSERT INTO customers VALUES (3178, 'J.', 'Smith', '123 Main Street', 'Nashville', 'TN', '37777'); (*)           INSERT customers VALUES 3178, J., Smith, 123 Main Street, Nashville, TN, 37777;                     Correct       

          100.  One of the sales representatives, Janet Roper, has informed you that she was recently married,  and she has requested that you update her name in the employee database. Her new last name is  Cooper. Janet is the only person with the last name of Roper that is employed by the company. The  EMPLOYEES table contains these columns and all data is stored in lowercase:   EMPLOYEE_ID NUMBER(10) PRIMARY KEY   LAST_NAME VARCHAR2(20)  FIRST_NAME VARCHAR2(20)  DEPARTMENT_ID NUMBER(10)  HIRE_DATE DATE  SALARY NUMBER(10)    Which UPDATE statement will accomplish your objective?   Mark for Review   (1) Points               UPDATE employees  SET last_name = 'cooper'   WHERE last_name = 'roper';   (*)             UPDATE employees last_name = 'cooper'   WHERE last_name = 'roper';             UPDATE employees 

SET last_name = 'roper'   WHERE last_name = 'cooper';             UPDATE employees  SET cooper = 'last_name'   WHERE last_name = 'roper';                       Correct                   Page 10 of 10                          Section 1 Lesson 1    (Answer all questions in this section)  

          1.  You query the database with this SQL statement:     SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID"  FROM employee;      In which order are the functions evaluated?    Mark for Review   (1) Points               LOWER, SUBSTR, CONCAT           LOWER, CONCAT, SUBSTR           SUBSTR, CONCAT, LOWER           CONCAT, SUBSTR, LOWER (*)                     Correct                  2.  Which SQL function is used to return the position where a specific character string begins within a  larger character string?  Mark for Review   (1) Points  

            CONCAT           INSTR (*)           LENGTH           SUBSTR                     Correct                  3.  Which functions can be used to manipulate character, number, and date column values?  Mark for  Review   (1) Points               CONCAT, RPAD, and TRIM (*)           UPPER, LOWER, and INITCAP           ROUND, TRUNC, and MOD           ROUND, TRUNC, and ADD_MONTHS              

      Correct                  4.  You query the database with this SQL statement:     SELECT CONCAT(last_name, (SUBSTR(LOWER(first_name), 4))) "Default Password"   FROM employees;       Which function will be evaluated first?    Mark for Review   (1) Points               CONCAT           SUBSTR           LOWER (*)           All three will be evaluated simultaneously.                     Correct               

  5.  Which three statements about functions are true? (Choose three.)  Mark for Review   (1) Points              (Choose all correct answers)                The SYSDATE function returns the Oracle Server date and time. (*)           The ROUND number function rounds a value to a specified decimal place or the nearest whole  number. (*)           The CONCAT function can only be used on character strings, not on numbers.           The SUBSTR character function returns a portion of a string beginning at a defined character position  to a specified length. (*)                     Correct                  6.  You need to display the number of characters in each customer's last name. Which function should  you use?  Mark for Review   (1) Points               LENGTH (*)           LPAD      

    COUNT           SUBSTR                     Correct                  7.  The PRICE table contains this data:  PRODUCT_ID MANUFACTURER_ID     86950  59604       You query the database and return the value 95. Which script did you use?    Mark for Review   (1) Points               SELECT SUBSTR(product_id, 3, 2)  FROM price  WHERE manufacturer_id = 59604;  (*)             SELECT LENGTH(product_id, 3, 2) 

FROM price  WHERE manufacturer_id = 59604;             SELECT SUBSTR(product_id, ‐1, 3)  FROM price  WHERE manufacturer_id = 59604;             SELECT TRIM(product_id, ‐3, 2)  FROM price  WHERE manufacturer_id = 59604;                     Incorrect. Refer to Section 1                            Section 1 Lesson 2    (Answer all questions in this section)             8.  Which two functions can be used to manipulate number or date column values, but NOT character  column values? (Choose two.)  Mark for Review   (1) Points          

   (Choose all correct answers)                RPAD           TRUNC (*)           ROUND (*)           INSTR           CONCAT                     Correct                  9.  You issue this SQL statement:     SELECT TRUNC(751.367,‐1)   FROM dual;      Which value does this statement display?    Mark for Review   (1) Points  

            700           750 (*)           751           751.3                     Correct                  10.  Which script displays '01‐MAY‐04' when the HIRE_DATE value is '20‐MAY‐04'?  Mark for Review   (1) Points               SELECT TRUNC(hire_date, 'MONTH')   FROM employees;  (*)             SELECT ROUND(hire_date, 'MONTH')   FROM employees;        

    SELECT ROUND(hire_date, 'MON')   FROM employees;             SELECT TRUNC(hire_date, 'MI')   FROM employees;        Section 1 Lesson 3    (Answer all questions in this section)             11.  Which SELECT statement will NOT return a date value?  Mark for Review   (1) Points               SELECT (30 + hire_date) + 1440/24   FROM employees;             SELECT (SYSDATE ‐ hire_date) + 10*8   FROM employees;  (*)             SELECT SYSDATE ‐ TO_DATE('25‐JUN‐02') + hire_date   FROM employees; 

           SELECT (hire_date ‐ SYSDATE) + TO_DATE('25‐JUN‐02')   FROM employees;                       Incorrect. Refer to Section 1                  12.  Which function would you use to return the current database server date and time?  Mark for  Review   (1) Points               DATE           SYSDATE (*)           DATETIME           CURRENTDATE                     Correct               

  13.  Which SELECT statement will return a numeric value?  Mark for Review   (1) Points               SELECT SYSDATE + 600 / 24  FROM employee;             SELECT ROUND(hire_date, DAY)   FROM employee;             SELECT (SYSDATE ‐ hire_date) / 7   FROM employee;  (*)             SELECT SYSDATE ‐ 7  FROM employee;                       Correct                  14.  Which of the following Date Functions will add calendar months to a date?  Mark for Review  

(1) Points               Months + Calendar (Month)           ADD_MONTHS (*)           MONTHS + Date           NEXT_MONTH                     Correct                  15.  You need to subtract three months from the current date. Which function should you use?  Mark  for Review   (1) Points               ROUND           TO_DATE           ADD_MONTHS (*)           MONTHS_BETWEEN      

              Correct                            Section 2 Lesson 1    (Answer all questions in this section)             16.  You have been asked to create a report that lists all customers who have placed orders of at least  $2,500. The report's date should be displayed in the Day, Date Month, Year format (For example,  Tuesday, 13 April, 2004 ). Which statement should you issue?  Mark for Review   (1) Points               SELECT companyname, TO_CHAR (sysdate, 'fmdd, dy month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;              SELECT companyname, TO_DATE (date, 'day, dd month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;             SELECT companyname, TO_DATE (sysdate, 'dd, dy month, yyyy'), total   FROM customers NATURAL JOIN orders  

WHERE total >= 2500;             SELECT companyname, TO_CHAR (sysdate, 'fmDay, dd Month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;  (*)                       Correct                  17.  If you use the RR format when writing a query using the date 27‐OCT‐17 and the year is 2001, what  year would be the result?  Mark for Review   (1) Points               2001           1901           2017 (*)           1917              

      Correct                  18.  All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a  report that displays each employee's name and salary. Each employee's salary must be displayed in the  following format: $000,000.00. Which function should you include in a SELECT statement to achieve the  desired result?  Mark for Review   (1) Points               TO_CHAR (*)           TO_DATE           TO_NUMBER           CHARTOROWID                     Correct                  19.  Which arithmetic operation will return a numeric value?  Mark for Review   (1) Points               TO_DATE('01‐JUN‐2004') ‐ TO_DATE('01‐OCT‐2004') (*)           NEXT_DAY(hire_date) + 5  

        SYSDATE ‐ 6           SYSDATE + 30 / 24                     Correct                  20.  Which three statements concerning explicit data type conversions are true? (Choose three.)  Mark  for Review   (1) Points              (Choose all correct answers)                Use the TO_NUMBER function to convert a number to a character string.           Use the TO_DATE function to convert a character string to a date value. (*)           Use the TO_NUMBER function to convert a character string of digits to a number. (*)           Use the TO_DATE function to convert a date value to character string or number.           Use the TO_CHAR function to convert a number or date value to character string. (*)      Section 2 Lesson 1  

 (Answer all questions in this section)             21.  Which statement concerning single row functions is true?  Mark for Review   (1) Points               Single row functions can accept only one argument, but can return multiple values.           Single row functions cannot modify a data type.           Single row functions can be nested. (*)           Single row functions return one or more results per row.                     Correct                            Section 2 Lesson 2    (Answer all questions in this section)             22.  The PRODUCT table contains this column: PRICE NUMBER(7,2)   Evaluate this statement:    

SELECT NVL(10 / price, '0')   FROM PRODUCT;     What would happen if the PRICE column contains null values?    Mark for Review   (1) Points               The statement would fail because values cannot be divided by 0.           A value of 0 would be displayed. (*)           A value of 10 would be displayed.           The statement would fail because values cannot be divided by null.                     Correct                  23.  Which of the following General Functions will return the first non‐null expression in the expression  list?  Mark for Review   (1) Points               NVL           NVL2  

        NULLIF           COALESCE (*)                     Correct                  24.  Which statement about group functions is true?  Mark for Review   (1) Points               NVL and NVL2, but not COALESCE, can be used with group functions to replace null values.           NVL and COALESCE, but not NVL2, can be used with group functions to replace null values.           NVL, NVL2, and COALESCE can be used with group functions to replace null values. (*)           COALESCE, but not NVL and NVL2, can be used with group functions to replace null values.                     Correct                  

         Section 3 Lesson 2    (Answer all questions in this section)             25.  Evaluate this SQL statement:   SELECT e.employee_id, e.last_name, e.first_name, d.department_name   FROM employees e, departments d   WHERE e.department_id = d.department_id AND employees.department_id > 5000   ORDER BY 4;     Which clause contains a syntax error?     Mark for Review   (1) Points               SELECT e.employee_id, e.last_name, e.first_name, d.department_name           FROM employees e, departments d           WHERE e.department_id = d.department_id           AND employees.department_id > 5000 (*)           ORDER BY 4;      

              Correct                  26.  Your have two tables named EMPLOYEES and SALES. You want to identify the sales representatives  who have generated $100,000, or more, in revenue.   Which query should you issue?  Mark for Review   (1) Points               SELECT e.first_name, e.last_name, s.sales   FROM employees e, sales s   WHERE e.employee_id = s.employee_id AND revenue > 100000;             SELECT e.first_name, e.last_name, s.sales   FROM employees e, sales s   WHERE e.employee_id = s.employee_id AND revenue >= 100000;  (*)             SELECT e.first_name, e.last_name, s.sales   FROM employees, sales   WHERE e.employee_id = s.employee_id AND revenue >= 100000;             SELECT first_name, last_name, sales  

Q FROM employees e, sales s   WHERE e.employee_id = s.employee_id AND revenue > 100000;                       Correct                  27.  What happens when you create a Cartesian product?  Mark for Review   (1) Points               All rows from one table are joined to all rows of another table (*)           The table is joined to itself, one column to the next column, exhausting all possibilities           The table is joined to another equal table           All rows that do not match in the WHERE clause are displayed                     Correct                  28.  What is produced when a join condition is not specified in a multiple‐table query using Oracle  proprietary Join syntax?  Mark for Review   (1) Points  

            a self‐join           an outer join           an equijoin           a Cartesian product (*)                     Correct                  29.  The CUSTOMERS and SALES tables contain these columns:   CUSTOMERS   CUST_ID NUMBER(10) PRIMARY KEY   COMPANY VARCHAR2(30)   LOCATION VARCHAR2(20)     SALES   SALES_ID NUMBER(5) PRIMARY KEY   CUST_ID NUMBER(10) FOREIGN KEY   TOTAL_SALES NUMBER(30)     Which SELECT statement will return the customer ID, the company and the total sales? 

   Mark for Review   (1) Points               SELECT c.cust_id, c.company, s.total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id (+);             SELECT cust_id, company, total_sales   FROM customers, sales   WHERE cust_id = cust_id;             SELECT c.cust_id, c.company, s.total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id;  (*)             SELECT cust_id, company, total_sales   FROM customers c, sales s   WHERE c.cust_id = s.cust_id;        

              Correct                  30.  You have the following EMPLOYEES table:   EMPLOYEE_ID NUMBER(5) NOT NULL PRIMARY KEY   FIRST_NAME VARCHAR2(25)   LAST_NAME VARCHAR2(25)   ADDRESS VARCHAR2(35)   CITY VARCHAR2(25)   STATE VARCHAR2(2)   ZIP NUMBER(9)   TELEPHONE NUMBER(10)   DEPARTMENT_ID NUMBER(5) NOT NULL FOREIGN KEY     The BONUS table includes the following columns:     BONUS_ID NUMBER(5) NOT NULL PRIMARY KEY   ANNUAL_SALARY NUMBER(10)   BONUS_PCT NUMBER(3, 2)   EMPLOYEE_ID VARCHAR2(5) NOT NULL FOREIGN KEY     You want to determine the amount of each employee's bonus, as a calculation of salary times bonus.  Which of the following queries should you issue?    Mark for Review   (1) Points  

            SELECT e.first_name, e.last_name, b.annual_salary * b. bonus_pct   FROM employees e, bonus b   WHERE e.employee_id = b.employee_id;  (*)             SELECT e.first_name, e.last_name, b.annual_salary, b. bonus_pct   FROM employees e, bonus b  WHERE e.employee_id = b.employee_id;             SELECT e.first_name, e.last_name, b.annual_salary, b. bonus_pct   FROM employees, bonus   WHERE e.employee_id = b.employee_id;             SELECT first_name, last_name, annual_salary * bonus_pct   FROM employees, bonus NATURAL JOIN;         Section 3 Lesson 4    (Answer all questions in this section)             31.  Evaluate this SELECT statement:  

SELECT p.player_id, m.last_name, m.first_name, t.team_name   FROM player p   LEFT OUTER JOIN player m ON (p.manager_id = m.player_id)   LEFT OUTER JOIN team t ON (p.team_id = t.team_id);     Which join is evaluated first?    Mark for Review   (1) Points               the self‐join of the player table (*)           the join between the player table and the team table on TEAM_ID           the join between the player table and the team table on MANAGER_ID           the join between the player table and the team table on PLAYER_ID                     Correct                  32.  Which of the following best describes the function of an outer join?  Mark for Review   (1) Points               An outer join will return only those rows that do not meet the join criteria.  

        An outer join will return only data from the far left column in one table and the far right column in the  other table.           An outer join will return data only if both tables contain an identical pair of columns.           An outer join will return all rows that meet the join criteria and will return NULL values from one table  if no rows from the other table satisfy the join criteria. (*)                     Correct                  33.  Using Oracle Proprietary join syntax, which two operators can be used in an outer join condition  using the outer join operator (+)?  Mark for Review   (1) Points               AND and = (*)           OR and =           BETWEEN...AND... and IN           IN and =                     Correct   

                        Section 4 Lesson 2    (Answer all questions in this section)             34.  Which statement about a natural join is true?  Mark for Review   (1) Points               Columns with the same names must have identical data types.           Columns with the same names must have the same precision and datatype. (*)           Columns with the same names must have compatible data types.           Columns with the same names cannot be included in the SELECT list of the query.                     Correct                  35.  Which of the following conditions will cause an error on a NATURAL JOIN?  Mark for Review   (1) Points          

    When you attempt to write it as an equijoin.           When the NATURAL JOIN clause is based on all columns in the two tables that have the same name.           If it selects rows from the two tables that have equal values in all matched columns.           If the columns having the same names have different data types, then an error is returned. (*)                     Correct                  36.  You need to join all the rows in the EMPLOYEES table to all the rows in the EMP_REFERENCES  table. Which type of join should you create?  Mark for Review   (1) Points               An equijoin           A cross join (*)           An inner join           A full outer join                     Incorrect. Refer to Section 4   

                        Section 4 Lesson 3    (Answer all questions in this section)             37.  For which condition would you use an equijoin query with the USING keyword?  Mark for Review   (1) Points               You need to perform a join of the CUSTOMER and ORDER tables but limit the number of columns in  the join condition. (*)           The ORDER table contains a column that has a referential constraint to a column in the PRODUCT  table.           The CUSTOMER and ORDER tables have no columns with identical names.           The CUSTOMER and ORDER tables have a corresponding column, CUST_ID. The CUST_ID column in the  ORDER table contains null values that need to be displayed.                     Correct                  38.  You created the CUSTOMERS and ORDERS tables by issuing these CREATE TABLE statements in  sequence:  

CREATE TABLE customers   (custid varchar2(5),   companyname varchar2(30),   contactname varchar2(30),   address varchar2(30),   city varchar2(20),   state varchar2(30),   phone varchar2(20),   constraint pk_customers_01 primary key (custid));     CREATE TABLE orders   (orderid varchar2(5) constraint pk_orders_01 primary key,   orderdate date,   total number(15),   custid varchar2(5) references customers (custid));     You have been instructed to compile a report to present the information about orders placed by  customers who reside in Nashville . Which query should you issue to achieve the desired results?    Mark for Review   (1) Points               SELECT custid, companyname   FROM customers   WHERE city = 'Nashville';         

    SELECT orderid, orderdate, total   FROM orders o   NATURAL JOIN customers c ON o.custid = c.custid   WHERE city = 'Nashville';              SELECT orderid, orderdate, total   FROM orders o   JOIN customers c ON o.custid = c.custid   WHERE city = 'Nashville';   (*)             SELECT orderid, orderdate, total   FROM orders   WHERE city = 'Nashville';                       Correct                  39.  Below find the structures of the PRODUCTS and VENDORS tables:    PRODUCTS  

PRODUCT_ID NUMBER   PRODUCT_NAME VARCHAR2 (25)   VENDOR_ID NUMBER  CATEGORY_ID NUMBER    VENDORS  VENDOR_ID NUMBER  VENDOR_NAME VARCHAR2 (25)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)   REGION VARCHAR2 (10)   POSTAL_CODE VARCHAR2 (11)       You want to create a query that will return an alphabetical list of products, including the product name  and associated vendor name, for all products that have a vendor assigned.     Which two queries could you use?    Mark for Review   (1) Points              (Choose all correct answers)                SELECT p.product_name, v.vendor_name   FROM products p   LEFT OUTER JOIN vendors v ON p.vendor_id = v.vendor_id  

ORDER BY p.product_name;              SELECT p.product_name, v.vendor_name   FROM products p   JOIN vendors v ON (vendor_id)   ORDER BY p.product_name;              SELECT p.product_name, v.vendor_name   FROM products p NATURAL JOIN vendors v   ORDER BY p.product_name;   (*)             SELECT p.product_name, v.vendor_name   FROM products p   JOIN vendors v USING (p.vendor_id)   ORDER BY p.product_name;              SELECT p.product_name, v.vendor_name   FROM products p   JOIN vendors v USING (vendor_id)   ORDER BY p.product_name; 

(*)                       Incorrect. Refer to Section 4                  40.  The primary advantage of using JOIN ON is:  Mark for Review   (1) Points               The join happens automatically based on matching column names and data types           It will display rows that do not meet the join condition           It permits columns with different names to be joined (*)           It permits columns that don't have matching data types to be joined       Section 4 Lesson 4    (Answer all questions in this section)             41.  Which query represents the correct syntax for a left outer join?  Mark for Review   (1) Points               SELECT companyname, orderdate, total  

FROM customers c   LEFT JOIN orders o  ON c.cust_id = o.cust_id;             SELECT companyname, orderdate, total  FROM customers c  OUTER JOIN orders o  ON c.cust_id = o.cust_id;             SELECT companyname, orderdate, total   FROM customers c   LEFT OUTER JOIN orders o   ON c.cust_id = o.cust_id;   (*)             SELECT companyname, orderdate, total   FROM customers c   LEFT OUTER orders o   ON c.cust_id = o.cust_id;                 

      Correct                  42.  Which query will retrieve all the rows in the EMPLOYEES table, even if there is no match in the  DEPARTMENTS table?  Mark for Review   (1) Points               SELECT e.last_name, e.department_id, d.department_name   FROM employees e   RIGHT OUTER JOIN departments d ON (e.department_id = d.department_id);              SELECT e.last_name, e.department_id, d.department_name   FROM employees e   NATURAL JOIN departments d;              SELECT e.last_name, e.department_id, d.department_name   FROM employees e  LEFT OUTER JOIN departments d ON (e.department_id = d.department_id);   (*)             SELECT e.last_name, e.department_id, d.department_name   FROM employees e   JOIN departments d USING (e.department_id = d.department_id);  

                     Incorrect. Refer to Section 4                  43.  You need to display all the rows from both the EMPLOYEES and EMPLOYEE_HISTS tables. Which  type of join would you use?  Mark for Review   (1) Points               a right outer join           a  left outer join           a full outer join (*)           an inner join                     Correct                            Section 5 Lesson 1    (Answer all questions in this section)  

          44.  If a select list contains both columns as well as groups function then what clause is required?  Mark  for Review   (1) Points               having clause           join clause           order by clause           group by clause (*)                     Correct                  45.  Evaluate this SELECT statement:     SELECT MIN(hire_date), department_id   FROM employees   GROUP BY department_id;     Which values are displayed?    Mark for Review   (1) Points  

            The earliest hire date in each department. (*)           The the earliest hire date in the EMPLOYEES table.           The latest hire date in the EMPLOYEES table.           The hire dates in the EMPLOYEES table that contain NULL values.                     Correct                  46.  Which statement about the GROUP BY clause is true?  Mark for Review   (1) Points               The first column listed in the GROUP BY clause is the most major grouping. (*)           The last column listed in the GROUP BY clause is the most major grouping.           The GROUP BY clause can contain an aggregate function.           A GROUP BY clause cannot be used without an ORDER BY clause.              

      Correct                  47.  What is the best explanation as to why this SQL statement will NOT execute?   SELECT department_id "Department", AVG (salary)"Average"   FROM employees   GROUP BY Department;    Mark for Review   (1) Points               Salaries cannot be averaged as not all the numbers will divide evenly.           You cannot use a column alias in the GROUP BY clause. (*)           The GROUP BY clause must have something to GROUP.           The department id is not listed in the departments table.                     Correct                            Section 5 Lesson 2  

 (Answer all questions in this section)             48.  Which group function would you use to display the average price of all products in the PRODUCTS  table?  Mark for Review   (1) Points               SUM           AVG (*)           COUNT           MAX                     Correct                  49.  The AVG, SUM, VARIANCE, and STDDEV functions can be used with which of the following?  Mark  for Review   (1) Points               Only numeric data types (*)           Integers only      

    Any data type           All except numeric                     Correct                  50.  You need to compute the total salary for all employees in department 10. Which group function  will you use?  Mark for Review   (1) Points               MAX           SUM (*)           VARIANCE           COUNT      Section 5 Lesson 2    (Answer all questions in this section)             51.  Which group functions below act on character, number and date data types?   (Choose three)  Mark for Review   (1) Points  

           (Choose all correct answers)                SUM           MAX (*)           MIN (*)           AVG           COUNT (*)                     Correct                  52.  Group functions return a value for ________________ and ________________ null values in their  computations.  Mark for Review   (1) Points               a row set, ignore (*)           each row, ignore           a row set, include  

        each row, include                     Correct                  53.  Which group function would you use to display the lowest value in the SALES_AMOUNT column?   Mark for Review   (1) Points               AVG           COUNT           MAX           MIN (*)                     Correct                  54.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00   

89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        You need to determine the average payment amount made by each customer in January, February and  March of 2003. Which SELECT statement should you use?    Mark for Review   (1) Points               SELECT AVG(payment_amount)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '31‐MAR‐2003';   (*)             SELECT AVG(payment_amount)   FROM payment;             SELECT SUM(payment_amount)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' and '31‐MAR‐2003';             SELECT AVG(payment_amount)   FROM payment  

WHERE TO_CHAR(payment_date) IN (JAN, FEB, MAR);                        Correct                  55.  The CUSTOMERS table contains these columns:   CUSTOMER_ID NUMBER(9)   FIRST_NAME VARCHAR2(25)   LAST_NAME VARCHAR2(30)   CREDIT_LIMIT NUMBER (7,2)  CATEGORY VARCHAR2(20)     You need to calculate the average credit limit for all the customers in each category. The average should  be calculated based on all the rows in the table excluding any customers who have not yet been  assigned a credit limit value. Which group function should you use to calculate this value?    Mark for Review   (1) Points               AVG (*)           SUM           COUNT      

    STDDEV                     Correct                            Section 5 Lesson 3    (Answer all questions in this section)             56.  The STYLES table contains this data:   STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL  85940  11.00    758960  SANDAL  86979        You issue this SELECT statement:    SELECT COUNT(category) 

FROM styles;     Which value is displayed?    Mark for Review   (1) Points               0           6           7 (*)           The statement will NOT execute successfully.                     Correct                  57.  Which statement about the COUNT function is true?  Mark for Review   (1) Points               The COUNT function ignores duplicates by default.           The COUNT function always ignores null values by default. (*)      

    The COUNT function can be used to find the maximum value in each column.           The COUNT function can be used to determine the number of unique, non‐null values in a column.                     Correct                  58.  Group functions can avoid computations involving duplicate values by including which keyword?   Mark for Review   (1) Points               NULL           DISTINCT (*)           SELECT           UNLIKE                     Correct                  59.  Which SELECT statement will calculate the number of rows in the PRODUCTS table?  Mark for  Review  

(1) Points               SELECT COUNT(products);           SELECT COUNT FROM products;           SELECT COUNT (*) FROM products; (*)           SELECT ROWCOUNT FROM products;                     Correct                            Section 6 Lesson 1    (Answer all questions in this section)             60.  Evaluate this SELECT statement:  SELECT SUM(salary), department_id   FROM employees   GROUP BY department_id;     How are the results of this statement sorted? 

 Mark for Review   (1) Points               Ascending order by department_id (*)           Descending order by department_id           Ascending order by cumulative salary           Descending order by cumulative salar      Section 6 Lesson 1    (Answer all questions in this section)             61.  The PRODUCTS table contains these columns:   PROD_ID NUMBER(4)   PROD_NAME VARCHAR(20)   PROD_CAT VARCHAR2(15)   PROD_PRICE NUMBER(5)  PROD_QTY NUMBER(4)     You need to identify the minimum product price in each product category.  Which statement could you use to accomplish this task?   Mark for Review   (1) Points  

            SELECT prod_cat, MIN (prod_price)   FROM products  GROUP BY prod_price;             SELECT prod_cat, MIN (prod_price)   FROM products  GROUP BY prod_cat;  (*)             SELECT MIN (prod_price), prod_cat  FROM products   GROUP BY MIN (prod_price), prod_cat;             SELECT prod_price, MIN (prod_cat)  FROM products  GROUP BY prod_cat;                       Correct       

          62.  You want to write a report that returns the average salary of all employees in the company, sorted  by departments. The EMPLOYEES table contains the following columns:   EMPLOYEES:   EMPLOYEE_ID NUMBER(10) PRIMARY KEY   LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   DEPARTMENT VARCHAR2(20)   HIRE_DATE DATE  SALARY NUMBER(10)     Which SELECT statement will return the information that you require?    Mark for Review   (1) Points               SELECT salary (AVG)  FROM employees   GROUP BY department;             SELECT AVG (salary)   FROM employees  GROUP BY department;  (*)        

    SELECT AVG (salary)   FROM employees   BY department;             SELECT AVG salary   FROM employees  BY department;                       Incorrect. Refer to Section 6                  63.  The PLAYERS table contains these columns:   PLAYER_ID NUMBER PK   PLAYER_NAME VARCHAR2 (30)   TEAM_ID NUMBER   HIRE_DATE DATE   SALARY NUMBER (8,2)     Which two clauses represent valid uses of aggregate functions? (Choose three.)    Mark for Review   (1) Points          

   (Choose all correct answers)                ORDER BY AVG(salary) (*)           GROUP BY MAX(salary)           SELECT AVG(NVL(salary, 0)) (*)           HAVING MAX(salary) > 10000 (*)           WHERE hire_date > AVG(hire_date)                     Incorrect. Refer to Section 6                  64.  Evaluate this SELECT statement:   SELECT SUM(salary), department_id, manager_id  FROM employees   GROUP BY department_id, manager_id;     Which SELECT statement clause allows you to restrict the rows returned, based on a group function?    Mark for Review   (1) Points          

    HAVING SUM(salary) > 100000 (*)           WHERE SUM(salary) > 100000           WHERE salary > 100000           HAVING salary > 100000                     Correct                  65.  Evaluate this SELECT statement:   SELECT COUNT(employee_id), department_id   FROM employees   GROUP BY department_id;     You only want to include employees who earn more than 15000.   Which clause should you include in the SELECT statement?   Mark for Review   (1) Points               WHERE salary > 15000 (*)           HAVING salary > 15000  

        WHERE SUM(salary) > 15000           HAVING SUM(salary) > 15000                     Correct                  66.  The PAYMENT table contains these columns:   PAYMENT_ID NUMBER(9) PK  PAYMENT_DATE DATE   CUSTOMER_ID NUMBER(9)     Which SELECT statement could you use to display the number of times each customer made a payment  between January 1, 2003 and June 30, 2003 ?   Mark for Review   (1) Points               SELECT customer_id, COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003'   GROUP BY customer_id;  (*)        

    SELECT COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003';             SELECT customer_id, COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003';             SELECT COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003'   GROUP BY customer_id;                       Correct                  67.  Evaluate this statement:   SELECT department_id, AVG(salary)   FROM employees   WHERE job_id <> 69879   GROUP BY job_id, department_id  

HAVING AVG(salary) > 35000   ORDER BY department_id;     Which clauses restricts the result? Choose two.   Mark for Review   (1) Points              (Choose all correct answers)                SELECT department_id, AVG(salary)           WHERE job_id <> 69879 (*)           GROUP BY job_id, department_id           HAVING AVG(salary) > 35000 (*)                     Correct                            Section 6 Lesson 2    (Answer all questions in this section)  

          68.  You need to create a report to display the names of products with a cost value greater than the  average cost of all products. Which SELECT statement should you use?  Mark for Review   (1) Points               SELECT product_name  FROM products   WHERE cost > (SELECT AVG(cost) FROM product);   (*)             SELECT product_name   FROM products  WHERE cost > AVG(cost);             SELECT AVG(cost), product_name   FROM products  WHERE cost > AVG(cost)   GROUP by product_name;              SELECT product_name   FROM (SELECT AVG(cost) FROM product)   WHERE cost > AVG(cost);     

                  Correct                  69.  Which operator can be used with subqueries that return only one row?  Mark for Review   (1) Points               LIKE (*)           ANY           ALL           IN                     Correct                  70.  Examine the structures of the CUSTOMER and ORDER_HISTORY tables:   CUSTOMER   CUSTOMER_ID NUMBER(5)  NAME VARCHAR2(25)  CREDIT_LIMIT NUMBER(8,2) 

OPEN_DATE DATE       ORDER_HISTORY  ORDER_ID NUMBER(5)  CUSTOMER_ID NUMBER(5)  ORDER_DATE DATE  TOTAL NUMBER(8,2)     Which of the following scenarios would require a subquery to return the desired results?    Mark for Review   (1) Points               You need to display the date each customer account was opened.           You need to display each date that a customer placed an order.           You need to display all the orders that were placed on a certain date.           You need to display all the orders that were placed on the same day as order number 25950. (*)       Section 6 Lesson 2    (Answer all questions in this section)             71.  The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns:  

TEACHERS  TEACHER_ID NUMBER(5) Primary Key  NAME VARCHAR2 (25)   SUBJECT_ID NUMBER(5)       CLASS_ASSIGNMENTS  CLASS_ID NUMBER (5) Primary Key   TEACHER_ID NUMBER (5)  START_DATE DATE  MAX_CAPACITY NUMBER (3)    All MAX_CAPACITY values are greater than 10. Which two SQL statements correctly use subqueries?  (Choose two.)    Mark for Review   (1) Points              (Choose all correct answers)                SELECT *   FROM class_assignments   WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments);  (*)             SELECT *  

FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE class_id = 45963);   (*)             SELECT *   FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);              SELECT *   FROM teachers   WHERE teacher_id LIKE (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);              SELECT *   FROM class_assignments   WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments GROUP BY teacher_id);                        Correct                  72.  Which operator can be used with a multiple‐row subquery?  Mark for Review  

(1) Points               IN (*)           <>           =           LIKE                     Correct                            Section 6 Lesson 3    (Answer all questions in this section)             73.  Which best describes a single‐row subquery?  Mark for Review   (1) Points               a query that returns only one row from the inner SELECT statement (*)           a query that returns one or more rows from the inner SELECT statement  

        a query that returns only one column value from the inner SELECT statement           a query that returns one or more column values from the inner SELECT statement                     Correct                  74.  If a single‐row subquery returns a null value and uses the equality comparison operator, what will  the outer query return?  Mark for Review   (1) Points               no rows (*)           all the rows in the table           a null value           an error                     Correct                  75.  Which comparison operator is best used with a single‐row subquery?  Mark for Review  

(1) Points               ANY           ALL           <> (*)           IN                     Correct                            Section 6 Lesson 4    (Answer all questions in this section)             76.  Which of the following best describes the meaning of the ANY operator?  Mark for Review   (1) Points               Equal to any member in the list           Compare value to each value returned by the subquery (*)  

        Compare value to every value returned by the subquery           Equal to each value in the list                     Correct                  77.  What would happen if you attempted to use a single‐row operator with a multiple‐row subquery?   Mark for Review   (1) Points               An error would be returned. (*)           No rows will be selected.           All the rows will be selected.           The data returned may or may not be correct.                     Correct               

  78.  You need to display all the products that cost more than the maximum cost of every product  produced in Japan. Which multiple‐row comparison operator could you use?  Mark for Review   (1) Points               >ANY (*)           NOT=ALL           IN           >IN                     Correct                  79.  Evaluate the structure of the EMPLOYEE and DEPART_HIST tables:   EMPLOYEE:  EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2(25)   FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)  MANAGER_ID NUMBER(9)  SALARY NUMBER(7,2)     DEPART_HIST:  

EMPLOYEE_ID NUMBER(9)   OLD_DEPT_ID NUMBER(9)  NEW_DEPT_ID NUMBER(9)  CHANGE_DATE DATE     You want to generate a list of employees who are in department 10, but used to be in department 15.   Which query should you use?    Mark for Review   (1) Points               SELECT employee_id, last_name, first_name, department_id  FROM employee   WHERE (employee_id, department_id) IN      (SELECT employee_id, new_dept_id      FROM depart_hist       WHERE old_dept_id = 15) AND new_dept_id = 10;  (*)             SELECT employee_id, last_name, first_name, department_id  FROM employee  WHERE (employee_id) IN      (SELECT employee_id       FROM employee_hist       WHERE old_dept_id = 15); 

           SELECT employee_id, last_name, first_name, department_id  FROM employee  WHERE (employee_id, department_id) =      (SELECT employee_id, new_dept_id       FROM depart_hist       WHERE new_dept_id = 15);              SELECT employee_id, last_name, first_name, department_id   FROM employee   WHERE (employee_id, department_id) IN      (SELECT employee_id, dept_id       FROM employee       WHERE old_dept_id = 15);                       Correct                     80.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT   

86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        This statement fails when executed:     SELECT payment_date, customer_id, payment_amount   FROM payment   WHERE payment_id =      (SELECT payment_id       FROM payment       WHERE payment_date >= '05‐JAN‐2002' OR payment_amount > 500.00);     Which change could correct the problem?    Mark for Review   (1) Points               Remove the subquery WHERE clause.           Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)           Include the PAYMENT_ID column in the select list of the outer query.           Remove the single quotes around the date value in the inner query WHERE clause.  

   Section 7 Lesson 2    (Answer all questions in this section)            81.  A multiple‐row operator expects how many values?  Mark for Review   (1) Points               One or more (*)           Only one           Two or more           None                     Correct                  82.  Which of the following statements contains a comparison operator that is used to restrict rows  based on a list of values returned from an inner query?  Mark for Review   (1) Points               SELECT description   FROM d_types   WHERE code IN (SELECT type_code FROM d_songs); 

           SELECT description  FROM d_types  WHERE code = ANY (SELECT type_code FROM d_songs);             SELECT description   FROM d_types   WHERE code <> ALL (SELECT type_code FROM d_songs);             All of the above. (*)                     Correct                  83.  Evaluate this SELECT statement:  SELECT student_id, last_name, first_name  FROM student   WHERE major_id NOT IN      (SELECT major_id       FROM majors       WHERE department_head_id = 30 AND title = 'ADJUNCT');  

  What would happen if the inner query returned a NULL value row?    Mark for Review   (1) Points               A syntax error would be returned.           No rows would be returned from the STUDENT table. (*)           All the rows in the STUDENT table would be displayed.           Only the rows with STUDENT_ID values equal to NULL would be displayed.                     Correct                  84.  Examine the structures of the PARTS and MANUFACTURERS tables:   PARTS:   PARTS_ID VARCHAR2(25)   PK PARTS_NAME VARCHAR2(50)   MANUFACTURERS_ID NUMBER   COST NUMBER(5,2)   PRICE NUMBER(5,2)    

MANUFACTURERS:   ID NUMBER   PK NAME VARCHAR2(30)   LOCATION VARCHAR2(20)     Which SQL statement correctly uses a subquery?    Mark for Review   (1) Points               UPDATE parts SET price = price * 1.15  WHERE manufacturers_id =      (SELECT id       FROM manufacturers       WHERE UPPER(location) IN('ATLANTA ', 'BOSTON ', 'DALLAS '));             SELECT parts_name, price, cost   FROM parts   WHERE manufacturers_id !=      (SELECT id       FROM manufacturers       WHERE LOWER(name) = 'cost plus');             SELECT parts_name, price, cost  

FROM parts   WHERE manufacturers_id IN     (SELECT id       FROM manufacturers m       JOIN part p ON (m.id = p.manufacturers_id));  (*)             SELECT parts_name   FROM      (SELECT AVG(cost)       FROM manufacturers)       WHERE cost > AVG(cost);                       Incorrect. Refer to Section 6                  85.  What is wrong with the following query?   SELECT employee_id, last_name   FROM employees   WHERE salary =     (SELECT MIN(salary) FROM employees GROUP BY department_id);   

 Mark for Review   (1) Points               Single rows contain multiple values and a logical operator is used.           Subquery returns more than one row and single row comparison operator is used. (*)           Subquery references the wrong table in the WHERE clause.           Nothing, it will run without problems.                     Correct                  86.  You need to create a SELECT statement that contains a multiple‐row subquery, which comparison  operator(s) can you use?  Mark for Review   (1) Points               IN, ANY, and ALL (*)           LIKE           BETWEEN...AND...           =, <, and >  

                  Correct                            Section 7 Lesson 1    (Answer all questions in this section)             87.  You have been instructed to add a new customer to the CUSTOMERS table. Because the new  customer has not had a credit check, you should not add an amount to the CREDIT column.   The CUSTOMERS table contains these columns:   CUST_ID NUMBER(10)   COMPANY VARCHAR2(30)   CREDIT NUMBER(10)   POC VARCHAR2(30)   LOCATION VARCHAR2(30)    Which two INSERT statements will accomplish your objective?    Mark for Review   (1) Points              (Choose all correct answers)                INSERT INTO customers (cust_id, company, poc, location)  

VALUES (200, 'InterCargo', 'tflanders', 'samerica');   (*)             INSERT INTO customers   VALUES (200, 'InterCargo', null, 'tflanders', 'samerica');   (*)             INSERT INTO customers   VALUES (cust_id, company, credit, poc, location) (200, 'InterCargo', 0, 'tflanders', 'samerica');              INSERT INTO customers   VALUES (200, InterCargo, 0, tflanders, samerica);                        Correct                 88.  You need to add a row to an existing table. Which DML statement should you use?  Mark for  Review   (1) Points               UPDATE  

        INSERT (*)           DELETE           CREATE                     Correct                  89.  Which statement about the VALUES clause of an INSERT statement is true?  Mark for Review   (1) Points               If no column list is specified, then the values must be in the order the columns are specified in the  table. (*)           The VALUES clause in an INSERT statement is optional.           Character, date, and numeric data must be enclosed within single quotes in the VALUES clause.           To specify a null value in the VALUES clause, use an empty string (' ').                     Correct       

          90.  The PRODUCTS table contains these columns:  PRODUCT_ID NUMBER NOT NULL   PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER NOT NULL  LIST_PRICE NUMBER (7,2)  COST NUMBER (5,2)  QTY_IN_STOCK NUMBER(4)  LAST_ORDER_DT DATE NOT NULL DEFAULT SYSDATE       Which INSERT statement will execute successfully?    Mark for Review   (1) Points               INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, 700); (*)           INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, SYSDATE);           INSERT INTO products(product_id, product_name) VALUES (2958, 'Cable');           INSERT INTO products(product_id, product_name, supplier_id VALUES (2958, 'Cable', 8690, SYSDATE);       91.  You need to remove a row from the EMPLOYEES table. Which statement would you use?  Mark for  Review   (1) Points  

            UPDATE with a WHERE clause           INSERT with a WHERE clause           DELETE with a WHERE clause (*)           MERGE with a WHERE clause                     Correct                  92.  Examine the structures of the PRODUCTS and SUPPLIERS tables:   SUPPLIERS  SUPPLIER_ID NUMBER NOT NULL, Primary Key  SUPPLIER_NAME VARCHAR2 (25)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (11)    PRODUCTS  PRODUCT_ID NUMBER NOT NULL, Primary Key  PRODUCT_NAME VARCHAR2 (25) 

SUPPLIER_ID NUMBER Foreign key to SUPPLIER_ID of the SUPPLIERS table  CATEGORY_ID NUMBER  QTY_PER_UNIT NUMBER  UNIT_PRICE NUMBER (7,2)  QTY_IN_STOCK NUMBER  QTY_ON_ORDER NUMBER  REORDER_LEVEL NUMBER    You want to delete any products supplied by the five suppliers located in Atlanta. Which script should  you use?    Mark for Review   (1) Points               DELETE FROM products   WHERE supplier_id IN      (SELECT supplier_id       FROM suppliers       WHERE UPPER(city) = 'ATLANTA');   (*)             DELETE FROM products   WHERE UPPER(city) = 'ATLANTA';              DELETE FROM products 

WHERE supplier_id =       (SELECT supplier_id       FROM suppliers       WHERE UPPER(city) = 'ATLANTA');              DELETE FROM products   WHERE supplier_id <       (SELECT supplier_id       FROM suppliers       WHERE UPPER(city) = 'ALANTA');                        Correct                  93.  One of the sales representatives, Janet Roper, has informed you that she was recently married, and  she has requested that you update her name in the employee database. Her new last name is Cooper.  Janet is the only person with the last name of Roper that is employed by the company. The EMPLOYEES  table contains these columns and all data is stored in lowercase:   EMPLOYEE_ID NUMBER(10) PRIMARY KEY   LAST_NAME VARCHAR2(20)  FIRST_NAME VARCHAR2(20)  DEPARTMENT_ID NUMBER(10)  HIRE_DATE DATE  SALARY NUMBER(10) 

  Which UPDATE statement will accomplish your objective?   Mark for Review   (1) Points               UPDATE employees  SET last_name = 'cooper'   WHERE last_name = 'roper';   (*)             UPDATE employees last_name = 'cooper'   WHERE last_name = 'roper';             UPDATE employees  SET last_name = 'roper'   WHERE last_name = 'cooper';             UPDATE employees  SET cooper = 'last_name'   WHERE last_name = 'roper';        

              Correct                  94.  You need to update the expiration date of products manufactured before June 30th. In which  clause of the UPDATE statement will you specify this condition?  Mark for Review   (1) Points               the ON clause           the WHERE clause (*)           the SET clause           the USING clause                     Correct                  95.  What would happen if you issued a DELETE statement without a WHERE clause?  Mark for Review   (1) Points               All the rows in the table would be deleted. (*)           An error message would be returned.  

        No rows would be deleted.           Only one row would be deleted.                     Correct                  96.  One of your employees was recently married. Her employee ID is still 189, however, her last name  is now Rockefeller. Which SQL statement will allow you to reflect this change?  Mark for Review   (1) Points               INSERT INTO my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;           INSERT my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;           UPDATE INTO my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;           UPDATE my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189; (*)                     Correct                  97.  Which two commands can be used to modify existing data in a database row?  Mark for Review  

(1) Points              (Choose all correct answers)                DELETE           MERGE (*)           SELECT           UPDATE (*)                     Correct                  98.  What keyword in an UPDATE statement specifies the columns you want to change? Mark for  Review   (1) Points               SELECT           WHERE           SET (*)      

    HAVING                     Incorrect. Refer to Section 7                  99.  You need to update the area code of employees that live in Atlanta . Evaluate this partial UPDATE  statement:  UPDATE employee  SET area_code = 770      Which of the following should you include in your UPDATE statement to achieve the desired results?    Mark for Review   (1) Points               UPDATE city = Atlanta;           SET city = 'Atlanta';           WHERE city = 'Atlanta'; (*)           LIKE 'At%';                     Correct   

              100.  You need to update both the DEPARTMENT_ID and LOCATION_ID columns in the EMPLOYEES  table using one UPDATE statement. Which clause should you include in the UPDATE statement to  update multiple columns?  Mark for Review   (1) Points               the USING clause           the ON clause           the WHERE clause           the SET clause (*)        Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 1 Lesson 1    (Answer all questions in this section)             1.  Which functions can be used to manipulate character, number, and date column values?  Mark for  Review  

(1) Points               CONCAT, RPAD, and TRIM (*)           UPPER, LOWER, and INITCAP           ROUND, TRUNC, and MOD           ROUND, TRUNC, and ADD_MONTHS                     Correct                  2.  You need to display each employee's name in all uppercase letters. Which function should you use?   Mark for Review   (1) Points               CASE           UCASE           UPPER (*)           TOUPPER      

              Correct                  3.  Which three statements about functions are true? (Choose three.)  Mark for Review   (1) Points              (Choose all correct answers)                The SYSDATE function returns the Oracle Server date and time. (*)           The ROUND number function rounds a value to a specified decimal place or the nearest whole  number. (*)           The CONCAT function can only be used on character strings, not on numbers.           The SUBSTR character function returns a portion of a string beginning at a defined character position  to a specified length. (*)                     Incorrect. Refer to Section 1                  4.  Which SQL function can be used to remove heading or trailing characters (or both) from a character  string?  Mark for Review   (1) Points          

    LPAD           CUT           NVL2           TRIM (*)                     Correct                  5.  What will the following SQL statement display?     SELECT last_name, LPAD(salary, 15, '$')SALARY   FROM employees;       Mark for Review   (1) Points               The last name of employees that have a salary that includes a $ in the value, size of 15 and the column  labeled SALARY.           The last name and the format of the salary limited to 15 digits to the left of the decimal and the  column labeled SALARY.  

        The last name and salary for all employees with the format of the salary 15 characters long, left‐ padded with the $ and the column labeled SALARY. (*)           The query will result in an error: "ORA‐00923: FROM keyword not found where expected."                     Incorrect. Refer to Section 1                  6.  You query the database with this SQL statement:     SELECT CONCAT(last_name, (SUBSTR(LOWER(first_name), 4))) "Default Password"   FROM employees;       Which function will be evaluated first?    Mark for Review   (1) Points               CONCAT           SUBSTR           LOWER (*)      

    All three will be evaluated simultaneously.                     Correct                  7.  Evaluate this SELECT statement:    SELECT LENGTH(email)  FROM employees;      What will this SELECT statement display?    Mark for Review   (1) Points               The longest e‐mail address in the EMPLOYEES table.           The email address of each employee in the EMPLOYEES table.           The number of characters for each value in the EMAIL column in the EMPLOYEES table. (*)           The maximum number of characters allowed in the EMAIL column.              

      Correct                            Section 1 Lesson 2    (Answer all questions in this section)             8.  You issue this SQL statement:     SELECT TRUNC(751.367,‐1)   FROM dual;      Which value does this statement display?    Mark for Review   (1) Points               700           750 (*)           751           751.3  

                  Correct                  9.  Which two functions can be used to manipulate number or date column values, but NOT character  column values? (Choose two.)  Mark for Review   (1) Points              (Choose all correct answers)                RPAD           TRUNC (*)           ROUND (*)           INSTR           CONCAT                     Correct                  10.  Which script displays '01‐MAY‐04' when the HIRE_DATE value is '20‐MAY‐04'?  Mark for Review  

(1) Points               SELECT TRUNC(hire_date, 'MONTH')   FROM employees;  (*)             SELECT ROUND(hire_date, 'MONTH')   FROM employees;             SELECT ROUND(hire_date, 'MON')   FROM employees;             SELECT TRUNC(hire_date, 'MI')   FROM employees;                       Correct                  Page 1 of 10    

                 Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 1 Lesson 3    (Answer all questions in this section)             11.  You need to display the number of months between today's date and each employee's hiredate.  Which function should you use?  Mark for Review   (1) Points               ROUND           BETWEEN           ADD_MONTHS           MONTHS_BETWEEN (*)  

                  Correct                  12.  Which of the following SQL statements will correctly display the last name and the number of  weeks employed for all employees in department 90?  Mark for Review   (1) Points               SELECT last_name, (SYSDATE‐hire_date)/7 AS WEEKS   FROM employees   WHERE department_id = 90;  (*)             SELECT last name, (SYSDATE‐hire_date)/7 DISPLAY WEEKS   FROM employees   WHERE department id = 90;             SELECT last_name, # of WEEKS   FROM employees   WHERE department_id = 90;             SELECT last_name, (SYSDATE‐hire_date)AS WEEK  

FROM employees   WHERE department_id = 90;                       Correct                  13.  You want to create a report that displays all orders and their amounts that were placed during the  month of January. You want the orders with the highest amounts to appear first. Which query should  you issue?  Mark for Review   (1) Points               SELECT orderid, total   FROM orders   WHERE order_date LIKE '01‐jan‐02' AND '31‐jan‐02'   ORDER BY total DESC;             SELECT orderid, total   FROM orders   WHERE order_date IN ( 01‐jan‐02 , 31‐jan‐02 )   ORDER BY total;             SELECT orderid, total  

FROM orders   WHERE order_date BETWEEN '01‐jan‐02' AND '31‐jan‐02'   ORDER BY total DESC;  (*)             SELECT orderid, total   FROM orders   WHERE order_date BETWEEN '31‐jan‐02' AND '01‐jan‐02'   ORDER BY total DESC;                       Correct                  14.  The EMPLOYEES table contains these columns:     LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   HIRE_DATE DATE  EVAL_MONTHS NUMBER(3)       Evaluate this SELECT statement:  

    SELECT hire_date + eval_months   FROM employees;     The values returned by this SELECT statement will be of which data type?    Mark for Review   (1) Points               DATE (*)           NUMBER           DATETIME           INTEGER                     Correct                  15.  You need to subtract three months from the current date. Which function should you use?  Mark  for Review   (1) Points               ROUND  

        TO_DATE           ADD_MONTHS (*)           MONTHS_BETWEEN                     Correct                            Section 2 Lesson 1    (Answer all questions in this section)             16.  Which arithmetic operation will return a numeric value?  Mark for Review   (1) Points               TO_DATE('01‐JUN‐2004') ‐ TO_DATE('01‐OCT‐2004') (*)           NEXT_DAY(hire_date) + 5           SYSDATE ‐ 6      

    SYSDATE + 30 / 24                     Correct                  17.  Which best describes the TO_CHAR function?  Mark for Review   (1) Points               The TO_CHAR function can be used to specify meaningful column names in an SQL statement's result  set.           The TO_CHAR function can be used to remove text from column data that will be returned by the  database.           The TO_CHAR function can be used to display dates and numbers according to formatting conventions  that are supported by Oracle. (*)           The TO_CHAR function can only be used on DATE columns.                     Correct                  18.  The EMPLOYEES table contains these columns:     EMPLOYEE_ID NUMBER(9)  

LAST_NAME VARCHAR2 (25)   FIRST_NAME VARCHAR2 (25)   SALARY NUMBER(6)       You need to create a report to display the salaries of all employees. Which script should you use to  display the salaries in format: "$45,000.00"?    Mark for Review   (1) Points               SELECT TO_CHAR(salary, '$999,999')   FROM employees;             SELECT TO_NUM(salary, '$999,990.99')   FROM employees;             SELECT TO_NUM(salary, '$999,999.00')   FROM employees;             SELECT TO_CHAR(salary, '$999,999.00')  FROM employees;  (*)    

                  Correct                  19.  All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a  report that displays each employee's name and salary. Each employee's salary must be displayed in the  following format: $000,000.00. Which function should you include in a SELECT statement to achieve the  desired result?  Mark for Review   (1) Points               TO_CHAR (*)           TO_DATE           TO_NUMBER           CHARTOROWID                     Correct                  20.  Which two statements concerning SQL functions are true? (Choose two.)  Mark for Review   (1) Points              (Choose all correct answers)   

            Character functions can accept numeric input.           Not all date functions return date values. (*)           Number functions can return number or character values.           Conversion functions convert a value from one data type to another data type. (*)           Single‐row functions manipulate groups of rows to return one result per group of rows.                     Incorrect. Refer to Section 2                   Page 2 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL     

     Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 2 Lesson 1    (Answer all questions in this section)             21.  Which SQL Statement should you use to display the prices in this format: "$00.30"?  Mark for  Review   (1) Points               SELECT TO_CHAR(price, '$99,900.99') FROM product; (*)           SELECT TO_CHAR(price, "$99,900.99") FROM product;           SELECT TO_CHAR(price, '$99,990.99') FROM product;           SELECT TO_CHAR(price, $99,900.99) FROM product;                     Correct                            Section 2 Lesson 2  

 (Answer all questions in this section)             22.  Which statement about group functions is true?  Mark for Review   (1) Points               NVL and NVL2, but not COALESCE, can be used with group functions to replace null values.           NVL and COALESCE, but not NVL2, can be used with group functions to replace null values.           NVL, NVL2, and COALESCE can be used with group functions to replace null values. (*)           COALESCE, but not NVL and NVL2, can be used with group functions to replace null values.                     Incorrect. Refer to Section 2                  23.  Which of the following General Functions will return the first non‐null expression in the expression  list?  Mark for Review   (1) Points               NVL           NVL2           NULLIF  

        COALESCE (*)                     Incorrect. Refer to Section 2                  24.  The STYLES table contains this data:     STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL  85940  11.00    758960  SANDAL  86979        Evaluate this SELECT statement:     SELECT style_id, style_name, category, cost   FROM styles   WHERE style_name = 'SANDAL' AND NVL(cost, 0) < 15.00   ORDER BY category, cost;  

  Which result will the query provide?    Mark for Review   (1) Points               STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    758960  SANDAL  86979                 STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85909  12.00    968950 SANDAL  85909  10.00    869506  SANDAL  89690  15.00    758960  SANDAL  86979                 STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85909  12.00    968950  SANDAL  85909  10.00    758960  SANDAL  86979    869506  SANDAL  89690  15.00   

             STYLE_ID  STYLE_NAME  CATEGORY  COST    968950  SANDAL  85909  10.00    895840  SANDAL  85940  12.00    758960  SANDAL  86979      (*)                       Incorrect. Refer to Section 2                            Section 3 Lesson 2    (Answer all questions in this section)             25.  When joining 3 tables in a SELECT statement, how many join conditions are needed in the WHERE  clause?  Mark for Review   (1) Points               0      

    1           2 (*)           3                     Incorrect. Refer to Section 3                  26.  What is the minimum number of join conditions required to join 5 tables together?  Mark for  Review   (1) Points               3           4 (*)           5           One more than the number of tables                     Incorrect. Refer to Section 3               

  27.  You need to create a report that lists all employees in department 10 (Sales) whose salary is not  equal to $25,000 per year. Which query should you issue to accomplish this task?  Mark for Review   (1) Points               SELECT last_name, first_name, salary   FROM employees   WHERE salary > 25000 AND department_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary = 25000 AND department_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary <= 25000 AND department_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary != 25000 AND department_id = 10;  (*)                

      Correct                  28.  The PATIENTS and DOCTORS tables contain these columns:   PATIENTS   PATIENT_ID NUMBER(9)  LAST_NAME VARCHAR2 (20)   FIRST_NAME VARCHAR2 (20)    DOCTORS   DOCTOR_ID NUMBER(9)   LAST_NAME VARCHAR2 (20)   FIRST_NAME VARCHAR2 (20)     You issue this statement:   SELECT patient_id, doctor_id   FROM patients, doctors;     Which result will this statement provide?    Mark for Review   (1) Points               A report containing all possible combinations of the PATIENT_ID and DOCTOR_ID values (*)           A report containing each patient's id value and their doctor's id value  

        A report with NO duplicate PATIENT_ID or DOCTOR_ID values           A syntax error                     Correct                  29.  Which statement about the join syntax of an Oracle Proprietary join syntax SELECT statement is  true?  Mark for Review   (1) Points               The ON keyword must be included.           The JOIN keyword must be included.           The FROM clause represents the join criteria.           The WHERE clause represents the join criteria. (*)                     Incorrect. Refer to Section 3                  30.  What happens when you create a Cartesian product?  Mark for Review  

(1) Points               All rows from one table are joined to all rows of another table (*)           The table is joined to itself, one column to the next column, exhausting all possibilities           The table is joined to another equal table           All rows that do not match in the WHERE clause are displayed                     Correct                   Page 3 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL        

  Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 3 Lesson 4    (Answer all questions in this section)             31.  Using Oracle Proprietary join syntax, which operator would you use after one of the column names  in the WHERE clause when creating an outer join?  Mark for Review   (1) Points               (+) (*)           *           +           =                     Correct                  32.  Which of the following best describes the function of an outer join?  Mark for Review   (1) Points               An outer join will return only those rows that do not meet the join criteria.  

        An outer join will return only data from the far left column in one table and the far right column in the  other table.           An outer join will return data only if both tables contain an identical pair of columns.           An outer join will return all rows that meet the join criteria and will return NULL values from one table  if no rows from the other table satisfy the join criteria. (*)                     Correct                  33.  Evaluate this SELECT statement:   SELECT p.player_id, m.last_name, m.first_name, t.team_name   FROM player p   LEFT OUTER JOIN player m ON (p.manager_id = m.player_id)   LEFT OUTER JOIN team t ON (p.team_id = t.team_id);     Which join is evaluated first?    Mark for Review   (1) Points               the self‐join of the player table (*)           the join between the player table and the team table on TEAM_ID  

        the join between the player table and the team table on MANAGER_ID           the join between the player table and the team table on PLAYER_ID                     Incorrect. Refer to Section 3                            Section 4 Lesson 2    (Answer all questions in this section)             34.  A join between tables where the result set includes matching values from both tables but does  NOT return any unmatched rows could be called which of the following? (Choose three)  Mark for  Review   (1) Points              (Choose all correct answers)                Equijoin (*)           Self join (*)           Nonequijoin  

        Simple join (*)           Full outer join                     Correct                  35.  The following SQL statement will produce what output?  SELECT last_name, department_name   FROM employees   CROSS JOIN departments;     Mark for Review   (1) Points               The missing rows from the join condition.           The last_name and department name from the employee table.           A Cartesian product between the two tables. (*)           A cross referenced result omitting similar fields from the two tables.      

              Correct                  36.  Which statement about a natural join is true?  Mark for Review   (1) Points               Columns with the same names must have identical data types.           Columns with the same names must have the same precision and datatype. (*)           Columns with the same names must have compatible data types.           Columns with the same names cannot be included in the SELECT list of the query.                     Correct                            Section 4 Lesson 3    (Answer all questions in this section)             37.  Which keyword in a SELECT statement creates an equijoin by specifying a column name common  to both tables?  Mark for Review  

(1) Points               A HAVING clause           The FROM clause           The SELECT clause           A USING clause (*)                     Correct                  38.  The primary advantage of using JOIN ON is:  Mark for Review   (1) Points               The join happens automatically based on matching column names and data types           It will display rows that do not meet the join condition           It permits columns with different names to be joined (*)           It permits columns that don't have matching data types to be joined      

              Correct                  39.  Which of the following statements is the simplest description of a nonequijoin?  Mark for Review   (1) Points               A join condition containing something other than an equality operator (*)           A join condition that is not equal to other joins.           A join condition that includes the (+) on the left hand side.           A join that joins a table to itself                     Correct                  40.  Evaluate this SELECT statement:    SELECT a.last_name || ', ' || a.first_name as "Patient", b.last_name || ', ' || b.first_name as "Physician",  c.admission   FROM patient a   JOIN physician b   ON (b.physician_id = c.physician_id)  

JOIN admission c   ON (a.patient_id = c.patient_id);     Which clause generates an error?    Mark for Review   (1) Points               JOIN physician b           ON (b.physician_id = c.physician_id) (*)           JOIN admission c           ON (a.patient_id = c.patient_id)                     Correct                   Page 4 of 10                

     Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 4 Lesson 4    (Answer all questions in this section)             41.  Which two sets of join keywords create a join that will include unmatched rows from the first table  specified in the SELECT statement?  Mark for Review   (1) Points               LEFT OUTER JOIN and FULL OUTER JOIN (*)           RIGHT OUTER JOIN and LEFT OUTER JOIN           USING and HAVING           OUTER JOIN and USING                     Correct       

          42.  Which query will retrieve all the rows in the EMPLOYEES table, even if there is no match in the  DEPARTMENTS table?  Mark for Review   (1) Points               SELECT e.last_name, e.department_id, d.department_name   FROM employees e   RIGHT OUTER JOIN departments d ON (e.department_id = d.department_id);              SELECT e.last_name, e.department_id, d.department_name   FROM employees e   NATURAL JOIN departments d;              SELECT e.last_name, e.department_id, d.department_name   FROM employees e  LEFT OUTER JOIN departments d ON (e.department_id = d.department_id);   (*)             SELECT e.last_name, e.department_id, d.department_name   FROM employees e   JOIN departments d USING (e.department_id = d.department_id);         

              Correct                  43.  You need to display all the rows from both the EMPLOYEES and EMPLOYEE_HISTS tables. Which  type of join would you use?  Mark for Review   (1) Points               a right outer join           a left outer join           a full outer join (*)           an inner join                     Correct                            Section 5 Lesson 1    (Answer all questions in this section)             44.  Which statement about the GROUP BY clause is true?  Mark for Review  

(1) Points               The first column listed in the GROUP BY clause is the most major grouping. (*)           The last column listed in the GROUP BY clause is the most major grouping.           The GROUP BY clause can contain an aggregate function.           A GROUP BY clause cannot be used without an ORDER BY clause.                     Correct                  45.  What is the best explanation as to why this SQL statement will NOT execute?   SELECT department_id "Department", AVG (salary)"Average"   FROM employees   GROUP BY Department;    Mark for Review   (1) Points               Salaries cannot be averaged as not all the numbers will divide evenly.           You cannot use a column alias in the GROUP BY clause. (*)      

    The GROUP BY clause must have something to GROUP.           The department id is not listed in the departments table.                     Correct                  46.  What will the following SQL Statement do?   SELECT job_id, COUNT(*)   FROM employees   GROUP BY job_id;     Mark for Review   (1) Points               Displays all the employees and groups them by job.           Displays each job id and the number of people assigned to that job id. (*)           Displays only the number of job_ids.           Displays all the jobs with as many people as there are jobs.              

      Correct                  47.  Evaluate this SELECT statement:     SELECT MIN(hire_date), department_id   FROM employees   GROUP BY department_id;     Which values are displayed?    Mark for Review   (1) Points               The earliest hire date in each department. (*)           The the earliest hire date in the EMPLOYEES table.           The latest hire date in the EMPLOYEES table.           The hire dates in the EMPLOYEES table that contain NULL values.                     Correct               

            Section 5 Lesson 2    (Answer all questions in this section)             48.  Which group function would you use to display the average price of all products in the PRODUCTS  table?  Mark for Review   (1) Points               SUM           AVG (*)           COUNT           MAX                     Correct                  49.  You need to compute the total salary for all employees in department 10. Which group function  will you use?  Mark for Review   (1) Points               MAX  

        SUM (*)           VARIANCE           COUNT                     Incorrect. Refer to Section 5                  50.  Which group function would you use to display the total of all salary values in the EMPLOYEE  table?  Mark for Review   (1) Points               SUM (*)           AVG           COUNT           MAX                     Correct       

           Page 5 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 5 Lesson 2    (Answer all questions in this section)             51.  You need to calculate the standard deviation for the cost of products produced in the Birmingham  facility. Which group function will you use?  Mark for Review   (1) Points               STDEV           STDDEV (*)      

    VAR_SAMP           VARIANCE                     Correct                  52.  Which group function would you use to display the highest salary value in the EMPLOYEE table?   Mark for Review   (1) Points               AVG           COUNT           MAX (*)           MIN                     Correct                  53.  The VENDORS table contains these columns:   VENDOR_ID NUMBER Primary Key  

NAME VARCHAR2(30)   LOCATION_ID NUMBER   ORDER_DT DATE   ORDER_AMOUNT NUMBER(8,2)     Which two clauses represent valid uses of aggregate functions for this table?    Mark for Review   (1) Points              (Choose all correct answers)                FROM MAX(order_dt)           SELECT SUM(order_dt)           SELECT SUM(order_amount) (*)           WHERE MAX(order_dt) = order_dt           SELECT MIN(AVG(order_amount)) (*)                     Incorrect. Refer to Section 5               

  54.  The PRODUCTS table contains these columns:  PROD_ID NUMBER(4)   PROD_NAME VARCHAR2(30)  PROD_CAT VARCHAR2(30)  PROD_PRICE NUMBER(3)   PROD_QTY NUMBER(4)    The following statement is issued:     SELECT AVG(prod_price, prod_qty)   FROM products;     What happens when this statement is issued?    Mark for Review   (1) Points               Both the average price and the average quantity of the products are returned.           Only the average quantity of the products is returned.           The values in the PROD_PRICE column and the PROD_QTY column are averaged together.           An error occurs. (*)              

      Correct                  55.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        You need to determine the average payment amount made by each customer in January, February and  March of 2003. Which SELECT statement should you use?    Mark for Review   (1) Points               SELECT AVG(payment_amount)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '31‐MAR‐2003';   (*)             SELECT AVG(payment_amount)   FROM payment;             SELECT SUM(payment_amount)  

FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' and '31‐MAR‐2003';             SELECT AVG(payment_amount)   FROM payment   WHERE TO_CHAR(payment_date) IN (JAN, FEB, MAR);                        Correct                            Section 5 Lesson 3    (Answer all questions in this section)             56.  Evaluate this SQL statement:   SELECT COUNT (amount)   FROM inventory;     What will occur when the statement is issued?    Mark for Review   (1) Points  

            The statement will return the greatest value in the INVENTORY table.           The statement will return the total number of rows in the AMOUNT column.           The statement will replace all NULL values that exist in the AMOUNT column.           The statement will count the number of rows in the INVENTORY table where the AMOUNT column is  not null. (*)                     Correct                  57.  The STYLES table contains this data:   STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL  85940  11.00    758960  SANDAL  86979        You issue this SELECT statement: 

  SELECT COUNT(category)  FROM styles;     Which value is displayed?    Mark for Review   (1) Points               0           6           7 (*)           The statement will NOT execute successfully.                     Correct                  58.  Which statement about the COUNT function is true?  Mark for Review   (1) Points               The COUNT function ignores duplicates by default.      

    The COUNT function always ignores null values by default. (*)           The COUNT function can be used to find the maximum value in each column.           The COUNT function can be used to determine the number of unique, non‐null values in a column.                     Correct                  59.  Evaluate this SELECT statement:  SELECT COUNT(*)   FROM products;     Which statement is true?    Mark for Review   (1) Points               The number of rows in the table is displayed. (*)           The number of unique PRODUCT_IDs in the table is displayed.           An error occurs due to an error in the SELECT clause.           An error occurs because no WHERE clause is included in the SELECT statement.  

                  Incorrect. Refer to Section 5                            Section 6 Lesson 1    (Answer all questions in this section)             60.  The PRODUCTS table contains these columns:   PRODUCT_ID NUMBER(9) PK   CATEGORY_ID VARCHAR2(10)   LOCATION_ID NUMBER(9)   DESCRIPTION VARCHAR2(30)   COST NUMBER(7,2)   PRICE NUMBER(7,2)  QUANTITY NUMBER    You display the total of the extended costs for each product category by location. You need to include  only the products that have a price less than $25.00. The extended cost of each item equals the quantity  value multiplied by the cost value.   Which SQL statement will display the desired result?   Mark for Review   (1) Points          

    SELECT category_id, SUM(cost * quantity) TOTAL,location_id   FROM products   WHERE price > 25.00   GROUP BY category_id, location_id;             SELECT SUM(cost * quantity) TOTAL, location_id   FROM products   WHERE price < 25.00   GROUP BY location_id;             SELECT category_id, SUM(cost * quantity) TOTAL, location_id   FROM products   WHERE price < 25.00   GROUP BY category_id, location_id;  (*)             SELECT SUM(cost * quantity) TOTAL  FROM products   WHERE price < 25.00;                

      Correct                   Page 6 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 1    (Answer all questions in this section)             61.  Which statement about the GROUP BY clause is true?  Mark for Review   (1) Points               To exclude rows before dividing them into groups using the GROUP BY clause, you should use a  WHERE clause. (*)      

    You can use a column alias in a GROUP BY clause.           By default, rows are not sorted when a GROUP BY clause is used.           You must use the HAVING clause with the GROUP BY clause.                     Correct                  62.  The MANUFACTURER table contains these columns:   MANUFACTURER_ID NUMBER   MANUFACTURER_NAME VARCHAR2(30)   TYPE VARCHAR2(25)   LOCATION_ID NUMBER    You need to display the number of unique types of manufacturers at each location. Which SELECT  statement should you use?    Mark for Review   (1) Points               SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer   GROUP BY location_id;  (*)    

        SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer;             SELECT location_id, COUNT(type)   FROM manufacturer   GROUP BY location_id;             SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer   GROUP BY type;                       Correct                  63.  Evaluate this SELECT statement:   SELECT SUM(salary), department_id, manager_id  FROM employees   GROUP BY department_id, manager_id;     Which SELECT statement clause allows you to restrict the rows returned, based on a group function?  

 Mark for Review   (1) Points               HAVING SUM(salary) > 100000 (*)           WHERE SUM(salary) > 100000           WHERE salary > 100000           HAVING salary > 100000                     Correct                  64.  The EMPLOYEES table contains the following columns:   EMPLOYEE_ID NUMBER(10) PRIMARY KEY   LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)  DEPARTMENT VARCHAR2(20)   HIRE_DATE DATE   SALARY NUMBER(10)     You want to create a report that includes each employee's last name, employee identification number,  date of hire and salary. The report should include only those employees who have been with the  company for more than one year and whose salary exceeds $40,000.  

Which of the following SELECT statements will accomplish this task?   Mark for Review   (1) Points               SELECT employee_id, last_name, salary   FROM employees   WHERE salary > 40000   AND hire_date = (SELECT hire_date FROM employees   WHERE (sysdate‐hire_date) / 365 > 1);             SELECT employee_id, last_name, hire_date, salary   FROM employees   WHERE salary > 40000   AND hire_date = (SELECT hire_date FROM employees   WHERE (sysdate‐hire_date) / 365 > 1);             SELECT employee_id, last_name, hire_date, salary   FROM employees   WHERE salary > 40000   AND (sysdate‐hire_date) / 365 > 1;  (*)        

    SELECT employee_id, last_name, salary   FROM employees   WHERE salary > 40000   AND hire_date IN (sysdate‐hire_date) / 365 > 1);                       Incorrect. Refer to Section 6                  65.  What is the correct order of clauses in a SELECT statement?  Mark for Review   (1) Points               SELECT   FROM   WHERE   ORDER BY   HAVING             SELECT   FROM   HAVING   GROUP BY   WHERE 

ORDER BY              SELECT   FROM   WHERE  GROUP BY   HAVING   ORDER BY  (*)             SELECT   FROM   WHERE   HAVING   ORDER BY   GROUP BY                       Correct                  66.  Evaluate this SELECT statement:  

SELECT COUNT(employee_id), department_id   FROM employees   GROUP BY department_id;     You only want to include employees who earn more than 15000.   Which clause should you include in the SELECT statement?   Mark for Review   (1) Points               WHERE salary > 15000 (*)           HAVING salary > 15000           WHERE SUM(salary) > 15000           HAVING SUM(salary) > 15000                     Incorrect. Refer to Section 6                  67.  The EMPLOYEES table contains these columns:   ID_NUMBER NUMBER Primary Key   NAME VARCHAR2 (30)   DEPARTMENT_ID NUMBER  

SALARY NUMBER (7,2)   HIRE_DATE DATE    Evaluate this SQL statement:     SELECT id_number, name, hire_date, department_id, SUM(salary)   FROM employees   WHERE salary > 25000   GROUP BY department_id, id_number, name   ORDER BY hire_date;     Why will this statement cause an error?    Mark for Review   (1) Points               The HAVING clause is missing.           The WHERE clause contains a syntax error.           The SALARY column is NOT included in the GROUP BY clause.           The HIRE_DATE column is NOT included in the GROUP BY clause. (*)                     Incorrect. Refer to Section 6   

                        Section 6 Lesson 2    (Answer all questions in this section)             68.  The EMPLOYEES and ORDERS tables contain these columns:   EMPLOYEES  EMPLOYEE_ID NUMBER(10) NOT NULL PRIMARY KEY   FIRST_NAME VARCHAR2(30)  LAST_NAME VARCHAR2(30)  ADDRESS VARCHAR2(25)  CITY VARCHAR2(20)  STATE VARCHAR2(2)   ZIP NUMBER(9)  TELEPHONE NUMBER(10)     ORDERS   ORDER_ID NUMBER(10) NOT NULL PRIMARY KEY   EMPLOYEE_ID NUMBER(10) NOT NULL FOREIGN KEY  ORDER_DATE DATE  TOTAL NUMBER(10)     Which SELECT statement will return all orders generated by a sales representative named Franklin  during the year 2001?  

 Mark for Review   (1) Points               SELECT order_id, total   FROM ORDERS (SELECT employee_id FROM employees WHERE last_name = 'Franklin')   WHERE order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01';              SELECT (SELECT employee_id FROM employees WHERE last_name = 'Franklin') AND order_id, total   FROM ORDERS   WHERE order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01';              SELECT order_id, employee_id, total   FROM ORDERS   WHERE order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01' AND emp_id = 'Franklin';              SELECT order_id, total   FROM ORDERS  WHERE employee_id = (SELECT employee_id FROM employees WHERE last_name = 'Franklin')   AND order_date BETWEEN '01‐jan‐01' AND '31‐dec‐01';   (*)        

              Incorrect. Refer to Section 6                  69.  The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns:   TEACHERS  TEACHER_ID NUMBER(5) Primary Key  NAME VARCHAR2 (25)   SUBJECT_ID NUMBER(5)       CLASS_ASSIGNMENTS  CLASS_ID NUMBER (5) Primary Key   TEACHER_ID NUMBER (5)  START_DATE DATE  MAX_CAPACITY NUMBER (3)    All MAX_CAPACITY values are greater than 10. Which two SQL statements correctly use subqueries?  (Choose two.)    Mark for Review   (1) Points              (Choose all correct answers)                SELECT *   FROM class_assignments  

WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments);  (*)             SELECT *   FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE class_id = 45963);   (*)             SELECT *   FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);              SELECT *   FROM teachers   WHERE teacher_id LIKE (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);              SELECT *   FROM class_assignments   WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments GROUP BY teacher_id);         

              Incorrect. Refer to Section 6                  70.  Which operator can be used with subqueries that return only one row?  Mark for Review   (1) Points               LIKE (*)           ANY           ALL           IN                     Incorrect. Refer to Section 6                   Page 7 of 10                

     Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 2    (Answer all questions in this section)             71.  Which of the following is TRUE regarding the order of subquery execution?  Mark for Review   (1) Points               The outer query is executed first           The subquery executes once after the main query           The subquery executes once before the main query (*)           The result of the main query is used with the subquery                     Correct       

          72.  You need to create a report to display the names of products with a cost value greater than the  average cost of all products. Which SELECT statement should you use?  Mark for Review   (1) Points               SELECT product_name  FROM products   WHERE cost > (SELECT AVG(cost) FROM product);   (*)             SELECT product_name   FROM products  WHERE cost > AVG(cost);             SELECT AVG(cost), product_name   FROM products  WHERE cost > AVG(cost)   GROUP by product_name;              SELECT product_name   FROM (SELECT AVG(cost) FROM product)   WHERE cost > AVG(cost);     

                  Correct                            Section 6 Lesson 3    (Answer all questions in this section)             73.  Which statement about the <> operator is true?  Mark for Review   (1) Points               The <> operator is NOT a valid SQL operator.           The <> operator CANNOT be used in a single‐row subquery.           The <> operator returns the same result as the ANY operator in a subquery.           The <> operator can be used when a single‐row subquery returns only one row. (*)                     Correct               

  74.  Examine the following EMPLOYEES table:   EMPLOYEES  EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2(25)  FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)  SUPERVISOR_ID NUMBER(9)     You need to produce a report that contains all employee‐related information for those employees who  have Brad Carter as a supervisor. However, you are not sure which supervisor ID belongs to Brad Carter.  Which query should you issue to accomplish this task?    Mark for Review   (1) Points               SELECT *   FROM employees   WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');              SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT supervisor_id  

     FROM employees        WHERE last_name = 'Carter');              SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT employee_id        FROM supervisors        WHERE last_name = 'Carter');             SELECT *   FROM employees  WHERE supervisor_id =        (SELECT employee_id        FROM employees        WHERE last_name = 'Carter');   (*)                       Incorrect. Refer to Section 6               

  75.  Which best describes a single‐row subquery?  Mark for Review   (1) Points               a query that returns only one row from the inner SELECT statement (*)           a query that returns one or more rows from the inner SELECT statement           a query that returns only one column value from the inner SELECT statement           a query that returns one or more column values from the inner SELECT statement                     Incorrect. Refer to Section 6                            Section 6 Lesson 4    (Answer all questions in this section)             76.  You are looking for Executive information using a subquery. What will the following SQL statement  display?   SELECT department_id, last_name, job_id   FROM employees   WHERE department_id IN      (SELECT department_id  

    FROM departments       WHERE department_name = 'Executive');    Mark for Review   (1) Points               The department ID, department name and last name for every employee in the Executive  department.           The department ID, last name, department name for every Executive in the employees table.           The department ID, last name, job ID from departments for Executive employees.           The department ID, last name, job ID for every employee in the Executive department. (*)                     Correct                  77.  A multiple‐row operator expects how many values?  Mark for Review   (1) Points               One or more (*)           Only one           Two or more  

        None                     Correct                  78.  Evaluate this SELECT statement:  SELECT customer_id, name   FROM customer   WHERE customer_id IN      (SELECT customer_id       FROM customer       WHERE state_id = 'GA' AND credit_limit > 500.00);     What would happen if the inner query returned null?    Mark for Review   (1) Points               An error would be returned.           No rows would be returned by the outer query. (*)           All the rows in the table would be selected.      

    Only the rows with CUSTOMER_ID values equal to null would be selected.                     Correct                  79.  Which operator or keyword cannot be used with a multiple‐row subquery?  Mark for Review   (1) Points               ALL           ANY           = (*)           >                     Correct                  80.  Examine the structures of the PARTS and MANUFACTURERS tables:   PARTS:   PARTS_ID VARCHAR2(25)   PK PARTS_NAME VARCHAR2(50)  

MANUFACTURERS_ID NUMBER   COST NUMBER(5,2)   PRICE NUMBER(5,2)     MANUFACTURERS:   ID NUMBER   PK NAME VARCHAR2(30)   LOCATION VARCHAR2(20)     Which SQL statement correctly uses a subquery?    Mark for Review   (1) Points               UPDATE parts SET price = price * 1.15  WHERE manufacturers_id =      (SELECT id       FROM manufacturers       WHERE UPPER(location) IN('ATLANTA ', 'BOSTON ', 'DALLAS '));             SELECT parts_name, price, cost   FROM parts   WHERE manufacturers_id !=      (SELECT id       FROM manufacturers  

    WHERE LOWER(name) = 'cost plus');             SELECT parts_name, price, cost   FROM parts   WHERE manufacturers_id IN     (SELECT id       FROM manufacturers m       JOIN part p ON (m.id = p.manufacturers_id));  (*)             SELECT parts_name   FROM      (SELECT AVG(cost)       FROM manufacturers)       WHERE cost > AVG(cost);                       Correct                   Page 8 of 10    

                 Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 4    (Answer all questions in this section)             81.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        This statement fails when executed:     SELECT customer_id, payment_type  

FROM payment   WHERE payment_id =      (SELECT payment_id       FROM payment       WHERE payment_amount = 596.00 OR payment_date = '20‐MAR‐2003');     Which change could correct the problem?    Mark for Review   (1) Points               Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)           Remove the quotes surrounding the date value in the OR clause.           Remove the parentheses surrounding the nested SELECT statement.           Change the comparison operator to a single‐row operator.                     Incorrect. Refer to Section 6                  82.  Which statement about the ANY operator when used with a multiple‐row subquery is true?  Mark  for Review   (1) Points          

    The ANY operator compares every value returned by the subquery. (*)           The ANY operator can be used with the DISTINCT keyword.           The ANY operator is a synonym for the ALL operator.           The ANY operator can be used with the LIKE and IN operators.                     Incorrect. Refer to Section 6                  83.  Evaluate this SELECT statement:  SELECT player_id, name   FROM players   WHERE team_id IN      (SELECT team_id       FROM teams       WHERE team_id > 300 AND salary_cap > 400000);     What would happen if the inner query returned a NULL value?    Mark for Review   (1) Points               No rows would be returned by the outer query. (*)  

        A syntax error in the outer query would be returned.           A syntax error in the inner query would be returned.           All the rows in the PLAYER table would be returned by the outer query.                     Incorrect. Refer to Section 6                  84.  Evaluate this SELECT statement that includes a subquery:  SELECT last_name, first_name   FROM customer  WHERE area_code IN       (SELECT area_code FROM sales WHERE salesperson_id = 20);     Which statement is true about the given subquery?    Mark for Review   (1) Points               The outer query executes before the nested subquery.           The results of the inner query are returned to the outer query. (*)      

    An error occurs if the either the inner or outer queries do not return a value.           Both the inner and outer queries must return a value, or an error occurs.                     Correct                  85.  Which statement about single‐row and multiple‐row subqueries is true?  Mark for Review   (1) Points               Multiple‐row subqueries cannot be used with the LIKE operator. (*)           Single‐row operators can be used with both single‐row and multiple‐row subqueries.           Multiple‐row subqueries can be used with both single‐row and multiple‐row operators.           Multiple‐row subqueries can only be used in SELECT statements.                     Correct                  86.  You need to create a SELECT statement that contains a multiple‐row subquery, which comparison  operator(s) can you use?  Mark for Review   (1) Points  

            IN, ANY, and ALL (*)           LIKE           BETWEEN...AND...           =, <, and >                     Correct                            Section 7 Lesson 1    (Answer all questions in this section)             87.  The PRODUCTS table contains these columns:  PRODUCT_ID NUMBER NOT NULL   PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER NOT NULL  LIST_PRICE NUMBER (7,2)  COST NUMBER (5,2)  QTY_IN_STOCK NUMBER(4) 

LAST_ORDER_DT DATE NOT NULL DEFAULT SYSDATE       Which INSERT statement will execute successfully?    Mark for Review   (1) Points               INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, 700); (*)           INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, SYSDATE);           INSERT INTO products(product_id, product_name) VALUES (2958, 'Cable');           INSERT INTO products(product_id, product_name, supplier_id VALUES (2958, 'Cable', 8690, SYSDATE);                     Correct                  88.  The PRODUCTS table contains these columns:   PROD_ID NUMBER(4)  PROD_NAME VARCHAR2(25)  PROD_PRICE NUMBER(3)    You want to add the following row data to the PRODUCTS table:  

(1) a NULL value in the PROD_ID column   (2) "6‐foot nylon leash" in the PROD_NAME column   (3) "10" in the PROD_PRICE column     You issue this statement:    INSERT INTO products   VALUES (null,'6‐foot nylon leash', 10);    What row data did you add to the table?    Mark for Review   (1) Points               The row was created with the correct data in all three columns. (*)           The row was created with the correct data in two of three columns.           The row was created with the correct data in one of the three columns.           The row was created completely wrong. No data ended up in the correct columns.                     Correct               

  89.  Using the INSERT statement, and assuming that a column can accept null values, how can you  implicitly insert a null value in a column?  Mark for Review   (1) Points               Use the NULL keyword.           Use the ON clause           Omit the column in the column list. (*)           It is not possible to implicitly insert a null value in a column.                     Correct                  90.  You have been instructed to add a new customer to the CUSTOMERS table. Because the new  customer has not had a credit check, you should not add an amount to the CREDIT column.   The CUSTOMERS table contains these columns:   CUST_ID NUMBER(10)   COMPANY VARCHAR2(30)   CREDIT NUMBER(10)   POC VARCHAR2(30)   LOCATION VARCHAR2(30)    Which two INSERT statements will accomplish your objective?  

 Mark for Review   (1) Points              (Choose all correct answers)                INSERT INTO customers (cust_id, company, poc, location)   VALUES (200, 'InterCargo', 'tflanders', 'samerica');   (*)             INSERT INTO customers   VALUES (200, 'InterCargo', null, 'tflanders', 'samerica');   (*)             INSERT INTO customers   VALUES (cust_id, company, credit, poc, location) (200, 'InterCargo', 0, 'tflanders', 'samerica');              INSERT INTO customers   VALUES (200, InterCargo, 0, tflanders, samerica);                        Correct  

               Page 9 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 7 Lesson 2    (Answer all questions in this section)             91.  You need to update the area code of employees that live in Atlanta . Evaluate this partial UPDATE  statement:  UPDATE employee  SET area_code = 770      Which of the following should you include in your UPDATE statement to achieve the desired results?  

 Mark for Review   (1) Points               UPDATE city = Atlanta;           SET city = 'Atlanta';           WHERE city = 'Atlanta'; (*)           LIKE 'At%';                     Incorrect. Refer to Section 7                  92.  What would happen if you issued a DELETE statement without a WHERE clause?  Mark for Review   (1) Points               All the rows in the table would be deleted. (*)           An error message would be returned.           No rows would be deleted.           Only one row would be deleted.  

                  Correct                  93.  Which of the following represents the correct syntax for an INSERT statement?  Mark for Review   (1) Points               INSERT VALUES INTO customers (3178 J. Smith 123 Main Street Nashville TN 37777;           INSERT INTO customers VALUES '3178' 'J.' 'Smith' '123 Main Street' 'Nashville' 'TN' '37777';           INSERT INTO customers VALUES (3178, 'J.', 'Smith', '123 Main Street', 'Nashville', 'TN', '37777'); (*)           INSERT customers VALUES 3178, J., Smith, 123 Main Street, Nashville, TN, 37777;                     Incorrect. Refer to Section 7                  94.  The EMPLOYEES table contains the following columns:   EMPLOYEE_ID NUMBER(10) PRIMARY KEY   LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)  DEPARTMENT_ID NUMBER(10) 

HIRE_DATE DATE   SALARY NUMBER(9,2)   BONUS NUMBER(9,2)     You want to execute one DML statement to change the salary of all employees in department 10 to  equal the new salary of employee id 89898. Currently, all employees in department 10 have the same  salary value. Which statement should you execute?    Mark for Review   (1) Points               UPDATE employees   SET salary = SELECT salary   FROM employees   WHERE employee_id = 89898;             UPDATE employees   SET salary = (SELECT salary FROM employees WHERE employee_id = 89898);             UPDATE employees  SET salary = (SELECT salary FROM employees WHERE employee_id = 89898)   WHERE department_id = 10;   (*)        

    UPDATE employees   SET salary = (SELECT salary FROM employees WHERE employee_id = 89898 AND department_id = 10);                       Incorrect. Refer to Section 7                  95.  What keyword in an UPDATE statement specifies the columns you want to change? Mark for  Review   (1) Points               SELECT           WHERE           SET (*)           HAVING                     Incorrect. Refer to Section 7                  96.  You need to update both the DEPARTMENT_ID and LOCATION_ID columns in the EMPLOYEES table  using one UPDATE statement. Which clause should you include in the UPDATE statement to update  multiple columns?  Mark for Review  

(1) Points               the USING clause           the ON clause           the WHERE clause           the SET clause (*)                     Correct                  97.  One of the sales representatives, Janet Roper, has informed you that she was recently married, and  she has requested that you update her name in the employee database. Her new last name is Cooper.  Janet is the only person with the last name of Roper that is employed by the company. The EMPLOYEES  table contains these columns and all data is stored in lowercase:   EMPLOYEE_ID NUMBER(10) PRIMARY KEY   LAST_NAME VARCHAR2(20)  FIRST_NAME VARCHAR2(20)  DEPARTMENT_ID NUMBER(10)  HIRE_DATE DATE  SALARY NUMBER(10)    Which UPDATE statement will accomplish your objective?   Mark for Review  

(1) Points               UPDATE employees  SET last_name = 'cooper'   WHERE last_name = 'roper';   (*)             UPDATE employees last_name = 'cooper'   WHERE last_name = 'roper';             UPDATE employees  SET last_name = 'roper'   WHERE last_name = 'cooper';             UPDATE employees  SET cooper = 'last_name'   WHERE last_name = 'roper';                       Incorrect. Refer to Section 7       

          98.  The PLAYERS table contains these columns:  PLAYER_ID NUMBER NOT NULL  PLAYER_LNAME VARCHAR2(20) NOT NULL  PLAYER_FNAME VARCHAR2(10) NOT NULL   TEAM_ID NUMBER   SALARY NUMBER(9,2)     You need to increase the salary of each player for all players on the Tiger team by 12.5 percent. The  TEAM_ID value for the Tiger team is 5960. Which statement should you use?    Mark for Review   (1) Points               UPDATE players (salary) SET salary = salary * 1.125;           UPDATE players SET salary = salary * .125 WHERE team_id = 5960;           UPDATE players SET salary = salary * 1.125 WHERE team_id = 5960; (*)           UPDATE players (salary) VALUES(salary * 1.125) WHERE team_id = 5960;                     Correct               

  99.  You need to delete a record in the EMPLOYEES table for Tim Jones, whose unique employee  identification number is 348. The EMPLOYEES table contains these columns:  EMPLOYEE_ID NUMBER(5) PRIMARY KEY  LAST_NAME VARCHAR2(20)  FIRST_NAME VARCHAR2(20)  ADDRESS VARCHAR2(30)  PHONE NUMBER(10)    Which DELETE statement will delete the appropriate record without deleting any additional records?    Mark for Review   (1) Points               DELETE FROM employees WHERE employee_id = 348; (*)           DELETE FROM employees WHERE last_name = jones;           DELETE * FROM employees WHERE employee_id = 348;           DELETE 'jones' FROM employees;                     Incorrect. Refer to Section 7                  100.  When the WHERE clause is missing in a DELETE statement, what is the result?  Mark for Review   (1) Points  

            All rows are deleted from the table. (*)           The table is removed from the database.           An error message is displayed indicating incorrect syntax.           Nothing. The statement will not execute.                     Incorrect. Refer to Section 7                   Page 10 of 10                     Test: Mid Term Exam ‐ Database Programming with SQL          

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 1 Lesson 1    (Answer all questions in this section)             1.  What will the following SQL statement display?     SELECT last_name, LPAD(salary, 15, '$')SALARY   FROM employees;       Mark for Review   (1) Points               The last name of employees that have a salary that includes a $ in the value, size of 15 and the column  labeled SALARY.           The last name and the format of the salary limited to 15 digits to the left of the decimal and the  column labeled SALARY.           The last name and salary for all employees with the format of the salary 15 characters long, left‐ padded with the $ and the column labeled SALARY. (*)           The query will result in an error: "ORA‐00923: FROM keyword not found where expected."                     Correct   

              2.  You issue this SQL statement:     SELECT INSTR ('organizational sales', 'al')   FROM dual;       Which value is returned by this command?    Mark for Review   (1) Points               1           2           13 (*)           17                     Correct                  3.  Which functions can be used to manipulate character, number, and date column values?  Mark for  Review  

(1) Points               CONCAT, RPAD, and TRIM (*)           UPPER, LOWER, and INITCAP           ROUND, TRUNC, and MOD           ROUND, TRUNC, and ADD_MONTHS                     Incorrect. Refer to Section 1                  4.  The STYLES table contains this data:    STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL 85940  11.00    758960  SANDAL  86979 12.00     

  You query the database and return the value 79. Which script did you use?    Mark for Review   (1) Points               SELECT INSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;              SELECT INSTR(category, ‐2,2)   FROM styles   WHERE style_id = 895840;              SELECT SUBSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;             SELECT SUBSTR(category, ‐2,2)   FROM styles   WHERE style_id = 758960;  (*)    

                  Correct                  5.  Which SQL function can be used to remove heading or trailing characters (or both) from a character  string?  Mark for Review   (1) Points               LPAD           CUT           NVL2           TRIM (*)                     Correct                  6.  Evaluate this SELECT statement:    SELECT LENGTH(email)  FROM employees;   

  What will this SELECT statement display?    Mark for Review   (1) Points               The longest e‐mail address in the EMPLOYEES table.           The email address of each employee in the EMPLOYEES table.           The number of characters for each value in the EMAIL column in the EMPLOYEES table. (*)           The maximum number of characters allowed in the EMAIL column.                     Correct                  7.  You need to display each employee's name in all uppercase letters. Which function should you use?   Mark for Review   (1) Points               CASE           UCASE           UPPER (*)  

        TOUPPER                     Correct                            Section 1 Lesson 2    (Answer all questions in this section)             8.  Which comparison operator retrieves a list of values?  Mark for Review   (1) Points               IN (*)           LIKE           BETWEEN...IN...           IS NULL                     Correct   

              9.  Evaluate this function: MOD (25, 2) Which value is returned?  Mark for Review   (1) Points               1 (*)           2           25           0                     Correct                  10.  Which script displays '01‐MAY‐04' when the HIRE_DATE value is '20‐MAY‐04'?  Mark for Review   (1) Points               SELECT TRUNC(hire_date, 'MONTH')   FROM employees;  (*)        

    SELECT ROUND(hire_date, 'MONTH')   FROM employees;             SELECT ROUND(hire_date, 'MON')   FROM employees;             SELECT TRUNC(hire_date, 'MI')   FROM employees;                       Correct                  Page 1 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL  

        Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 1 Lesson 3    (Answer all questions in this section)             11.  The EMPLOYEES table contains these columns:     LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   HIRE_DATE DATE  EVAL_MONTHS NUMBER(3)       Evaluate this SELECT statement:       SELECT hire_date + eval_months   FROM employees;     The values returned by this SELECT statement will be of which data type?    Mark for Review   (1) Points  

            DATE (*)           NUMBER           DATETIME           INTEGER                     Correct                  12.  Which of the following Date Functions will add calendar months to a date?  Mark for Review   (1) Points               Months + Calendar (Month)           ADD_MONTHS (*)           MONTHS + Date           NEXT_MONTH              

      Correct                  13.  You want to create a report that displays all orders and their amounts that were placed during the  month of January. You want the orders with the highest amounts to appear first. Which query should  you issue?  Mark for Review   (1) Points               SELECT orderid, total   FROM orders   WHERE order_date LIKE '01‐jan‐02' AND '31‐jan‐02'   ORDER BY total DESC;             SELECT orderid, total   FROM orders   WHERE order_date IN ( 01‐jan‐02 , 31‐jan‐02 )   ORDER BY total;             SELECT orderid, total   FROM orders   WHERE order_date BETWEEN '01‐jan‐02' AND '31‐jan‐02'   ORDER BY total DESC;  (*)    

        SELECT orderid, total   FROM orders   WHERE order_date BETWEEN '31‐jan‐02' AND '01‐jan‐02'   ORDER BY total DESC;                       Correct                  14.  Which of the following SQL statements will correctly display the last name and the number of  weeks employed for all employees in department 90?  Mark for Review   (1) Points               SELECT last_name, (SYSDATE‐hire_date)/7 AS WEEKS   FROM employees   WHERE department_id = 90;  (*)             SELECT last name, (SYSDATE‐hire_date)/7 DISPLAY WEEKS   FROM employees   WHERE department id = 90;        

    SELECT last_name, # of WEEKS   FROM employees   WHERE department_id = 90;             SELECT last_name, (SYSDATE‐hire_date)AS WEEK   FROM employees   WHERE department_id = 90;                       Correct                  15.  You need to subtract three months from the current date. Which function should you use?  Mark  for Review   (1) Points               ROUND           TO_DATE           ADD_MONTHS (*)           MONTHS_BETWEEN      

              Correct                            Section 2 Lesson 1    (Answer all questions in this section)             16.  Which two statements concerning SQL functions are true? (Choose two.)  Mark for Review   (1) Points              (Choose all correct answers)                Character functions can accept numeric input.           Not all date functions return date values. (*)           Number functions can return number or character values.           Conversion functions convert a value from one data type to another data type. (*)           Single‐row functions manipulate groups of rows to return one result per group of rows.              

      Correct                  17.  Which arithmetic operation will return a numeric value?  Mark for Review   (1) Points               TO_DATE('01‐JUN‐2004') ‐ TO_DATE('01‐OCT‐2004') (*)           NEXT_DAY(hire_date) + 5           SYSDATE ‐ 6           SYSDATE + 30 / 24                     Correct                  18.  Which functions allow you to perform explicit data type conversions?  Mark for Review   (1) Points               ROUND, TRUNC, ADD_MONTHS           LENGTH, SUBSTR, LPAD, TRIM      

    TO_CHAR, TO_DATE, TO_NUMBER (*)           NVL, NVL2, NULLIF                     Correct                  19.  All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a  report that displays each employee's name and salary. Each employee's salary must be displayed in the  following format: $000,000.00. Which function should you include in a SELECT statement to achieve the  desired result?  Mark for Review   (1) Points               TO_CHAR (*)           TO_DATE           TO_NUMBER           CHARTOROWID                     Correct               

  20.  You have been asked to create a report that lists all customers who have placed orders of at least  $2,500. The report's date should be displayed in the Day, Date Month, Year format (For example,  Tuesday, 13 April, 2004 ). Which statement should you issue?  Mark for Review   (1) Points               SELECT companyname, TO_CHAR (sysdate, 'fmdd, dy month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;              SELECT companyname, TO_DATE (date, 'day, dd month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;             SELECT companyname, TO_DATE (sysdate, 'dd, dy month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;             SELECT companyname, TO_CHAR (sysdate, 'fmDay, dd Month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;  (*)        

              Correct                   Page 2 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 2 Lesson 1    (Answer all questions in this section)             21.  Which SQL Statement should you use to display the prices in this format: "$00.30"?  Mark for  Review   (1) Points               SELECT TO_CHAR(price, '$99,900.99') FROM product; (*)  

        SELECT TO_CHAR(price, "$99,900.99") FROM product;           SELECT TO_CHAR(price, '$99,990.99') FROM product;           SELECT TO_CHAR(price, $99,900.99) FROM product;                     Incorrect. Refer to Section 2                            Section 2 Lesson 2    (Answer all questions in this section)             22.  When executed, which statement displays a zero if the TUITION_BALANCE value is zero and the  HOUSING_BALANCE value is null?  Mark for Review   (1) Points               SELECT NVL (tuition_balance + housing_balance, 0) "Balance Due"   FROM student_accounts;   (*)        

    SELECT NVL(tuition_balance, 0), NVL (housing_balance), tuition_balance + housing_balance "Balance  Due"   FROM student_accounts;             SELECT tuition_balance + housing_balance   FROM student_accounts;             SELECT TO_NUMBER(tuition_balance, 0), TO_NUMBER (housing_balance, 0), tutition_balance +  housing_balance "Balance Due"   FROM student_accounts;                       Correct                  23.  Which of the following General Functions will return the first non‐null expression in the expression  list?  Mark for Review   (1) Points               NVL           NVL2           NULLIF  

        COALESCE (*)                     Correct                  24.  The STYLES table contains this data:     STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL  85940  11.00    758960  SANDAL  86979        Evaluate this SELECT statement:     SELECT style_id, style_name, category, cost   FROM styles   WHERE style_name = 'SANDAL' AND NVL(cost, 0) < 15.00   ORDER BY category, cost;  

  Which result will the query provide?    Mark for Review   (1) Points               STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    758960  SANDAL  86979                 STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85909  12.00    968950 SANDAL  85909  10.00    869506  SANDAL  89690  15.00    758960  SANDAL  86979                 STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85909  12.00    968950  SANDAL  85909  10.00    758960  SANDAL  86979    869506  SANDAL  89690  15.00   

             STYLE_ID  STYLE_NAME  CATEGORY  COST    968950  SANDAL  85909  10.00    895840  SANDAL  85940  12.00    758960  SANDAL  86979      (*)                       Incorrect. Refer to Section 2                            Section 3 Lesson 2    (Answer all questions in this section)             25.  The PATIENTS and DOCTORS tables contain these columns:   PATIENTS   PATIENT_ID NUMBER(9)  LAST_NAME VARCHAR2 (20)   FIRST_NAME VARCHAR2 (20) 

  DOCTORS   DOCTOR_ID NUMBER(9)   LAST_NAME VARCHAR2 (20)   FIRST_NAME VARCHAR2 (20)     You issue this statement:   SELECT patient_id, doctor_id   FROM patients, doctors;     Which result will this statement provide?    Mark for Review   (1) Points               A report containing all possible combinations of the PATIENT_ID and DOCTOR_ID values (*)           A report containing each patient's id value and their doctor's id value           A report with NO duplicate PATIENT_ID or DOCTOR_ID values           A syntax error                     Correct       

          26.  When joining 3 tables in a SELECT statement, how many join conditions are needed in the WHERE  clause?  Mark for Review   (1) Points               0           1           2 (*)           3                     Correct                  27.  What is produced when a join condition is not specified in a multiple‐table query using Oracle  proprietary Join syntax?  Mark for Review   (1) Points               a self‐join           an outer join           an equijoin  

        a Cartesian product (*)                     Correct                  28.  Which statement about the join syntax of an Oracle Proprietary join syntax SELECT statement is  true?  Mark for Review   (1) Points               The ON keyword must be included.           The JOIN keyword must be included.           The FROM clause represents the join criteria.           The WHERE clause represents the join criteria. (*)                     Incorrect. Refer to Section 3                  29.  You need to create a report that lists all employees in department 10 (Sales) whose salary is not  equal to $25,000 per year. Which query should you issue to accomplish this task?  Mark for Review   (1) Points  

            SELECT last_name, first_name, salary   FROM employees   WHERE salary > 25000 AND department_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary = 25000 AND department_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary <= 25000 AND department_id = 10;             SELECT last_name, first_name, salary   FROM employees   WHERE salary != 25000 AND department_id = 10;  (*)                       Correct       

          30.  Evaluate this SQL statement:   SELECT e.employee_id, e.last_name, e.first_name, d.department_name   FROM employees e, departments d   WHERE e.department_id = d.department_id AND employees.department_id > 5000   ORDER BY 4;     Which clause contains a syntax error?     Mark for Review   (1) Points               SELECT e.employee_id, e.last_name, e.first_name, d.department_name           FROM employees e, departments d           WHERE e.department_id = d.department_id           AND employees.department_id > 5000 (*)           ORDER BY 4;                     Incorrect. Refer to Section 3       

           Page 3 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 3 Lesson 4    (Answer all questions in this section)             31.  Evaluate this SELECT statement:   SELECT p.player_id, m.last_name, m.first_name, t.team_name   FROM player p   LEFT OUTER JOIN player m ON (p.manager_id = m.player_id)   LEFT OUTER JOIN team t ON (p.team_id = t.team_id);     Which join is evaluated first?  

 Mark for Review   (1) Points               the self‐join of the player table (*)           the join between the player table and the team table on TEAM_ID           the join between the player table and the team table on MANAGER_ID           the join between the player table and the team table on PLAYER_ID                     Incorrect. Refer to Section 3                  32.  The EMPLOYEE_ID column in the EMPLOYEES table corresponds to the EMPLOYEE_ID column of  the ORDERS table. The EMPLOYEE_ID column in the ORDERS table contains null values for rows that you  need to display.   Which type of join should you use to display the data?  Mark for Review   (1) Points               natural join           self‐join           outer join (*)  

        equijoin                     Incorrect. Refer to Section 3                  33.  Which of the following best describes the function of an outer join?  Mark for Review   (1) Points               An outer join will return only those rows that do not meet the join criteria.           An outer join will return only data from the far left column in one table and the far right column in the  other table.           An outer join will return data only if both tables contain an identical pair of columns.           An outer join will return all rows that meet the join criteria and will return NULL values from one table  if no rows from the other table satisfy the join criteria. (*)                     Incorrect. Refer to Section 3                          

 Section 4 Lesson 2    (Answer all questions in this section)             34.  You need to join all the rows in the EMPLOYEES table to all the rows in the EMP_REFERENCES  table. Which type of join should you create?  Mark for Review   (1) Points               An equijoin           A cross join (*)           An inner join           A full outer join                     Incorrect. Refer to Section 4                  35.  The following SQL statement will produce what output?  SELECT last_name, department_name   FROM employees   CROSS JOIN departments;     Mark for Review   (1) Points  

            The missing rows from the join condition.           The last_name and department name from the employee table.           A Cartesian product between the two tables. (*)           A cross referenced result omitting similar fields from the two tables.                     Correct                  36.  Which statement about a natural join is true?  Mark for Review   (1) Points               Columns with the same names must have identical data types.           Columns with the same names must have the same precision and datatype. (*)           Columns with the same names must have compatible data types.           Columns with the same names cannot be included in the SELECT list of the query.              

      Incorrect. Refer to Section 4                            Section 4 Lesson 3    (Answer all questions in this section)             37.  Which of the following statements is the simplest description of a nonequijoin?  Mark for Review   (1) Points               A join condition containing something other than an equality operator (*)           A join condition that is not equal to other joins.           A join condition that includes the (+) on the left hand side.           A join that joins a table to itself                     Incorrect. Refer to Section 4                  38.  Below find the structure of the CUSTOMERS and SALES_ORDER tables:    

CUSTOMERS  CUSTOMER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_NAME VARCHAR2 (30)   CONTACT_NAME VARCHAR2 (30)  CONTACT_TITLE VARCHAR2 (20)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (20)  COUNTRY_ID NUMBER Foreign key to COUNTRY_ID column of the COUNTRY table   PHONE VARCHAR2 (20)  FAX VARCHAR2 (20)   CREDIT_LIMIT NUMBER(7,2)      SALES_ORDER  ORDER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_ID NUMBER Foreign key to CUSTOMER_ID column of the CUSTOMER table  ORDER_DT DATE   ORDER_AMT NUMBER (7,2)   SHIP_METHOD VARCHAR2 (5)       You need to create a report that displays customers without a sales order. Which statement could you  use?    Mark for Review  

(1) Points               SELECT c.customer_name   FROM customers c   WHERE c.customer_id not in (SELECT s.customer_id FROM sales_order s);   (*)             SELECT c.customer_name   FROM customers c, sales_order s   WHERE c.customer_id = s.customer_id(+);              SELECT c.customer_name   FROM customers c, sales_order s   WHERE c.customer_id (+) = s.customer_id;              SELECT c.customer_name   FROM customers c  RIGHT OUTER JOIN sales_order s ON (c.customer_id = s.customer_id);                        Correct   

              39.  The primary advantage of using JOIN ON is:  Mark for Review   (1) Points               The join happens automatically based on matching column names and data types           It will display rows that do not meet the join condition           It permits columns with different names to be joined (*)           It permits columns that don't have matching data types to be joined                     Correct                  40.  Below find the structures of the PRODUCTS and VENDORS tables:    PRODUCTS   PRODUCT_ID NUMBER   PRODUCT_NAME VARCHAR2 (25)   VENDOR_ID NUMBER  CATEGORY_ID NUMBER   

VENDORS  VENDOR_ID NUMBER  VENDOR_NAME VARCHAR2 (25)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)   REGION VARCHAR2 (10)   POSTAL_CODE VARCHAR2 (11)       You want to create a query that will return an alphabetical list of products, including the product name  and associated vendor name, for all products that have a vendor assigned.     Which two queries could you use?    Mark for Review   (1) Points              (Choose all correct answers)                SELECT p.product_name, v.vendor_name   FROM products p   LEFT OUTER JOIN vendors v ON p.vendor_id = v.vendor_id   ORDER BY p.product_name;              SELECT p.product_name, v.vendor_name   FROM products p  

JOIN vendors v ON (vendor_id)   ORDER BY p.product_name;              SELECT p.product_name, v.vendor_name   FROM products p NATURAL JOIN vendors v   ORDER BY p.product_name;   (*)             SELECT p.product_name, v.vendor_name   FROM products p   JOIN vendors v USING (p.vendor_id)   ORDER BY p.product_name;              SELECT p.product_name, v.vendor_name   FROM products p   JOIN vendors v USING (vendor_id)   ORDER BY p.product_name;  (*)                       Incorrect. Refer to Section 4   

               Page 4 of 10            Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 4 Lesson 4    (Answer all questions in this section)             41.  You need to display all the rows from both the EMPLOYEES and EMPLOYEE_HISTS tables. Which  type of join would you use?  Mark for Review   (1) Points               a right outer join           a left outer join           a full outer join (*)           an inner join  

                  Correct                  42.  Which two sets of join keywords create a join that will include unmatched rows from the first table  specified in the SELECT statement?  Mark for Review   (1) Points               LEFT OUTER JOIN and FULL OUTER JOIN (*)           RIGHT OUTER JOIN and LEFT OUTER JOIN           USING and HAVING           OUTER JOIN and USING                     Correct                  43.  You need to join the EMPLOYEE_HISTS and EMPLOYEES tables. The EMPLOYEE_HISTS table will be  the first table in the FROM clause. All the matched and unmatched rows in the EMPLOYEES table need  to be displayed. Which type of join will you use?  Mark for Review   (1) Points               a cross join  

        an inner join           a left outer join           a right outer join (*)                     Correct                            Section 5 Lesson 1    (Answer all questions in this section)             44.  What will the following SQL Statement do?   SELECT job_id, COUNT(*)   FROM employees   GROUP BY job_id;     Mark for Review   (1) Points               Displays all the employees and groups them by job.  

        Displays each job id and the number of people assigned to that job id. (*)           Displays only the number of job_ids.           Displays all the jobs with as many people as there are jobs.                     Correct                  45.  Evaluate this SELECT statement:     SELECT MIN(hire_date), department_id   FROM employees   GROUP BY department_id;     Which values are displayed?    Mark for Review   (1) Points               The earliest hire date in each department. (*)           The the earliest hire date in the EMPLOYEES table.      

    The latest hire date in the EMPLOYEES table.           The hire dates in the EMPLOYEES table that contain NULL values.                     Correct                  46.  Which statement about group functions is true?  Mark for Review   (1) Points               Group functions ignore null values. (*)           Group functions can only be used in a SELECT list.           Group functions can be used in a WHERE clause.           A query that includes a group function in the SELECT list must include a GROUP BY clause.                     Incorrect. Refer to Section 5                  47.  What is the best explanation as to why this SQL statement will NOT execute?   SELECT department_id "Department", AVG (salary)"Average"  

FROM employees   GROUP BY Department;    Mark for Review   (1) Points               Salaries cannot be averaged as not all the numbers will divide evenly.           You cannot use a column alias in the GROUP BY clause. (*)           The GROUP BY clause must have something to GROUP.           The department id is not listed in the departments table.                     Incorrect. Refer to Section 5                            Section 5 Lesson 2    (Answer all questions in this section)             48.  The CUSTOMERS table contains these columns:   CUSTOMER_ID NUMBER(9)   FIRST_NAME VARCHAR2(25)  

LAST_NAME VARCHAR2(30)   CREDIT_LIMIT NUMBER (7,2)  CATEGORY VARCHAR2(20)     You need to calculate the average credit limit for all the customers in each category. The average should  be calculated based on all the rows in the table excluding any customers who have not yet been  assigned a credit limit value. Which group function should you use to calculate this value?    Mark for Review   (1) Points               AVG (*)           SUM           COUNT           STDDEV                     Correct                  49.  Which group function would you use to display the highest salary value in the EMPLOYEE table?   Mark for Review   (1) Points               AVG  

        COUNT           MAX (*)           MIN                     Correct                  50.  The PRODUCTS table contains these columns:  PROD_ID NUMBER(4)   PROD_NAME VARCHAR2(30)  PROD_CAT VARCHAR2(30)  PROD_PRICE NUMBER(3)   PROD_QTY NUMBER(4)    The following statement is issued:     SELECT AVG(prod_price, prod_qty)   FROM products;     What happens when this statement is issued?    Mark for Review  

(1) Points               Both the average price and the average quantity of the products are returned.           Only the average quantity of the products is returned.           The values in the PROD_PRICE column and the PROD_QTY column are averaged together.           An error occurs. (*)                     Correct                   Page 5 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL        

  Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 5 Lesson 2    (Answer all questions in this section)             51.  Group functions return a value for ________________ and ________________ null values in their  computations.  Mark for Review   (1) Points               a row set, ignore (*)           each row, ignore           a row set, include           each row, include                     Correct                  52.  You need to compute the total salary for all employees in department 10. Which group function  will you use?  Mark for Review   (1) Points          

    MAX           SUM (*)           VARIANCE           COUNT                     Correct                  53.  Which aggregate function can be used on a column of the DATE data type?  Mark for Review   (1) Points               AVG           MAX (*)           STDDEV           SUM                     Correct   

              54.  The TRUCKS table contains these columns:   TRUCKS   TYPE VARCHAR2(30)   YEAR DATE   MODEL VARCHAR2(20)   PRICE NUMBER(10)     Which SELECT statement will return the average price for the 4x4 model?    Mark for Review   (1) Points               SELECT AVG (price) FROM trucks WHERE model = '4x4'; (*)           SELECT AVG (price) FROM trucks WHERE model IS '4x4';           SELECT AVG(price) FROM trucks WHERE model IS 4x4;           SELECT AVG(price), model FROM trucks WHERE model = '4x4';                     Correct               

  55.  You need to calculate the average salary of employees in each department. Which group function  will you use?  Mark for Review   (1) Points               AVG (*)           MEAN           MEDIAN           AVERAGE                     Correct                            Section 5 Lesson 3    (Answer all questions in this section)             56.  Which SELECT statement will calculate the number of rows in the PRODUCTS table?  Mark for  Review   (1) Points               SELECT COUNT(products);  

        SELECT COUNT FROM products;           SELECT COUNT (*) FROM products; (*)           SELECT ROWCOUNT FROM products;                     Correct                  57.  Evaluate this SELECT statement:  SELECT COUNT(*)  FROM employees   WHERE salary > 30000;     Which results will the query display?    Mark for Review   (1) Points               The number of employees that have a salary less than 30000.           The total of the SALARY column for all employees that have a salary greater than 30000.           The number of rows in the EMPLOYEES table that have a salary greater than 30000. (*)  

        The query generates an error and returns no results.                     Correct                  58.  The STYLES table contains this data:   STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL  85940  11.00    758960  SANDAL  86979        You issue this SELECT statement:    SELECT COUNT(category)  FROM styles;     Which value is displayed?    Mark for Review  

(1) Points               0           6           7 (*)           The statement will NOT execute successfully.                     Incorrect. Refer to Section 5                  59.  Examine the data from the LINE_ITEM table:   LINE_ITEM_ID  ORDER_ID  PRODUCT_ID  PRICE  DISCOUNT    890898  847589  848399  8.99  0.10    768385  862459  849869  5.60  0.05    867950  985490  945809  5.60    954039  439203  438925  5.25  0.15    543949  349302  453235  4.50        You query the LINE_ITEM table and a value of 3 is returned. Which SQL statement did you execute?    Mark for Review  

(1) Points               SELECT COUNT(discount) FROM line_item; (*)           SELECT COUNT(*) FROM line_item;           SELECT SUM(discount) FROM line_item;           SELECT AVG(discount) FROM line_item;                     Incorrect. Refer to Section 5                            Section 6 Lesson 1    (Answer all questions in this section)             60.  The PAYMENT table contains these columns:   PAYMENT_ID NUMBER(9) PK  PAYMENT_DATE DATE   CUSTOMER_ID NUMBER(9)     Which SELECT statement could you use to display the number of times each customer made a payment  between January 1, 2003 and June 30, 2003 ? 

 Mark for Review   (1) Points               SELECT customer_id, COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003'   GROUP BY customer_id;  (*)             SELECT COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003';             SELECT customer_id, COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003';             SELECT COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003'   GROUP BY customer_id;    

                  Correct                   Page 6 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 1    (Answer all questions in this section)             61.  Evaluate this statement:   SELECT department_id, AVG(salary)   FROM employees  

WHERE job_id <> 69879   GROUP BY job_id, department_id   HAVING AVG(salary) > 35000   ORDER BY department_id;     Which clauses restricts the result? Choose two.   Mark for Review   (1) Points              (Choose all correct answers)                SELECT department_id, AVG(salary)           WHERE job_id <> 69879 (*)           GROUP BY job_id, department_id           HAVING AVG(salary) > 35000 (*)                     Correct                  62.  Evaluate this SELECT statement:   SELECT COUNT(employee_id), department_id  

FROM employees   GROUP BY department_id;     You only want to include employees who earn more than 15000.   Which clause should you include in the SELECT statement?   Mark for Review   (1) Points               WHERE salary > 15000 (*)           HAVING salary > 15000           WHERE SUM(salary) > 15000           HAVING SUM(salary) > 15000                     Correct                  63.  The MANUFACTURER table contains these columns:   MANUFACTURER_ID NUMBER   MANUFACTURER_NAME VARCHAR2(30)   TYPE VARCHAR2(25)   LOCATION_ID NUMBER 

  You need to display the number of unique types of manufacturers at each location. Which SELECT  statement should you use?    Mark for Review   (1) Points               SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer   GROUP BY location_id;  (*)             SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer;             SELECT location_id, COUNT(type)   FROM manufacturer   GROUP BY location_id;             SELECT location_id, COUNT(DISTINCT type)   FROM manufacturer   GROUP BY type;        

              Incorrect. Refer to Section 6                  64.  What is the correct order of clauses in a SELECT statement?  Mark for Review   (1) Points               SELECT   FROM   WHERE   ORDER BY   HAVING             SELECT   FROM   HAVING   GROUP BY   WHERE  ORDER BY              SELECT   FROM   WHERE 

GROUP BY   HAVING   ORDER BY  (*)             SELECT   FROM   WHERE   HAVING   ORDER BY   GROUP BY                       Correct                  65.  The PLAYERS table contains these columns:   PLAYER_ID NUMBER PK   PLAYER_NAME VARCHAR2 (30)   TEAM_ID NUMBER   HIRE_DATE DATE   SALARY NUMBER (8,2)    

Which two clauses represent valid uses of aggregate functions? (Choose three.)    Mark for Review   (1) Points              (Choose all correct answers)                ORDER BY AVG(salary) (*)           GROUP BY MAX(salary)           SELECT AVG(NVL(salary, 0)) (*)           HAVING MAX(salary) > 10000 (*)           WHERE hire_date > AVG(hire_date)                     Correct                  66.  The PLAYERS and TEAMS tables contain these columns:   PLAYERS   PLAYER_ID NUMBER NOT NULL, Primary Key   LAST_NAME VARCHAR2 (30) NOT NULL   FIRST_NAME VARCHAR2 (25) NOT NULL 

TEAM_ID NUMBER   POSITION VARCHAR2 (25)    TEAMS   TEAM_ID NUMBER NOT NULL, Primary Key   TEAM_NAME VARCHAR2 (25)     You need to create a report that lists the names of each team with more than three goal keepers.   Which SELECT statement will produce the desired result?   Mark for Review   (1) Points               SELECT t.team_name, COUNT(p.player_id)  FROM players p, teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'GOAL KEEPER'   GROUP BY t.team_name;             SELECT t.team_name, COUNT(p.player_id)   FROM players JOIN teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'GOAL KEEPER' HAVING COUNT(p.player_id) > 3;             SELECT t.team_name, COUNT(p.player_id)   FROM players p, teams t ON (p.team_id = t.team_id)  

WHERE UPPER(p.position) = 'GOAL KEEPER'   GROUP BY t.team_name HAVING COUNT(p.player_id) > 3;              SELECT t.team_name, COUNT(p.player_id)   FROM players p JOIN teams t ON (p.team_id = t.team_id)   WHERE UPPER(p.position) = 'GOAL KEEPER'   GROUP BY t.team_name HAVING COUNT(p.player_id) > 3;   (*)                       Incorrect. Refer to Section 6                  67.  Evaluate this SELECT statement:   SELECT SUM(salary), department_id, manager_id  FROM employees   GROUP BY department_id, manager_id;     Which SELECT statement clause allows you to restrict the rows returned, based on a group function?    Mark for Review   (1) Points               HAVING SUM(salary) > 100000 (*)  

        WHERE SUM(salary) > 100000           WHERE salary > 100000           HAVING salary > 100000                     Correct                            Section 6 Lesson 2    (Answer all questions in this section)             68.  You need to display all the players whose salaries are greater than or equal to John Brown's salary.  Which comparison operator should you use?  Mark for Review   (1) Points               =           >           <=      

    >= (*)                     Correct                  69.  Which statement about subqueries is true?  Mark for Review   (1) Points               Subqueries should be enclosed in double quotation marks.           Subqueries cannot contain group functions.           Subqueries are often used in a WHERE clause to return values for an unknown conditional value. (*)           Subqueries generally execute last, after the main or outer query executes.                     Correct                  70.  Which operator can be used with a multiple‐row subquery?  Mark for Review   (1) Points               IN (*)  

        <>           =           LIKE                     Correct                   Page 7 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.   

 Section 6 Lesson 2    (Answer all questions in this section)             71.  Examine the structures of the CUSTOMER and ORDER_HISTORY tables:   CUSTOMER   CUSTOMER_ID NUMBER(5)  NAME VARCHAR2(25)  CREDIT_LIMIT NUMBER(8,2)  OPEN_DATE DATE       ORDER_HISTORY  ORDER_ID NUMBER(5)  CUSTOMER_ID NUMBER(5)  ORDER_DATE DATE  TOTAL NUMBER(8,2)     Which of the following scenarios would require a subquery to return the desired results?    Mark for Review   (1) Points               You need to display the date each customer account was opened.           You need to display each date that a customer placed an order.      

    You need to display all the orders that were placed on a certain date.           You need to display all the orders that were placed on the same day as order number 25950. (*)                     Correct                  72.  Which of the following is TRUE regarding the order of subquery execution?  Mark for Review   (1) Points               The outer query is executed first           The subquery executes once after the main query           The subquery executes once before the main query (*)           The result of the main query is used with the subquery                     Correct                          

 Section 6 Lesson 3    (Answer all questions in this section)             73.  Which comparison operator is best used with a single‐row subquery?  Mark for Review   (1) Points               ANY           ALL           <> (*)           IN                     Incorrect. Refer to Section 6                  74.  Examine the following EMPLOYEES table:   EMPLOYEES  EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2(25)  FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)  SUPERVISOR_ID NUMBER(9)  

  You need to produce a report that contains all employee‐related information for those employees who  have Brad Carter as a supervisor. However, you are not sure which supervisor ID belongs to Brad Carter.  Which query should you issue to accomplish this task?    Mark for Review   (1) Points               SELECT *   FROM employees   WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');              SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');              SELECT *   FROM supervisors  WHERE supervisor_id =  

     (SELECT employee_id        FROM supervisors        WHERE last_name = 'Carter');             SELECT *   FROM employees  WHERE supervisor_id =        (SELECT employee_id        FROM employees        WHERE last_name = 'Carter');   (*)                       Incorrect. Refer to Section 6                  75.  If a single‐row subquery returns a null value and uses the equality comparison operator, what will  the outer query return?  Mark for Review   (1) Points               no rows (*)           all the rows in the table      

    a null value           an error                     Correct                            Section 6 Lesson 4    (Answer all questions in this section)             76.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        This statement fails when executed:     SELECT customer_id, payment_type   FROM payment   WHERE payment_id =  

   (SELECT payment_id       FROM payment       WHERE payment_amount = 596.00 OR payment_date = '20‐MAR‐2003');     Which change could correct the problem?    Mark for Review   (1) Points               Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)           Remove the quotes surrounding the date value in the OR clause.           Remove the parentheses surrounding the nested SELECT statement.           Change the comparison operator to a single‐row operator.                     Correct                  77.  Which comparison operator would you use to compare a value to every value returned by a  subquery?  Mark for Review   (1) Points               SOME      

    ANY           ALL (*)           IN                     Correct                  78.  Evaluate the structure of the EMPLOYEE and DEPART_HIST tables:   EMPLOYEE:  EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2(25)   FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)  MANAGER_ID NUMBER(9)  SALARY NUMBER(7,2)     DEPART_HIST:   EMPLOYEE_ID NUMBER(9)   OLD_DEPT_ID NUMBER(9)  NEW_DEPT_ID NUMBER(9)  CHANGE_DATE DATE    

You want to generate a list of employees who are in department 10, but used to be in department 15.   Which query should you use?    Mark for Review   (1) Points               SELECT employee_id, last_name, first_name, department_id  FROM employee   WHERE (employee_id, department_id) IN      (SELECT employee_id, new_dept_id      FROM depart_hist       WHERE old_dept_id = 15) AND new_dept_id = 10;  (*)             SELECT employee_id, last_name, first_name, department_id  FROM employee  WHERE (employee_id) IN      (SELECT employee_id       FROM employee_hist       WHERE old_dept_id = 15);             SELECT employee_id, last_name, first_name, department_id  FROM employee  WHERE (employee_id, department_id) =  

   (SELECT employee_id, new_dept_id       FROM depart_hist       WHERE new_dept_id = 15);              SELECT employee_id, last_name, first_name, department_id   FROM employee   WHERE (employee_id, department_id) IN      (SELECT employee_id, dept_id       FROM employee       WHERE old_dept_id = 15);                       Correct                  79.  Which best describes a multiple‐row subquery?  Mark for Review   (1) Points               A query that returns only one row from the inner SELECT statement           A query that returns one or more rows from the inner SELECT statement (*)           A query that returns only one column value from the inner SELECT statement  

        A query that returns one or more column values from the inner SELECT statement                     Correct                  80.  Which of the following statements contains a comparison operator that is used to restrict rows  based on a list of values returned from an inner query?  Mark for Review   (1) Points               SELECT description   FROM d_types   WHERE code IN (SELECT type_code FROM d_songs);             SELECT description  FROM d_types  WHERE code = ANY (SELECT type_code FROM d_songs);             SELECT description   FROM d_types   WHERE code <> ALL (SELECT type_code FROM d_songs);        

    All of the above. (*)                     Correct                   Page 8 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 4    (Answer all questions in this section)             81.  A multiple‐row operator expects how many values?  Mark for Review   (1) Points  

            One or more (*)           Only one           Two or more           None                     Correct                  82.  Examine the data in the PAYMENT table:   PAYMENT_ID  CUSTOMER_ID  PAYMENT_DATE  PAYMENT_TYPE  PAYMENT_AMOUNT    86590586  8908090  10‐JUN‐03  BASIC  859.00    89453485  8549038  15‐FEB‐03  INTEREST  596.00    85490345  5489304  20‐MAR‐03  BASIC  568.00        This statement fails when executed:     SELECT payment_date, customer_id, payment_amount   FROM payment   WHERE payment_id =  

   (SELECT payment_id       FROM payment       WHERE payment_date >= '05‐JAN‐2002' OR payment_amount > 500.00);     Which change could correct the problem?    Mark for Review   (1) Points               Remove the subquery WHERE clause.           Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)           Include the PAYMENT_ID column in the select list of the outer query.           Remove the single quotes around the date value in the inner query WHERE clause.                     Correct                  83.  Evaluate this SELECT statement:  SELECT customer_id, name   FROM customer   WHERE customer_id IN      (SELECT customer_id  

    FROM customer       WHERE state_id = 'GA' AND credit_limit > 500.00);     What would happen if the inner query returned null?    Mark for Review   (1) Points               An error would be returned.           No rows would be returned by the outer query. (*)           All the rows in the table would be selected.           Only the rows with CUSTOMER_ID values equal to null would be selected.                     Correct                  84.  Which statement about single‐row and multiple‐row subqueries is true?  Mark for Review   (1) Points               Multiple‐row subqueries cannot be used with the LIKE operator. (*)           Single‐row operators can be used with both single‐row and multiple‐row subqueries.  

        Multiple‐row subqueries can be used with both single‐row and multiple‐row operators.           Multiple‐row subqueries can only be used in SELECT statements.                     Correct                  85.  You need to display all the products that cost more than the maximum cost of every product  produced in Japan. Which multiple‐row comparison operator could you use?  Mark for Review   (1) Points               >ANY (*)           NOT=ALL           IN           >IN                     Correct               

  86.  You need to create a SELECT statement that contains a multiple‐row subquery, which comparison  operator(s) can you use?  Mark for Review   (1) Points               IN, ANY, and ALL (*)           LIKE           BETWEEN...AND...           =, <, and >                     Correct                            Section 7 Lesson 1    (Answer all questions in this section)             87.  The STUDENTS table contains these columns:  STU_ID NUMBER(9) NOT NULL  LAST_NAME VARCHAR2 (30) NOT NULL  FIRST_NAME VARCHAR2 (25) NOT NULL  DOB DATE 

STU_TYPE_ID VARCHAR2(1) NOT NULL  ENROLL_DATE DATE     You create another table, named FT_STUDENTS, with an identical structure.You want to insert all full‐ time students, who have a STU_TYPE_ID value of "F", into the new table. You execute this INSERT  statement:     INSERT INTO ft_students      (SELECT stu_id, last_name, first_name, dob, stu_type_id, enroll_date      FROM students      WHERE UPPER(stu_type_id) = 'F');     What is the result of executing this INSERT statement?    Mark for Review   (1) Points               All full‐time students are inserted into the FT_STUDENTS table. (*)           An error occurs because the FT_STUDENTS table already exists.           An error occurs because you CANNOT use a subquery in an INSERT statement.           An error occurs because the INSERT statement does NOT contain a VALUES clause.                     Correct   

              88.  The PRODUCTS table contains these columns:  PRODUCT_ID NUMBER NOT NULL   PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER NOT NULL  LIST_PRICE NUMBER (7,2)  COST NUMBER (5,2)  QTY_IN_STOCK NUMBER(4)  LAST_ORDER_DT DATE NOT NULL DEFAULT SYSDATE       Which INSERT statement will execute successfully?    Mark for Review   (1) Points               INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, 700); (*)           INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, SYSDATE);           INSERT INTO products(product_id, product_name) VALUES (2958, 'Cable');           INSERT INTO products(product_id, product_name, supplier_id VALUES (2958, 'Cable', 8690, SYSDATE);              

      Correct                  89.  You need to copy rows from the EMPLOYEE table to the EMPLOYEE_HIST table. What could you  use in the INSERT statement to accomplish this task?  Mark for Review   (1) Points               an ON clause           a SET clause           a subquery (*)           a function                     Incorrect. Refer to Section 7                  90.  The PRODUCTS table contains these columns:   PROD_ID NUMBER(4)  PROD_NAME VARCHAR2(25)  PROD_PRICE NUMBER(3)    You want to add the following row data to the PRODUCTS table:   (1) a NULL value in the PROD_ID column  

(2) "6‐foot nylon leash" in the PROD_NAME column   (3) "10" in the PROD_PRICE column     You issue this statement:    INSERT INTO products   VALUES (null,'6‐foot nylon leash', 10);    What row data did you add to the table?    Mark for Review   (1) Points               The row was created with the correct data in all three columns. (*)           The row was created with the correct data in two of three columns.           The row was created with the correct data in one of the three columns.           The row was created completely wrong. No data ended up in the correct columns.                     Incorrect. Refer to Section 7                 

 Page 9 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 7 Lesson 2    (Answer all questions in this section)             91.  You want to enter a new record into the CUSTOMERS table. Which two commands can be used to  create new rows?  Mark for Review   (1) Points               INSERT, CREATE           MERGE, CREATE           INSERT, MERGE (*)      

    INSERT, UPDATE                     Correct                  92.  The EMPLOYEES table contains the following columns:   EMPLOYEE_ID NUMBER(10) PRIMARY KEY  LAST_NAME VARCHAR2(20)  FIRST_NAME VARCHAR2(20)  DEPARTMENT_ID NUMBER(10)   HIRE_DATE DATE   SALARY NUMBER(9,2)  BONUS NUMBER(9,2)     You need to increase the salary for all employees in department 10 by 10 percent. You also need to  increase the bonus for all employees in department 10 by 15 percent. Which statement should you use?    Mark for Review   (1) Points               UPDATE employees  SET salary = salary * 1.10, bonus = bonus * 1.15   WHERE department_id = 10;   (*)        

    UPDATE employees   SET salary = salary * 1.10 AND bonus = bonus * 1.15   WHERE department_id = 10;              UPDATE employees   SET (salary = salary * 1.10) SET (bonus = bonus * 1.15)   WHERE department_id = 10;              UPDATE employees  SET salary = salary * .10, bonus = bonus * .15   WHERE department_id = 10;                        Incorrect. Refer to Section 7                  93.  Evaluate this statement: DELETE FROM customer; Which statement is true?  Mark for Review   (1) Points               The statement deletes all the rows from the CUSTOMER table. (*)           The statement deletes the CUSTOMER column.  

        The statement deletes the first row in the CUSTOMERS table.           The statement removes the structure of the CUSTOMER table from the database.                     Correct                  94.  Examine the structures of the PRODUCTS and SUPPLIERS tables:   SUPPLIERS  SUPPLIER_ID NUMBER NOT NULL, Primary Key  SUPPLIER_NAME VARCHAR2 (25)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (11)    PRODUCTS  PRODUCT_ID NUMBER NOT NULL, Primary Key  PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER Foreign key to SUPPLIER_ID of the SUPPLIERS table  CATEGORY_ID NUMBER  QTY_PER_UNIT NUMBER  UNIT_PRICE NUMBER (7,2) 

QTY_IN_STOCK NUMBER  QTY_ON_ORDER NUMBER  REORDER_LEVEL NUMBER    You want to delete any products supplied by the five suppliers located in Atlanta. Which script should  you use?    Mark for Review   (1) Points               DELETE FROM products   WHERE supplier_id IN      (SELECT supplier_id       FROM suppliers       WHERE UPPER(city) = 'ATLANTA');   (*)             DELETE FROM products   WHERE UPPER(city) = 'ATLANTA';              DELETE FROM products  WHERE supplier_id =       (SELECT supplier_id       FROM suppliers       WHERE UPPER(city) = 'ATLANTA');  

           DELETE FROM products   WHERE supplier_id <       (SELECT supplier_id       FROM suppliers       WHERE UPPER(city) = 'ALANTA');                        Correct                  95.  When the WHERE clause is missing in a DELETE statement, what is the result?  Mark for Review   (1) Points               All rows are deleted from the table. (*)           The table is removed from the database.           An error message is displayed indicating incorrect syntax.           Nothing. The statement will not execute.              

      Correct                  96.  What would happen if you issued a DELETE statement without a WHERE clause?  Mark for Review   (1) Points               All the rows in the table would be deleted. (*)           An error message would be returned.           No rows would be deleted.           Only one row would be deleted.                     Correct                  97.  You need to update the expiration date of products manufactured before June 30th. In which  clause of the UPDATE statement will you specify this condition?  Mark for Review   (1) Points               the ON clause           the WHERE clause (*)      

    the SET clause           the USING clause                     Correct                  98.  Examine the structures of the PLAYERS, MANAGERS, and TEAMS tables:  PLAYERS  PLAYER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (30)  FIRST_NAME VARCHAR2 (25)  TEAM_ID NUMBER  MGR_ID NUMBER  SIGNING_BONUS NUMBER(9,2)  SALARY NUMBER(9,2)    MANAGERS  MANAGER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (20)  FIRST_NAME VARCHAR2 (20)  TEAM_ID NUMBER    TEAMS 

TEAM_ID NUMBER Primary Key  TEAM_NAME VARCHAR2 (20)  OWNER_LAST_NAME VARCHAR2 (20)  OWNER_FIRST_NAME VARCHAR2 (20)    Which situation would require a subquery to return the desired result?    Mark for Review   (1) Points               To display the names each player on the Lions team           To display the maximum and minimum player salary for each team           To display the names of the managers for all the teams owned by a given owner (*)           To display each player, their manager, and their team name for all teams with a id value greater than  5000                     Correct                  99.  You need to remove a row from the EMPLOYEES table. Which statement would you use?  Mark for  Review   (1) Points          

    UPDATE with a WHERE clause           INSERT with a WHERE clause           DELETE with a WHERE clause (*)           MERGE with a WHERE clause                     Correct                  100.  The EMPLOYEES table contains the following columns:   EMPLOYEE_ID NUMBER(10) PRIMARY KEY   LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)  DEPARTMENT_ID NUMBER(10)  HIRE_DATE DATE   SALARY NUMBER(9,2)   BONUS NUMBER(9,2)     You want to execute one DML statement to change the salary of all employees in department 10 to  equal the new salary of employee id 89898. Currently, all employees in department 10 have the same  salary value. Which statement should you execute?    Mark for Review   (1) Points  

            UPDATE employees   SET salary = SELECT salary   FROM employees   WHERE employee_id = 89898;             UPDATE employees   SET salary = (SELECT salary FROM employees WHERE employee_id = 89898);             UPDATE employees  SET salary = (SELECT salary FROM employees WHERE employee_id = 89898)   WHERE department_id = 10;   (*)             UPDATE employees   SET salary = (SELECT salary FROM employees WHERE employee_id = 89898 AND department_id = 10);                       Incorrect. Refer to Section 7               

   Page 10 of 10                               Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 1 Lesson 1    (Answer all questions in this section)             1.  You query the database with this SQL statement:     SELECT CONCAT(last_name, (SUBSTR(LOWER(first_name), 4))) "Default Password"   FROM employees;  

    Which function will be evaluated first?    Mark for Review   (1) Points               CONCAT           SUBSTR           LOWER (*)           All three will be evaluated simultaneously.                     Correct                  2.  You need to return a portion of each employee's last name, beginning with the first character up to  the fifth character. Which character function should you use?  Mark for Review   (1) Points               INSTR           TRUNC      

    SUBSTR (*)           CONCAT                     Correct                  3.  Evaluate this SELECT statement:    SELECT LENGTH(email)  FROM employees;      What will this SELECT statement display?    Mark for Review   (1) Points               The longest e‐mail address in the EMPLOYEES table.           The email address of each employee in the EMPLOYEES table.           The number of characters for each value in the EMAIL column in the EMPLOYEES table. (*)           The maximum number of characters allowed in the EMAIL column.  

                  Correct                  4.  What will the following SQL statement display?     SELECT last_name, LPAD(salary, 15, '$')SALARY   FROM employees;       Mark for Review   (1) Points               The last name of employees that have a salary that includes a $ in the value, size of 15 and the column  labeled SALARY.           The last name and the format of the salary limited to 15 digits to the left of the decimal and the  column labeled SALARY.           The last name and salary for all employees with the format of the salary 15 characters long, left‐ padded with the $ and the column labeled SALARY. (*)           The query will result in an error: "ORA‐00923: FROM keyword not found where expected."                     Incorrect. Refer to Section 1   

              5.  You query the database with this SQL statement:     SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID"  FROM employee;      In which order are the functions evaluated?    Mark for Review   (1) Points               LOWER, SUBSTR, CONCAT           LOWER, CONCAT, SUBSTR           SUBSTR, CONCAT, LOWER           CONCAT, SUBSTR, LOWER (*)                     Correct                  6.  The STYLES table contains this data: 

  STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL 85940  11.00    758960  SANDAL  86979 12.00        You query the database and return the value 79. Which script did you use?    Mark for Review   (1) Points               SELECT INSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;              SELECT INSTR(category, ‐2,2)   FROM styles   WHERE style_id = 895840;         

    SELECT SUBSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;             SELECT SUBSTR(category, ‐2,2)   FROM styles   WHERE style_id = 758960;  (*)                       Correct                  7.  You need to display each employee's name in all uppercase letters. Which function should you use?   Mark for Review   (1) Points               CASE           UCASE           UPPER (*)           TOUPPER  

                  Correct                            Section 1 Lesson 2    (Answer all questions in this section)             8.  Which comparison operator retrieves a list of values?  Mark for Review   (1) Points               IN (*)           LIKE           BETWEEN...IN...           IS NULL                     Incorrect. Refer to Section 1 Lesson 1               

  9.  You issue this SQL statement:     SELECT TRUNC(751.367,‐1)   FROM dual;      Which value does this statement display?    Mark for Review   (1) Points               700           750 (*)           751           751.3                     Correct                  10.  Evaluate this function: MOD (25, 2) Which value is returned?  Mark for Review   (1) Points          

    1 (*)           2           25           0                     Correct                  Page 1 of 10               Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 1 Lesson 3    (Answer all questions in this section)  

          11.  Which of the following Date Functions will add calendar months to a date?  Mark for Review   (1) Points               Months + Calendar (Month)           ADD_MONTHS (*)           MONTHS + Date           NEXT_MONTH                     Correct                  12.  The EMPLOYEES table contains these columns:     LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   HIRE_DATE DATE  EVAL_MONTHS NUMBER(3)       Evaluate this SELECT statement:  

    SELECT hire_date + eval_months   FROM employees;     The values returned by this SELECT statement will be of which data type?    Mark for Review   (1) Points               DATE (*)           NUMBER           DATETIME           INTEGER                     Incorrect. Refer to Section 1                  13.  You need to subtract three months from the current date. Which function should you use?  Mark  for Review   (1) Points               ROUND  

        TO_DATE           ADD_MONTHS (*)           MONTHS_BETWEEN                     Incorrect. Refer to Section 1                  14.  You want to create a report that displays all orders and their amounts that were placed during the  month of January. You want the orders with the highest amounts to appear first. Which query should  you issue?  Mark for Review   (1) Points               SELECT orderid, total   FROM orders   WHERE order_date LIKE '01‐jan‐02' AND '31‐jan‐02'   ORDER BY total DESC;             SELECT orderid, total   FROM orders   WHERE order_date IN ( 01‐jan‐02 , 31‐jan‐02 )   ORDER BY total; 

           SELECT orderid, total   FROM orders   WHERE order_date BETWEEN '01‐jan‐02' AND '31‐jan‐02'   ORDER BY total DESC;  (*)             SELECT orderid, total   FROM orders   WHERE order_date BETWEEN '31‐jan‐02' AND '01‐jan‐02'   ORDER BY total DESC;                       Incorrect. Refer to Section 1                  15.  Which of the following SQL statements will correctly display the last name and the number of  weeks employed for all employees in department 90?  Mark for Review   (1) Points               SELECT last_name, (SYSDATE‐hire_date)/7 AS WEEKS   FROM employees   WHERE department_id = 90; 

(*)             SELECT last name, (SYSDATE‐hire_date)/7 DISPLAY WEEKS   FROM employees   WHERE department id = 90;             SELECT last_name, # of WEEKS   FROM employees   WHERE department_id = 90;             SELECT last_name, (SYSDATE‐hire_date)AS WEEK   FROM employees   WHERE department_id = 90;                       Incorrect. Refer to Section 1                            Section 2 Lesson 1  

 (Answer all questions in this section)             16.  If you use the RR format when writing a query using the date 27‐OCT‐17 and the year is 2001, what  year would be the result?  Mark for Review   (1) Points               2001           1901           2017 (*)           1917                     Correct                  17.  Which two statements concerning SQL functions are true? (Choose two.)  Mark for Review   (1) Points              (Choose all correct answers)                Character functions can accept numeric input.           Not all date functions return date values. (*)  

        Number functions can return number or character values.           Conversion functions convert a value from one data type to another data type. (*)           Single‐row functions manipulate groups of rows to return one result per group of rows.                     Incorrect. Refer to Section 2                  18.  All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a  report that displays each employee's name and salary. Each employee's salary must be displayed in the  following format: $000,000.00. Which function should you include in a SELECT statement to achieve the  desired result?  Mark for Review   (1) Points               TO_CHAR (*)           TO_DATE           TO_NUMBER           CHARTOROWID                     Incorrect. Refer to Section 2   

              19.  Which arithmetic operation will return a numeric value?  Mark for Review   (1) Points               TO_DATE('01‐JUN‐2004') ‐ TO_DATE('01‐OCT‐2004') (*)           NEXT_DAY(hire_date) + 5           SYSDATE ‐ 6           SYSDATE + 30 / 24                     Incorrect. Refer to Section 2                  20.  You have been asked to create a report that lists all customers who have placed orders of at least  $2,500. The report's date should be displayed in the Day, Date Month, Year format (For example,  Tuesday, 13 April, 2004 ). Which statement should you issue?  Mark for Review   (1) Points               SELECT companyname, TO_CHAR (sysdate, 'fmdd, dy month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;     

        SELECT companyname, TO_DATE (date, 'day, dd month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;             SELECT companyname, TO_DATE (sysdate, 'dd, dy month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;             SELECT companyname, TO_CHAR (sysdate, 'fmDay, dd Month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;  (*)                       Incorrect. Refer to Section 2                   Page 2 of 10         

            Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 2 Lesson 1    (Answer all questions in this section)             21.  Which three statements concerning explicit data type conversions are true? (Choose three.)  Mark  for Review   (1) Points              (Choose all correct answers)                Use the TO_NUMBER function to convert a number to a character string.           Use the TO_DATE function to convert a character string to a date value. (*)           Use the TO_NUMBER function to convert a character string of digits to a number. (*)           Use the TO_DATE function to convert a date value to character string or number.  

        Use the TO_CHAR function to convert a number or date value to character string. (*)                     Incorrect. Refer to Section 2                            Section 2 Lesson 2    (Answer all questions in this section)             22.  Which statement about group functions is true?  Mark for Review   (1) Points               NVL and NVL2, but not COALESCE, can be used with group functions to replace null values.           NVL and COALESCE, but not NVL2, can be used with group functions to replace null values.           NVL, NVL2, and COALESCE can be used with group functions to replace null values. (*)           COALESCE, but not NVL and NVL2, can be used with group functions to replace null values.                     Incorrect. Refer to Section 2   

              23.  The PRODUCT table contains this column: PRICE NUMBER(7,2)   Evaluate this statement:     SELECT NVL(10 / price, '0')   FROM PRODUCT;     What would happen if the PRICE column contains null values?    Mark for Review   (1) Points               The statement would fail because values cannot be divided by 0.           A value of 0 would be displayed. (*)           A value of 10 would be displayed.           The statement would fail because values cannot be divided by null.                     Correct                  24.  You need to replace null values in the DEPARTMENT_ID column with the text "N/A". Which  functions should you use?  Mark for Review  

(1) Points               TO_CHAR and NVL (*)           TO_CHAR and NULL           TO_CHAR and NULLIF           TO_NUMBER and NULLIF                     Incorrect. Refer to Section 2                            Section 3 Lesson 2    (Answer all questions in this section)             25.  When joining 3 tables in a SELECT statement, how many join conditions are needed in the WHERE  clause?  Mark for Review   (1) Points               0           1  

        2 (*)           3                     Incorrect. Refer to Section 3                  26.  You need to provide a list of the first and last names of all employees who work in the Sales  department who earned a bonus and had sales over $50,000. The company president would like the  sales listed starting with the highest amount first. The EMPLOYEES table and the SALES_DEPT table  contain the following columns:   EMPLOYEES   EMPLOYEE_ID NUMBER(10) PRIMARY KEY   LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   DEPARTMENT_ID NUMBER(10)   HIRE_DATE DATE   SALARY NUMBER(8,2)     SALES_DEPT   SALES_ID NUMBER(10) PRIMARY KEY   SALES NUMBER(20)   QUOTA NUMBER(20)   MANAGER NUMBER(10)   BONUS NUMBER(10)  

EMPLOYEE_ID NUMBER(10) FOREIGN KEY     Which SELECT statement will accomplish this task?    Mark for Review   (1) Points               SELECT e.employee_id, e.last_name, e.first_name, s.employee_id, s.bonus, s.sales   FROM employees e, sales_dept s   ORDER BY sales DESC   WHERE e.employee_id = s.employee_id AND sales > 50000 AND s.bonus IS NOT NULL;             SELECT e.employee_id, e.last_name, e.first_name, s.employee_id, s.bonus, s. sales   ORDER BY sales DESC   FROM employees e, sales_dept s   WHERE e.employee_id = s.employee_id AND s.bonus IS NOT NULL AND sales > 50000;             SELECT e.employee_id, e.last_name, e.first_name, s.employee_id, s.bonus, s. sales   WHERE e.employee_id = s.employee_id   FROM employees e, sales_dept s AND s.bonus IS NOT NULL AND sales > 50000   ORDER BY sales DESC;             SELECT e.employee_id, e.last_name, e.first_name, s.employee_id, s.bonus, s. sales  

FROM employees e, sales_dept s   WHERE e.employee_id = s.employee_id AND s.bonus IS NOT NULL AND sales > 50000   ORDER BY sales DESC;  (*)                       Incorrect. Refer to Section 3                  27.  Evaluate this SQL statement:   SELECT e.employee_id, e.last_name, e.first_name, d.department_name   FROM employees e, departments d   WHERE e.department_id = d.department_id AND employees.department_id > 5000   ORDER BY 4;     Which clause contains a syntax error?     Mark for Review   (1) Points               SELECT e.employee_id, e.last_name, e.first_name, d.department_name           FROM employees e, departments d      

    WHERE e.department_id = d.department_id           AND employees.department_id > 5000 (*)           ORDER BY 4;                     Incorrect. Refer to Section 3                  28.  The PATIENTS and DOCTORS tables contain these columns:   PATIENTS   PATIENT_ID NUMBER(9)  LAST_NAME VARCHAR2 (20)   FIRST_NAME VARCHAR2 (20)    DOCTORS   DOCTOR_ID NUMBER(9)   LAST_NAME VARCHAR2 (20)   FIRST_NAME VARCHAR2 (20)     You issue this statement:   SELECT patient_id, doctor_id   FROM patients, doctors;    

Which result will this statement provide?    Mark for Review   (1) Points               A report containing all possible combinations of the PATIENT_ID and DOCTOR_ID values (*)           A report containing each patient's id value and their doctor's id value           A report with NO duplicate PATIENT_ID or DOCTOR_ID values           A syntax error                     Incorrect. Refer to Section 3                  29.  What is produced when a join condition is not specified in a multiple‐table query using Oracle  proprietary Join syntax?  Mark for Review   (1) Points               a self‐join           an outer join           an equijoin      

    a Cartesian product (*)                     Incorrect. Refer to Section 3                  30.  What happens when you create a Cartesian product?  Mark for Review   (1) Points               All rows from one table are joined to all rows of another table (*)           The table is joined to itself, one column to the next column, exhausting all possibilities           The table is joined to another equal table           All rows that do not match in the WHERE clause are displayed                     Correct                   Page 3 of 10         

            Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 3 Lesson 4    (Answer all questions in this section)             31.  Using Oracle Proprietary join syntax, which two operators can be used in an outer join condition  using the outer join operator (+)?  Mark for Review   (1) Points               AND and = (*)           OR and =           BETWEEN...AND... and IN           IN and =              

      Correct                  32.  Which statement about outer joins is true?  Mark for Review   (1) Points               The tables must be aliased.           The FULL, RIGHT, or LEFT keyword must be included.           The OR operator cannot be used to link outer join conditions. (*)           Outer joins are always evaluated before other types of joins in the query.                     Incorrect. Refer to Section 3                  33.  Using Oracle Proprietary join syntax, which operator would you use after one of the column names  in the WHERE clause when creating an outer join?  Mark for Review   (1) Points               (+) (*)           *      

    +           =                     Correct                            Section 4 Lesson 2    (Answer all questions in this section)             34.  You need to join two tables that have two columns with the same name, datatype and precision.  Which type of join would you create to join the tables on both of the columns?  Mark for Review   (1) Points               Natural join (*)           Cross join           Outer join           Self‐join              

      Correct                  35.  A join between tables where the result set includes matching values from both tables but does  NOT return any unmatched rows could be called which of the following? (Choose three)  Mark for  Review   (1) Points              (Choose all correct answers)                Equijoin (*)           Self join (*)           Nonequijoin           Simple join (*)           Full outer join                     Incorrect. Refer to Section 4                  36.  Which of the following conditions will cause an error on a NATURAL JOIN?  Mark for Review   (1) Points  

            When you attempt to write it as an equijoin.           When the NATURAL JOIN clause is based on all columns in the two tables that have the same name.           If it selects rows from the two tables that have equal values in all matched columns.           If the columns having the same names have different data types, then an error is returned. (*)                     Correct                            Section 4 Lesson 3    (Answer all questions in this section)             37.  Which keyword in a SELECT statement creates an equijoin by specifying a column name common  to both tables?  Mark for Review   (1) Points               A HAVING clause           The FROM clause      

    The SELECT clause           A USING clause (*)                     Incorrect. Refer to Section 4                  38.  Below find the structure of the CUSTOMERS and SALES_ORDER tables:     CUSTOMERS  CUSTOMER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_NAME VARCHAR2 (30)   CONTACT_NAME VARCHAR2 (30)  CONTACT_TITLE VARCHAR2 (20)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (20)  COUNTRY_ID NUMBER Foreign key to COUNTRY_ID column of the COUNTRY table   PHONE VARCHAR2 (20)  FAX VARCHAR2 (20)   CREDIT_LIMIT NUMBER(7,2)     

SALES_ORDER  ORDER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_ID NUMBER Foreign key to CUSTOMER_ID column of the CUSTOMER table  ORDER_DT DATE   ORDER_AMT NUMBER (7,2)   SHIP_METHOD VARCHAR2 (5)       You need to create a report that displays customers without a sales order. Which statement could you  use?    Mark for Review   (1) Points               SELECT c.customer_name   FROM customers c   WHERE c.customer_id not in (SELECT s.customer_id FROM sales_order s);   (*)             SELECT c.customer_name   FROM customers c, sales_order s   WHERE c.customer_id = s.customer_id(+);              SELECT c.customer_name   FROM customers c, sales_order s  

WHERE c.customer_id (+) = s.customer_id;              SELECT c.customer_name   FROM customers c  RIGHT OUTER JOIN sales_order s ON (c.customer_id = s.customer_id);                        Incorrect. Refer to Section 4                  39.  The primary advantage of using JOIN ON is:  Mark for Review   (1) Points               The join happens automatically based on matching column names and data types           It will display rows that do not meet the join condition           It permits columns with different names to be joined (*)           It permits columns that don't have matching data types to be joined                     Incorrect. Refer to Section 4   

              40.  Evaluate this SELECT statement:    SELECT a.last_name || ', ' || a.first_name as "Patient", b.last_name || ', ' || b.first_name as "Physician",  c.admission   FROM patient a   JOIN physician b   ON (b.physician_id = c.physician_id)   JOIN admission c   ON (a.patient_id = c.patient_id);     Which clause generates an error?    Mark for Review   (1) Points               JOIN physician b           ON (b.physician_id = c.physician_id) (*)           JOIN admission c           ON (a.patient_id = c.patient_id)                     Incorrect. Refer to Section 4   

               Page 4 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 4 Lesson 4    (Answer all questions in this section)             41.  Which query represents the correct syntax for a left outer join?  Mark for Review   (1) Points               SELECT companyname, orderdate, total   FROM customers c   LEFT JOIN orders o 

ON c.cust_id = o.cust_id;             SELECT companyname, orderdate, total  FROM customers c  OUTER JOIN orders o  ON c.cust_id = o.cust_id;             SELECT companyname, orderdate, total   FROM customers c   LEFT OUTER JOIN orders o   ON c.cust_id = o.cust_id;   (*)             SELECT companyname, orderdate, total   FROM customers c   LEFT OUTER orders o   ON c.cust_id = o.cust_id;                        Incorrect. Refer to Section 4       

          42.  Which two sets of join keywords create a join that will include unmatched rows from the first table  specified in the SELECT statement?  Mark for Review   (1) Points               LEFT OUTER JOIN and FULL OUTER JOIN (*)           RIGHT OUTER JOIN and LEFT OUTER JOIN           USING and HAVING           OUTER JOIN and USING                     Incorrect. Refer to Section 4                  43.  You need to display all the rows from both the EMPLOYEES and EMPLOYEE_HISTS tables. Which  type of join would you use?  Mark for Review   (1) Points               a right outer join           a left outer join           a full outer join (*)  

        an inner join                     Incorrect. Refer to Section 4                            Section 5 Lesson 1    (Answer all questions in this section)             44.  Evaluate this SELECT statement:  SELECT MAX(salary), department_id   FROM employees   GROUP BY department_id;     Which values are displayed?    Mark for Review   (1) Points               The highest salary for all employees.           The highest salary in each department. (*)      

    The employees with the highest salaries.           The employee with the highest salary for each department.                     Correct                  45.  Evaluate this SELECT statement:     SELECT MIN(hire_date), department_id   FROM employees   GROUP BY department_id;     Which values are displayed?    Mark for Review   (1) Points               The earliest hire date in each department. (*)           The the earliest hire date in the EMPLOYEES table.           The latest hire date in the EMPLOYEES table.           The hire dates in the EMPLOYEES table that contain NULL values.  

                  Incorrect. Refer to Section 5                  46.  If a select list contains both columns as well as groups function then what clause is required?  Mark  for Review   (1) Points               having clause           join clause           order by clause           group by clause (*)                     Incorrect. Refer to Section 5                  47.  Group functions can be nested to a depth of?  Mark for Review   (1) Points               three      

    four           two (*)           Group functions cannot be nested.                     Incorrect. Refer to Section 5                            Section 5 Lesson 2    (Answer all questions in this section)             48.  You need to calculate the standard deviation for the cost of products produced in the Birmingham  facility. Which group function will you use?  Mark for Review   (1) Points               STDEV           STDDEV (*)           VAR_SAMP           VARIANCE  

                  Incorrect. Refer to Section 5                  49.  The TRUCKS table contains these columns:   TRUCKS   TYPE VARCHAR2(30)   YEAR DATE   MODEL VARCHAR2(20)   PRICE NUMBER(10)     Which SELECT statement will return the average price for the 4x4 model?    Mark for Review   (1) Points               SELECT AVG (price) FROM trucks WHERE model = '4x4'; (*)           SELECT AVG (price) FROM trucks WHERE model IS '4x4';           SELECT AVG(price) FROM trucks WHERE model IS 4x4;           SELECT AVG(price), model FROM trucks WHERE model = '4x4';              

      Correct                  50.  You need to compute the total salary for all employees in department 10. Which group function  will you use?  Mark for Review   (1) Points               MAX           SUM (*)           VARIANCE           COUNT                     Correct                   Page 5 of 10                   

  Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 5 Lesson 2    (Answer all questions in this section)             51.  Which aggregate function can be used on a column of the DATE data type?  Mark for Review   (1) Points               AVG           MAX (*)           STDDEV           SUM                     Incorrect. Refer to Section 5               

  52.  Which group function would you use to display the highest salary value in the EMPLOYEE table?   Mark for Review   (1) Points               AVG           COUNT           MAX (*)           MIN                     Correct                  53.  The PRODUCTS table contains these columns:  PROD_ID NUMBER(4)   PROD_NAME VARCHAR2(30)  PROD_CAT VARCHAR2(30)  PROD_PRICE NUMBER(3)   PROD_QTY NUMBER(4)    The following statement is issued:     SELECT AVG(prod_price, prod_qty)  

FROM products;     What happens when this statement is issued?    Mark for Review   (1) Points               Both the average price and the average quantity of the products are returned.           Only the average quantity of the products is returned.           The values in the PROD_PRICE column and the PROD_QTY column are averaged together.           An error occurs. (*)                     Incorrect. Refer to Section 5                  54.  The AVG, SUM, VARIANCE, and STDDEV functions can be used with which of the following?  Mark  for Review   (1) Points               Only numeric data types (*)           Integers only      

    Any data type           All except numeric                     Correct                  55.  The CUSTOMERS table contains these columns:   CUSTOMER_ID NUMBER(9)   FIRST_NAME VARCHAR2(25)   LAST_NAME VARCHAR2(30)   CREDIT_LIMIT NUMBER (7,2)  CATEGORY VARCHAR2(20)     You need to calculate the average credit limit for all the customers in each category. The average should  be calculated based on all the rows in the table excluding any customers who have not yet been  assigned a credit limit value. Which group function should you use to calculate this value?    Mark for Review   (1) Points               AVG (*)           SUM           COUNT  

        STDDEV                     Incorrect. Refer to Section 5                            Section 5 Lesson 3    (Answer all questions in this section)             56.  Evaluate this SELECT statement:  SELECT COUNT(*)  FROM employees   WHERE salary > 30000;     Which results will the query display?    Mark for Review   (1) Points               The number of employees that have a salary less than 30000.           The total of the SALARY column for all employees that have a salary greater than 30000.      

    The number of rows in the EMPLOYEES table that have a salary greater than 30000. (*)           The query generates an error and returns no results.                     Correct                  57.  The EMPLOYEES table contains these columns:   EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   SALARY NUMBER(7,2)   DEPARTMENT_ID NUMBER(9)     You need to display the number of employees whose salary is greater than $50,000? Which SELECT  would you use?    Mark for Review   (1) Points               SELECT * FROM employees   WHERE salary > 50000;              SELECT * FROM employees   WHERE salary < 50000;  

           SELECT COUNT(*) FROM employees   WHERE salary < 50000;              SELECT COUNT(*) FROM employees   WHERE salary > 50000;   (*)             SELECT COUNT(*) FROM employees   WHERE salary > 50000   GROUP BY employee_id, last_name, first_name, salary, department_id;                        Incorrect. Refer to Section 5                  58.  Evaluate this SQL statement:   SELECT COUNT (amount)   FROM inventory;     What will occur when the statement is issued?  

 Mark for Review   (1) Points               The statement will return the greatest value in the INVENTORY table.           The statement will return the total number of rows in the AMOUNT column.           The statement will replace all NULL values that exist in the AMOUNT column.           The statement will count the number of rows in the INVENTORY table where the AMOUNT column is  not null. (*)                     Incorrect. Refer to Section 5                  59.  Which SELECT statement will calculate the number of rows in the PRODUCTS table?  Mark for  Review   (1) Points               SELECT COUNT(products);           SELECT COUNT FROM products;           SELECT COUNT (*) FROM products; (*)      

    SELECT ROWCOUNT FROM products;                     Incorrect. Refer to Section 5                            Section 6 Lesson 1    (Answer all questions in this section)             60.  Evaluate this SELECT statement:   SELECT SUM(salary), department_id, manager_id  FROM employees   GROUP BY department_id, manager_id;     Which SELECT statement clause allows you to restrict the rows returned, based on a group function?    Mark for Review   (1) Points               HAVING SUM(salary) > 100000 (*)           WHERE SUM(salary) > 100000           WHERE salary > 100000  

        HAVING salary > 100000                     Incorrect. Refer to Section 6                   Page 6 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 1    (Answer all questions in this section)             61.  Which statement about the GROUP BY clause is true?  Mark for Review  

(1) Points               To exclude rows before dividing them into groups using the GROUP BY clause, you should use a  WHERE clause. (*)           You can use a column alias in a GROUP BY clause.           By default, rows are not sorted when a GROUP BY clause is used.           You must use the HAVING clause with the GROUP BY clause.                     Correct                  62.  The PAYMENT table contains these columns:   PAYMENT_ID NUMBER(9) PK  PAYMENT_DATE DATE   CUSTOMER_ID NUMBER(9)     Which SELECT statement could you use to display the number of times each customer made a payment  between January 1, 2003 and June 30, 2003 ?   Mark for Review   (1) Points               SELECT customer_id, COUNT(payment_id)  

FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003'   GROUP BY customer_id;  (*)             SELECT COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003';             SELECT customer_id, COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003';             SELECT COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003'   GROUP BY customer_id;                       Incorrect. Refer to Section 6       

          63.  Evaluate this SELECT statement:   SELECT COUNT(emp_id), mgr_id, dept_id   FROM employee  WHERE status = 'I'   GROUP BY dept_id   HAVING salary > 30000   ORDER BY 2;     Why does this statement return a syntax error?   Mark for Review   (1) Points               MGR_ID must be included in the GROUP BY clause. (*)           The HAVING clause must specify an aggregate function.           A single query cannot contain a WHERE clause and a HAVING clause.           The ORDER BY clause must specify a column name in the EMPLOYEE table.                     Incorrect. Refer to Section 6               

  64.  Evaluate this SELECT statement:   SELECT COUNT(employee_id), department_id   FROM employees   GROUP BY department_id;     You only want to include employees who earn more than 15000.   Which clause should you include in the SELECT statement?   Mark for Review   (1) Points               WHERE salary > 15000 (*)           HAVING salary > 15000           WHERE SUM(salary) > 15000           HAVING SUM(salary) > 15000                     Incorrect. Refer to Section 6                  65.  The PLAYERS table contains these columns:   PLAYER_ID NUMBER PK   PLAYER_NAME VARCHAR2 (30)  

TEAM_ID NUMBER   HIRE_DATE DATE   SALARY NUMBER (8,2)     Which two clauses represent valid uses of aggregate functions? (Choose three.)    Mark for Review   (1) Points              (Choose all correct answers)                ORDER BY AVG(salary) (*)           GROUP BY MAX(salary)           SELECT AVG(NVL(salary, 0)) (*)           HAVING MAX(salary) > 10000 (*)           WHERE hire_date > AVG(hire_date)                     Incorrect. Refer to Section 6                  66.  The EMPLOYEES table contains these columns:  

ID_NUMBER NUMBER Primary Key   NAME VARCHAR2 (30)   DEPARTMENT_ID NUMBER   SALARY NUMBER (7,2)   HIRE_DATE DATE    Evaluate this SQL statement:     SELECT id_number, name, hire_date, department_id, SUM(salary)   FROM employees   WHERE salary > 25000   GROUP BY department_id, id_number, name   ORDER BY hire_date;     Why will this statement cause an error?    Mark for Review   (1) Points               The HAVING clause is missing.           The WHERE clause contains a syntax error.           The SALARY column is NOT included in the GROUP BY clause.           The HIRE_DATE column is NOT included in the GROUP BY clause. (*)  

                  Incorrect. Refer to Section 6                  67.  Evaluate this statement:   SELECT department_id, AVG(salary)   FROM employees   WHERE job_id <> 69879   GROUP BY job_id, department_id   HAVING AVG(salary) > 35000   ORDER BY department_id;     Which clauses restricts the result? Choose two.   Mark for Review   (1) Points              (Choose all correct answers)                SELECT department_id, AVG(salary)           WHERE job_id <> 69879 (*)           GROUP BY job_id, department_id      

    HAVING AVG(salary) > 35000 (*)                     Correct                            Section 6 Lesson 2    (Answer all questions in this section)             68.  Which statement about subqueries is true?  Mark for Review   (1) Points               Subqueries should be enclosed in double quotation marks.           Subqueries cannot contain group functions.           Subqueries are often used in a WHERE clause to return values for an unknown conditional value. (*)           Subqueries generally execute last, after the main or outer query executes.                     Incorrect. Refer to Section 6       

          69.  Which operator can be used with a multiple‐row subquery?  Mark for Review   (1) Points               IN (*)           <>           =           LIKE                     Incorrect. Refer to Section 6                  70.  The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns:   TEACHERS  TEACHER_ID NUMBER(5) Primary Key  NAME VARCHAR2 (25)   SUBJECT_ID NUMBER(5)       CLASS_ASSIGNMENTS  CLASS_ID NUMBER (5) Primary Key  

TEACHER_ID NUMBER (5)  START_DATE DATE  MAX_CAPACITY NUMBER (3)    All MAX_CAPACITY values are greater than 10. Which two SQL statements correctly use subqueries?  (Choose two.)    Mark for Review   (1) Points              (Choose all correct answers)                SELECT *   FROM class_assignments   WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments);  (*)             SELECT *   FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE class_id = 45963);   (*)             SELECT *   FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);  

           SELECT *   FROM teachers   WHERE teacher_id LIKE (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);              SELECT *   FROM class_assignments   WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments GROUP BY teacher_id);                        Incorrect. Refer to Section 6                   Page 7 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL  

        Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 2    (Answer all questions in this section)             71.  Using a subquery in which of the following clauses will return a syntax error?  Mark for Review   (1) Points               WHERE           FROM           HAVING           You can use subqueries in all of the above clauses. (*)                     Correct                  72.  You need to create a report to display the names of products with a cost value greater than the  average cost of all products. Which SELECT statement should you use?  Mark for Review   (1) Points  

            SELECT product_name  FROM products   WHERE cost > (SELECT AVG(cost) FROM product);   (*)             SELECT product_name   FROM products  WHERE cost > AVG(cost);             SELECT AVG(cost), product_name   FROM products  WHERE cost > AVG(cost)   GROUP by product_name;              SELECT product_name   FROM (SELECT AVG(cost) FROM product)   WHERE cost > AVG(cost);                        Incorrect. Refer to Section 6   

                        Section 6 Lesson 3    (Answer all questions in this section)             73.  If a single‐row subquery returns a null value and uses the equality comparison operator, what will  the outer query return?  Mark for Review   (1) Points               no rows (*)           all the rows in the table           a null value           an error                     Incorrect. Refer to Section 6                  74.  Examine the structure of the EMPLOYEE, DEPARTMENT, and ORDERS tables.   EMPLOYEE  EMPLOYEE_ID NUMBER(9) 

LAST_NAME VARCHAR2(25)  FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)     DEPARTMENT   DEPARTMENT_ID NUMBER(9)  DEPARTMENT_NAME VARCHAR2(25)  CREATION_DATE DATE    ORDERS   ORDER_ID NUMBER(9)  EMPLOYEE_ID NUMBER(9)  DATE DATE   CUSTOMER_ID NUMBER(9)    You want to display all employees who had an order after the Sales department was established. Which  of the following constructs would you use?    Mark for Review   (1) Points               a group function           a single‐row subquery (*)           the HAVING clause      

    a MERGE statement                     Incorrect. Refer to Section 6                  75.  Which statement about the <> operator is true?  Mark for Review   (1) Points               The <> operator is NOT a valid SQL operator.           The <> operator CANNOT be used in a single‐row subquery.           The <> operator returns the same result as the ANY operator in a subquery.           The <> operator can be used when a single‐row subquery returns only one row. (*)                     Incorrect. Refer to Section 6                            Section 6 Lesson 4    (Answer all questions in this section)  

          76.  Evaluate this SQL statement:   SELECT employee_id, last_name, salary   FROM employees  WHERE department_id IN      (SELECT department_id      FROM employees      WHERE salary > 30000 AND salary < 50000);    Which values will be displayed?    Mark for Review   (1) Points               Only employees who earn more than $30,000.           Only employees who earn less than $50,000.           All employees who work in a department with employees who earn more than $30,000 and more  than $50,000.           All employees who work in a department with employees who earn more than $30,000, but less than  $50,000. (*)                     Correct       

          77.  Evaluate the structure of the EMPLOYEE and DEPART_HIST tables:   EMPLOYEE:  EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2(25)   FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)  MANAGER_ID NUMBER(9)  SALARY NUMBER(7,2)     DEPART_HIST:   EMPLOYEE_ID NUMBER(9)   OLD_DEPT_ID NUMBER(9)  NEW_DEPT_ID NUMBER(9)  CHANGE_DATE DATE     You want to generate a list of employees who are in department 10, but used to be in department 15.   Which query should you use?    Mark for Review   (1) Points               SELECT employee_id, last_name, first_name, department_id  FROM employee   WHERE (employee_id, department_id) IN      (SELECT employee_id, new_dept_id 

    FROM depart_hist       WHERE old_dept_id = 15) AND new_dept_id = 10;  (*)             SELECT employee_id, last_name, first_name, department_id  FROM employee  WHERE (employee_id) IN      (SELECT employee_id       FROM employee_hist       WHERE old_dept_id = 15);             SELECT employee_id, last_name, first_name, department_id  FROM employee  WHERE (employee_id, department_id) =      (SELECT employee_id, new_dept_id       FROM depart_hist       WHERE new_dept_id = 15);              SELECT employee_id, last_name, first_name, department_id   FROM employee   WHERE (employee_id, department_id) IN      (SELECT employee_id, dept_id  

    FROM employee       WHERE old_dept_id = 15);                       Incorrect. Refer to Section 6                  78.  Which of the following statements contains a comparison operator that is used to restrict rows  based on a list of values returned from an inner query?  Mark for Review   (1) Points               SELECT description   FROM d_types   WHERE code IN (SELECT type_code FROM d_songs);             SELECT description  FROM d_types  WHERE code = ANY (SELECT type_code FROM d_songs);             SELECT description   FROM d_types   WHERE code <> ALL (SELECT type_code FROM d_songs);    

        All of the above. (*)                     Incorrect. Refer to Section 6                  79.  Evaluate this SELECT statement:  SELECT customer_id, name   FROM customer   WHERE customer_id IN      (SELECT customer_id       FROM customer       WHERE state_id = 'GA' AND credit_limit > 500.00);     What would happen if the inner query returned null?    Mark for Review   (1) Points               An error would be returned.           No rows would be returned by the outer query. (*)           All the rows in the table would be selected.      

    Only the rows with CUSTOMER_ID values equal to null would be selected.                     Incorrect. Refer to Section 6                  80.  Which statement about single‐row and multiple‐row subqueries is true?  Mark for Review   (1) Points               Multiple‐row subqueries cannot be used with the LIKE operator. (*)           Single‐row operators can be used with both single‐row and multiple‐row subqueries.           Multiple‐row subqueries can be used with both single‐row and multiple‐row operators.           Multiple‐row subqueries can only be used in SELECT statements.                     Correct                   Page 8 of 10         

            Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 4    (Answer all questions in this section)             81.  Which best describes a multiple‐row subquery?  Mark for Review   (1) Points               A query that returns only one row from the inner SELECT statement           A query that returns one or more rows from the inner SELECT statement (*)           A query that returns only one column value from the inner SELECT statement           A query that returns one or more column values from the inner SELECT statement              

      Correct                  82.  Evaluate this SELECT statement:  SELECT student_id, last_name, first_name  FROM student   WHERE major_id NOT IN      (SELECT major_id       FROM majors       WHERE department_head_id = 30 AND title = 'ADJUNCT');     What would happen if the inner query returned a NULL value row?    Mark for Review   (1) Points               A syntax error would be returned.           No rows would be returned from the STUDENT table. (*)           All the rows in the STUDENT table would be displayed.           Only the rows with STUDENT_ID values equal to NULL would be displayed.                     Correct   

              83.  Which of the following is a valid reason why the query below will not execute successfully?   SELECT employee_id, last_name, salary   FROM employees   WHERE department_id =       (SELECT department_id FROM employees WHERE last_name like '%u%')    Mark for Review   (1) Points               First subquery not enclosed in parenthesis           Single rather than multiple value operator used. (*)           Second subquery found on the right instead of the left side of the operator.           The greater than operator is not valid.                     Incorrect. Refer to Section 6                  84.  Evaluate this SELECT statement that includes a subquery:  SELECT last_name, first_name   FROM customer 

WHERE area_code IN       (SELECT area_code FROM sales WHERE salesperson_id = 20);     Which statement is true about the given subquery?    Mark for Review   (1) Points               The outer query executes before the nested subquery.           The results of the inner query are returned to the outer query. (*)           An error occurs if the either the inner or outer queries do not return a value.           Both the inner and outer queries must return a value, or an error occurs.                     Incorrect. Refer to Section 6                  85.  What is wrong with the following query?   SELECT employee_id, last_name   FROM employees   WHERE salary =     (SELECT MIN(salary) FROM employees GROUP BY department_id);   

 Mark for Review   (1) Points               Single rows contain multiple values and a logical operator is used.           Subquery returns more than one row and single row comparison operator is used. (*)           Subquery references the wrong table in the WHERE clause.           Nothing, it will run without problems.                     Incorrect. Refer to Section 6                  86.  You are looking for Executive information using a subquery. What will the following SQL statement  display?   SELECT department_id, last_name, job_id   FROM employees   WHERE department_id IN      (SELECT department_id       FROM departments       WHERE department_name = 'Executive');    Mark for Review   (1) Points          

    The department ID, department name and last name for every employee in the Executive  department.           The department ID, last name, department name for every Executive in the employees table.           The department ID, last name, job ID from departments for Executive employees.           The department ID, last name, job ID for every employee in the Executive department. (*)                     Correct                            Section 7 Lesson 1    (Answer all questions in this section)             87.  The STUDENTS table contains these columns:  STU_ID NUMBER(9) NOT NULL  LAST_NAME VARCHAR2 (30) NOT NULL  FIRST_NAME VARCHAR2 (25) NOT NULL  DOB DATE  STU_TYPE_ID VARCHAR2(1) NOT NULL  ENROLL_DATE DATE    

You create another table, named FT_STUDENTS, with an identical structure.You want to insert all full‐ time students, who have a STU_TYPE_ID value of "F", into the new table. You execute this INSERT  statement:     INSERT INTO ft_students      (SELECT stu_id, last_name, first_name, dob, stu_type_id, enroll_date      FROM students      WHERE UPPER(stu_type_id) = 'F');     What is the result of executing this INSERT statement?    Mark for Review   (1) Points               All full‐time students are inserted into the FT_STUDENTS table. (*)           An error occurs because the FT_STUDENTS table already exists.           An error occurs because you CANNOT use a subquery in an INSERT statement.           An error occurs because the INSERT statement does NOT contain a VALUES clause.                     Incorrect. Refer to Section 7                  88.  You need to add a row to an existing table. Which DML statement should you use?  Mark for  Review  

(1) Points               UPDATE           INSERT (*)           DELETE           CREATE                     Correct                  89.  You have been instructed to add a new customer to the CUSTOMERS table. Because the new  customer has not had a credit check, you should not add an amount to the CREDIT column.   The CUSTOMERS table contains these columns:   CUST_ID NUMBER(10)   COMPANY VARCHAR2(30)   CREDIT NUMBER(10)   POC VARCHAR2(30)   LOCATION VARCHAR2(30)    Which two INSERT statements will accomplish your objective?    Mark for Review   (1) Points  

           (Choose all correct answers)                INSERT INTO customers (cust_id, company, poc, location)   VALUES (200, 'InterCargo', 'tflanders', 'samerica');   (*)             INSERT INTO customers   VALUES (200, 'InterCargo', null, 'tflanders', 'samerica');   (*)             INSERT INTO customers   VALUES (cust_id, company, credit, poc, location) (200, 'InterCargo', 0, 'tflanders', 'samerica');              INSERT INTO customers   VALUES (200, InterCargo, 0, tflanders, samerica);                        Incorrect. Refer to Section 7              

  90.  Assume all the column names are correct. The following SQL statement will execute which of the  following?  INSERT INTO departments (department_id, department_name, manager_id, location_id)   VALUES (70, 'Public Relations', 100, 1700);     Mark for Review   (1) Points               100 will be inserted into the department_id column           1700 will be inserted into the manager_id column           70 will be inserted into the department_id column (*)           'Public Relations' will be inserted into the manager_name column                     Correct                   Page 9 of 10                

     Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 7 Lesson 2    (Answer all questions in this section)             91.  One of the sales representatives, Janet Roper, has informed you that she was recently married, and  she has requested that you update her name in the employee database. Her new last name is Cooper.  Janet is the only person with the last name of Roper that is employed by the company. The EMPLOYEES  table contains these columns and all data is stored in lowercase:   EMPLOYEE_ID NUMBER(10) PRIMARY KEY   LAST_NAME VARCHAR2(20)  FIRST_NAME VARCHAR2(20)  DEPARTMENT_ID NUMBER(10)  HIRE_DATE DATE  SALARY NUMBER(10)    Which UPDATE statement will accomplish your objective?   Mark for Review   (1) Points               UPDATE employees 

SET last_name = 'cooper'   WHERE last_name = 'roper';   (*)             UPDATE employees last_name = 'cooper'   WHERE last_name = 'roper';             UPDATE employees  SET last_name = 'roper'   WHERE last_name = 'cooper';             UPDATE employees  SET cooper = 'last_name'   WHERE last_name = 'roper';                       Correct                  92.  Examine the structures of the PLAYERS, MANAGERS, and TEAMS tables:  PLAYERS 

PLAYER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (30)  FIRST_NAME VARCHAR2 (25)  TEAM_ID NUMBER  MGR_ID NUMBER  SIGNING_BONUS NUMBER(9,2)  SALARY NUMBER(9,2)    MANAGERS  MANAGER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (20)  FIRST_NAME VARCHAR2 (20)  TEAM_ID NUMBER    TEAMS  TEAM_ID NUMBER Primary Key  TEAM_NAME VARCHAR2 (20)  OWNER_LAST_NAME VARCHAR2 (20)  OWNER_FIRST_NAME VARCHAR2 (20)    Which situation would require a subquery to return the desired result?    Mark for Review   (1) Points               To display the names each player on the Lions team  

        To display the maximum and minimum player salary for each team           To display the names of the managers for all the teams owned by a given owner (*)           To display each player, their manager, and their team name for all teams with a id value greater than  5000                     Incorrect. Refer to Section 7                  93.  You want to enter a new record into the CUSTOMERS table. Which two commands can be used to  create new rows?  Mark for Review   (1) Points               INSERT, CREATE           MERGE, CREATE           INSERT, MERGE (*)           INSERT, UPDATE                     Incorrect. Refer to Section 7   

              94.  One of your employees was recently married. Her employee ID is still 189, however, her last name  is now Rockefeller. Which SQL statement will allow you to reflect this change?  Mark for Review   (1) Points               INSERT INTO my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;           INSERT my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;           UPDATE INTO my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;           UPDATE my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189; (*)                     Incorrect. Refer to Section 7                  95.  Evaluate this statement: DELETE FROM customer; Which statement is true?  Mark for Review   (1) Points               The statement deletes all the rows from the CUSTOMER table. (*)           The statement deletes the CUSTOMER column.           The statement deletes the first row in the CUSTOMERS table.  

        The statement removes the structure of the CUSTOMER table from the database.                     Incorrect. Refer to Section 7                  96.  Which two commands can be used to modify existing data in a database row?  Mark for Review   (1) Points              (Choose all correct answers)                DELETE           MERGE (*)           SELECT           UPDATE (*)                     Incorrect. Refer to Section 7                  97.  Examine the structures of the PRODUCTS and SUPPLIERS tables:  

SUPPLIERS  SUPPLIER_ID NUMBER NOT NULL, Primary Key  SUPPLIER_NAME VARCHAR2 (25)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (11)    PRODUCTS  PRODUCT_ID NUMBER NOT NULL, Primary Key  PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER Foreign key to SUPPLIER_ID of the SUPPLIERS table  CATEGORY_ID NUMBER  QTY_PER_UNIT NUMBER  UNIT_PRICE NUMBER (7,2)  QTY_IN_STOCK NUMBER  QTY_ON_ORDER NUMBER  REORDER_LEVEL NUMBER    You want to delete any products supplied by the five suppliers located in Atlanta. Which script should  you use?    Mark for Review   (1) Points               DELETE FROM products   WHERE supplier_id IN  

   (SELECT supplier_id       FROM suppliers       WHERE UPPER(city) = 'ATLANTA');   (*)             DELETE FROM products   WHERE UPPER(city) = 'ATLANTA';              DELETE FROM products  WHERE supplier_id =       (SELECT supplier_id       FROM suppliers       WHERE UPPER(city) = 'ATLANTA');              DELETE FROM products   WHERE supplier_id <       (SELECT supplier_id       FROM suppliers       WHERE UPPER(city) = 'ALANTA');                 

      Correct                  98.  When the WHERE clause is missing in a DELETE statement, what is the result?  Mark for Review   (1) Points               All rows are deleted from the table. (*)           The table is removed from the database.           An error message is displayed indicating incorrect syntax.           Nothing. The statement will not execute.                     Incorrect. Refer to Section 7                  99.  The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns:  TEACHERS   TEACHER_ID NUMBER(5)   NAME VARCHAR2(25)   SUBJECT_ID NUMBER(5)  HIRE_DATE DATE  SALARY NUMBER(9,2) 

  CLASS_ASSIGNMENTS  CLASS_ID NUMBER(5)  TEACHER_ID NUMBER(5)  START_DATE DATE  MAX_CAPACITY NUMBER(3)    Which scenario would require a subquery to return the desired results?    Mark for Review   (1) Points               You need to display the start date for each class taught by a given teacher.           You need to create a report to display the teachers who were hired more than five years ago.           You need to display the names of the teachers who teach classes that start within the next week.           You need to create a report to display the teachers who teach more classes than the average number  of classes taught by each teacher. (*)                     Incorrect. Refer to Section 7                  100.  The PLAYERS table contains these columns:  PLAYER_ID NUMBER NOT NULL 

PLAYER_LNAME VARCHAR2(20) NOT NULL  PLAYER_FNAME VARCHAR2(10) NOT NULL   TEAM_ID NUMBER   SALARY NUMBER(9,2)     You need to increase the salary of each player for all players on the Tiger team by 12.5 percent. The  TEAM_ID value for the Tiger team is 5960. Which statement should you use?    Mark for Review   (1) Points               UPDATE players (salary) SET salary = salary * 1.125;           UPDATE players SET salary = salary * .125 WHERE team_id = 5960;           UPDATE players SET salary = salary * 1.125 WHERE team_id = 5960; (*)           UPDATE players (salary) VALUES(salary * 1.125) WHERE team_id = 5960;                     Incorrect. Refer to Section 7                   Page 10 of 10        

  Midl‐mari‐lipsesc 10 intrebari‐ 31‐40!!!!  S1L2  1.    You issue this SQL statement:   SELECT INSTR ('organizational sales', 'al')   FROM dual;   Which value is returned by this command?    

  

1     

  

2     

  

13 (*)     

  

17    2.    Evaluate this SELECT statement:  SELECT LENGTH(email)  FROM employee;  What will this SELECT statement display?    

  

The longest e‐mail address in the EMPLOYEE table.     

  

The email address of each employee in the EMPLOYEE table.     

  

The number of characters for each value in the EMAIL column in the employees table. (*)     

  

The maximum number of characters allowed in the EMAIL column.    3.    Which SQL function can be used to remove heading or trailing characters (or both) from a character  string?    

  

LPAD     

  

CUT     

  

NVL2     

  

TRIM (*)   

4.     Which functions can be used to manipulate character, number, and date column values?    

  

CONCAT, RPAD, and TRIM (*)     

  

UPPER, LOWER, and INITCAP     

  

ROUND, TRUNC, and MOD     

  

ROUND, TRUNC, and ADD_MONTHS    5.     You need to display the number of characters in each customer's last name. Which function should you  use?    

  

LENGTH (*)     

  

LPAD      COUNT   

  

 

  

SUBSTR    6.     Which SQL function is used to return the position where a specific character string begins within a larger  character string?    

  

CONCAT     

  

INSTR (*)     

  

LENGTH     

  

SUBSTR    7.     You need to return a portion of each employee's last name, beginning with the first character up to the  fifth character. Which character function should you use?    

  

INSTR      TRUNC 

  

   

  

SUBSTR (*)     

  

CONCAT    8.     Evaluate this function: MOD (25, 2) Which value is returned?    

  

1 (*)     

  

2     

  

25     

  

0    9.     Which two functions can be used to manipulate number or date column values, but NOT character  column values? (Choose two.)    

(Choose all correct answers) 

 

  

RPAD     

  

TRUNC (*)     

  

ROUND (*)     

  

INSTR     

  

CONCAT    10.  

You issue this SQL statement: 

SELECT ROUND (1282.248, ‐2)   FROM dual;  What value does this statement produce?    

  

1200     

  

1282     

  

1282.25     

  

1300 (*)    S1L3  11.     You want to create a report that displays all orders and their amounts that were placed during the  month of January. You want the orders with the highest amounts to appear first. Which query should  you issue?    

  

SELECT orderid, total   FROM orders   WHERE order_date LIKE '01‐jan‐02' AND '31‐jan‐02'   ORDER BY total DESC;      

  

SELECT orderid, total   FROM orders   WHERE order_date IN ( 01‐jan‐02 , 31‐jan‐02 )   ORDER BY total;      

  

SELECT orderid, total   FROM orders   WHERE order_date BETWEEN '01‐jan‐02' AND '31‐jan‐02'  

ORDER BY total DESC;   (*)     

  

SELECT orderid, total   FROM orders   WHERE order_date BETWEEN '31‐jan‐02' AND '01‐jan‐02'   ORDER BY total DESC;     12.     You need to display the number of months between today's date and each employee's hiredate. Which  function should you use?    

  

ROUND     

  

BETWEEN     

  

ADD_MONTHS     

  

MONTHS_BETWEEN (*)    13.     Which of the following Date Functions will add calendar months to a date?  

 

  

Months + Calendar (Month)     

  

ADD_MONTHS (*)     

  

MONTHS + Date     

  

NEXT_MONTH    14.     Which function would you use to return the current database server date and time?    

  

DATE     

  

SYSDATE (*)     

  

DATETIME     

  

CURRENTDATE 

  15.     The EMPLOYEE table contains these columns:   LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   HIRE_DATE DATE  EVAL_MONTHS NUMBER(3)   Evaluate this SELECT statement:   SELECT hire_date + eval_months   FROM employee;   The values returned by this SELECT statement will be of which data type?    

  

DATE (*)     

  

NUMBER     

  

DATETIME     

  

INTEGER      S2 L1 

  16.     All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a  report that displays each employee's name and salary. Each employee's salary must be displayed in the  following format: $000,000.00. Which function should you include in a SELECT statement to achieve the  desired result?    

  

TO_CHAR (*)     

  

TO_DATE     

  

TO_NUMBER     

  

CHARTOROWID    17.     The EMPLOYEES table contains these columns:   EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2 (25)   FIRST_NAME VARCHAR2 (25)   SALARY NUMBER(6)   You need to create a report to display the salaries of all employees. Which script should you use to  display the salaries in format: "$45,000.00"?    

  

SELECT TO_CHAR(salary, '$999,999')   FROM employees;      

  

SELECT TO_NUM(salary, '$999,990.99')   FROM employees;      

  

SELECT TO_NUM(salary, '$999,999.00')   FROM employees;      

  

SELECT TO_CHAR(salary, '$999,999.00')  FROM employees; (*)    18.     Which statement concerning single row functions is true?    

  

Single row functions can accept only one argument, but can return multiple values.     

  

Single row functions cannot modify a data type.     

  

Single row functions can be nested. (*) 

   

  

Single row functions return one or more results per row.        19.         Which best describes the TO_CHAR function?    

  

The TO_CHAR function can be used to specify meaningful column names in an SQL statement's result  set.     

  

The TO_CHAR function can be used to remove text from column data that will be returned by the  database.     

  

The TO_CHAR function can be used to display dates and numbers according to formatting conventions  that are supported by Oracle. (*)     

  

The TO_CHAR function can only be used on DATE columns.    20.    

If you use the RR format when writing a query using the date 27‐OCT‐17 and the year is 2001, what year  would be the result?    

  

2001     

  

1901     

  

2017 (*)     

  

1917    21.     Which functions allow you to perform explicit data type conversions?    

  

ROUND, TRUNC, ADD_MONTHS     

  

LENGTH, SUBSTR, LPAD, TRIM     

  

TO_CHAR, TO_DATE, TO_NUMBER (*)     

  

NVL, NVL2, NULLIF      S2L2    22.     When executed, which statement displays a zero if the TUITION_BALANCE value is zero and the  HOUSING_BALANCE value is null?    

  

SELECT NVL (tuition_balance + housing_balance, 0) "Balance Due"   FROM student_accounts;                                                                                   (*)     

  

SELECT NVL(tuition_balance, 0), NVL (housing_balance), tuition_balance + housing_balance "Balance  Due"   FROM student_accounts;      

  

SELECT tuition_balance + housing_balance   FROM student_accounts;      

  

SELECT TO_NUMBER(tuition_balance, 0), TO_NUMBER (housing_balance, 0), tutition_balance +  housing_balance "Balance Due"   FROM student_accounts;     23.    

Which of the following General Functions will return the first non‐null expression in the expression list?    

  

NVL     

  

NVL2     

  

NULLIF     

  

COALESCE (*)    24.     The PRODUCT table contains this column: PRICE NUMBER(7,2)   Evaluate this statement:   SELECT NVL(10 / price, '0')   FROM PRODUCT;   What would happen if the PRICE column contains null values?    

  

The statement would fail because values cannot be divided by 0.     

  

A value of 0 would be displayed. (*)   

 

  

A value of 10 would be displayed.     

  

The statement would fail because values cannot be divided by null.                  S3 L2  25.     You need to create a report that lists all employees in the Sales department who do not earn $25,000  per year. Which query should you issue to accomplish this task?    

  

SELECT last_name, first_name, salary   FROM employees   WHERE salary > 25000 AND dept_id = 10;      

  

SELECT last_name, first_name, salary   FROM employees   WHERE salary = 25000 AND dept_id = 10;  

   

  

SELECT last_name, first_name, salary   FROM employees   WHERE salary <= 25000 AND dept_id = 10;      

  

SELECT last_name, first_name, salary   FROM employees   WHERE salary != 25000 AND dept_id = 10;                (*)    26.     Evaluate this SQL statement:   SELECT e.employee_id, e.last_name, e.first_name, d.department_name   FROM employees e, departments d   WHERE e.department_id = d.department_id AND employees.department_id > 5000   ORDER BY 4;   Which clause contains a syntax error?    

  

SELECT e.employee_id, e.last_name, e.first_name, d.department_name     

  

FROM employees e, departments d     

  

WHERE e.department_id = d.department_id     

  

AND employees.department_id > 5000 (*)     

  

ORDER BY 4;    27.     What happens when you create a Cartesian product?    

  

All rows from one table are joined to all rows of another table (*)     

  

The table is joined to itself, one column to the next column, exhausting all possibilities     

  

The table is joined to another equal table     

  

All rows that do not match in the WHERE clause are displayed    28.     What is produced when a join condition is not specified in a multiple‐table query?    

  

a self‐join     

  

an outer join     

  

an equijoin     

  

a Cartesian product (*)    29.     The PATIENTS and DOCTORS tables contain these columns:   PATIENTS   PATIENT_ID NUMBER(9)  LAST_NAME VARCHAR2 (20)   FIRST_NAME VARCHAR2 (20)   DOCTORS   DOCTOR_ID NUMBER(9)   LAST_NAME VARCHAR2 (20)   FIRST_NAME VARCHAR2 (20)   You issue this statement:   SELECT patient_id, doctor_id   FROM patients, doctors;   Which result will this statement provide?  

 

  

A report containing all possible combinations of the PATIENT_ID and DOCTOR_ID values (*)     

  

A report containing each patient's id value and their doctor's id value     

  

A report with NO duplicate PATIENT_ID or DOCTOR_ID values     

  

A syntax error    30.     Your have two tables named EMPLOYEES and SALES. You want to identify the sales representatives who  have generated at least $100,000 in revenue.   Which query should you issue?    

  

SELECT e.fname, e.lname, s.sales   FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue > 100000;      

  

SELECT e.fname, e.lname, s.sales   FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue >= 100000;   (*) 

   

  

SELECT e.fname, e.lname, s.sales   FROM employees, sales   WHERE e.emp_id = s.emp_id AND revenue >= 100000;      

  

SELECT fname, lname, sales   Q FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue > 100000;     31‐40?????  S 4 L4        41.  You need to display all the rows from both the EMPLOYEE and EMPLOYEE_HIST tables. Which type  of join would you use?    o 

a right outer join  



a left outer join  



a full outer join (*)  



an inner join  

    42.  What should be included in a SELECT statement to return NULL values from all tables?    o 

natural joins  



left outer joins  



full outer joins (*)  



right outer joins  

      43.  You need to join the EMPLOYEE_HIST and EMPLOYEE tables. The EMPLOYEE_HIST table will be the  first table in the FROM clause. All the matched and unmatched rows in the EMPLOYEE table need to be  displayed. Which type of join will you use?    o 

a cross join  



an inner join  



a left outer join  



a right outer join (*)  

     S 5 L1        44.  Which statement about the GROUP BY clause is true?    o 

The first column listed in the GROUP BY clause is the most major grouping. (*)  



The last column listed in the GROUP BY clause is the most major grouping.  



The GROUP BY clause can contain an aggregate function.  



A GROUP BY clause cannot be used without an ORDER BY clause.  

      45.  Evaluate this SELECT statement:     SELECT MIN(hire_date), dept_id   FROM employee   GROUP BY dept_id;     Which values are displayed?         o 

The earliest hire date in each department. (*)  



The the earliest hire date in the EMPLOYEE table.  



The latest hire date in the EMPLOYEE table.  



The hire dates in the EMPLOYEE table that contain NULL values.  

      46.  What will the following SQL Statement do?   SELECT job_id, COUNT(*)   FROM employees   GROUP BY job_id;  o 

Displays all the employees and groups them by job.  



Displays each job id and the number of people assigned to that job id. (*)  



Displays only the number of job_ids.  



Displays all the jobs with as many people as there are jobs.  

    47.  Group functions can be nested to a depth of   o 

three  



four  



two (*)  



Group functions cannot be nested.  

     S 5 L2              48.  Which group function would you use to display the total of all salary values in the EMPLOYEE  table?    o 

SUM (*)  



AVG  



COUNT  



MAX  

      49.  Which group function would you use to display the lowest value in the SALES_AMOUNT column?    o 

AVG  



COUNT  



MAX  



MIN (*)  

      50.  Examine the data in the PAYMENT table:   PAYMENT_ID   CUSTOMER_ID  PAYMENT_DATE  

PAYMENT_TYPE  

86590586  

8908090  

10‐JUN‐03  

BASIC   859.00  

89453485  

8549038  

15‐FEB‐03  

INTEREST  

85490345  

5489304  

20‐MAR‐03  

BASIC   568.00  

PAYMENT_AMOUNT  

596.00  

  You need to determine the average payment amount made by each customer in January, February and  March of 2003. Which SELECT statement should you use?     o 

SELECT AVG(payment_amount)  

FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '31‐MAR‐2003';     o 

SELECT AVG(payment_amount)  

FROM payment;  o 

SELECT SUM(payment_amount)  

FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' and '31‐MAR‐2003';  o 

SELECT AVG(payment_amount)  

(*) 

FROM payment   WHERE TO_CHAR(payment_date) IN (JAN, FEB, MAR);   S5 L2    51.     The TRUCKS table contains these columns:   TRUCKS   TYPE VARCHAR2(30)   YEAR DATE   MODEL VARCHAR2(20)   PRICE NUMBER(10)   Which SELECT statement will return the average price for the 4x4 model?    

  

SELECT AVG (price) FROM trucks WHERE model = '4x4'; (*)     

  

SELECT AVG (price) FROM trucks WHERE model IS '4x4';     

  

SELECT AVG(price) FROM trucks WHERE model IS 4x4;     

  

SELECT AVG(price), model FROM trucks WHERE model IS '4x4';    52.    

The CUSTOMER table contains these columns:   CUSTOMER_ID NUMBER(9)   FNAME VARCHAR2(25)   LNAME VARCHAR2(30)   CREDIT_LIMIT NUMBER (7,2)  CATEGORY VARCHAR2(20)   You need to calculate the average credit limit for all the customers in each category. The average should  be calculated based on all the rows in the table excluding any customers who have not yet been  assigned a credit limit value. Which group function should you use to calculate this value?    

   

   

  

AVG (*)     

  

SUM     

  

COUNT     

  

STDDEV    53.     The EMPLOYEES table contains these columns:   EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2(20) 

FIRST_NAME VARCHAR2(20)   SALARY NUMBER(9,2)  HIRE_DATE DATE   BONUS NUMBER(7,2)   COMM_PCT NUMBER(4,2)   Which three functions could be used with the HIRE_DATE, LAST_NAME, or SALARY columns? (Choose  three.)    

(Choose all correct answers) 

 

  

MAX (*)     

  

SUM     

  

AVG     

  

MIN (*)     

  

COUNT (*)    54.     Which group function would you use to display the highest salary value in the EMPLOYEE table?    

  

AVG     

  

COUNT     

  

MAX (*)     

  

MIN          55.     Which group function would you use to display the average price of all products in the PRODUCTS table?    

  

SUM     

  

AVG (*)      COUNT   

  

 

  

MAX      S5L3    56.     Which SELECT statement will calculate the number of rows in the PRODUCTS table?    

  

SELECT COUNT(products);     

  

SELECT COUNT FROM products;     

  

SELECT COUNT (*) FROM products; (*)     

  

SELECT ROWCOUNT FROM products;    57.     Examine the data from the LINE_ITEM table:   LINE_ITEM_ID   ORDER_ID  

PRODUCT_ID   PRICE   DISCOUNT  

890898 847589 848399 8.99  

0.10  

768385 862459 849869 5.60  

0.05  

867950 985490 945809 5.60  

 

954039 439203 438925 5.25  

0.15  

543949 349302 453235 4.50  

 

You query the LINE_ITEM table and a value of 5 is returned. Which SQL statement did you execute?    

  

SELECT COUNT(discount) FROM line_item;     

  

SELECT COUNT(*) FROM line_item; (*)     

  

SELECT SUM(discount) FROM line_item;     

  

SELECT AVG(discount) FROM line_item;    58.     Evaluate this SQL statement:   SELECT COUNT (amount)   FROM inventory;   What will occur when the statement is issued?    

  

The statement will return the greatest value in the INVENTORY table.     

  

The statement will return the total number of rows in the AMOUNT column.     

  

The statement will replace all NULL values that exist in the AMOUNT column.     

  

The statement will count the number of rows in the INVENTORY table where the AMOUNT column is not  null. (*)    59.     Which statement about the COUNT function is true?    

   

   

  

The COUNT function ignores duplicates by default.     

  

The COUNT function always ignores null values by default. (*)     

  

The COUNT function can be used to find the maximum value in each column.     

  

The COUNT function can be used to determine the number of unique, non‐null values in a column.       

            S6L1    60.     What is the correct order of clauses in a SELECT statement?    

  

SELECT   FROM   WHERE   ORDER BY   HAVING      

  

SELECT   FROM   HAVING   GROUP BY   WHERE  ORDER BY    

 

  

SELECT   FROM   WHERE  GROUP BY   HAVING   ORDER BY   (*)     

  

SELECT   FROM   WHERE   HAVING   ORDER BY   GROUP BY     61.     Evaluate this SELECT statement:   SELECT SUM(salary), dept_id, department_name   FROM employee   WHERE dept_id = 1   GROUP BY department;   Which clause of the SELECT statement contains a syntax error?   

  

SELECT     

  

FROM     

  

WHERE     

  

GROUP BY (*)    62.     Evaluate this SELECT statement:   SELECT SUM(salary), dept_id, mgr_id  FROM employee   GROUP BY dept_id, mgr_id;   Which SELECT statement clause allows you to restrict the rows returned, based on a group function?    

  

HAVING SUM(salary) > 100000 (*)     

  

WHERE SUM(salary) > 100000     

  

WHERE salary > 100000 

   

  

HAVING salary > 100000    63.     Evaluate this SELECT statement:   SELECT COUNT(emp_id), mgr_id, dept_id   FROM employee  WHERE status = 'I'   GROUP BY dept_id   HAVING salary > 30000   ORDER BY 2;   Why does this statement return a syntax error?   

  

MGR_ID must be included in the GROUP BY clause. (*)     

  

The HAVING clause must specify an aggregate function.     

  

A single query cannot contain a WHERE clause and a HAVING clause.     

  

The ORDER BY clause must specify a column name in the EMPLOYEE table.   

64.     The PRODUCTS table contains these columns:   PROD_ID NUMBER(4)   PROD_NAME VARCHAR(20)   PROD_CAT VARCHAR2(15)   PROD_PRICE NUMBER(5)  PROD_QTY NUMBER(4)   You need to identify the minimum product price in each product category.  Which statement could you use to accomplish this task?   

  

SELECT prod_cat, MIN (prod_price)   FROM products  GROUP BY prod_price;      

  

SELECT prod_cat, MIN (prod_price)   FROM products  GROUP BY prod_cat;   (*)     

  

SELECT MIN (prod_price), prod_cat  FROM products   GROUP BY MIN (prod_price), prod_cat;    

 

  

SELECT prod_price, MIN (prod_cat)  FROM products  GROUP BY prod_cat;     65.     Evaluate this statement:   SELECT department_id, AVG(salary)   FROM employees   WHERE job_id <> 69879   GROUP BY job_id, department_id   HAVING AVG(salary) > 35000   ORDER BY department_id;   Which clauses restricts the result? Choose two.   

(Choose all correct answers) 

 

  

SELECT department_id, AVG(salary)     

  

WHERE job_id <> 69879 (*)     

  

GROUP BY job_id, department_id     

  

HAVING AVG(salary) > 35000 (*)    66.     You want to write a report that returns the average salary of all employees in the company, sorted by  departments. The EMPLOYEES table contains the following columns:   EMPLOYEES:   EMP_ID NUMBER(10) PRIMARY KEY   LNAME VARCHAR2(20)   FNAME VARCHAR2(20)   DEPT VARCHAR2(20)   HIRE_DATE DATE  SALARY NUMBER(10)   Which SELECT statement will return the information that you require?    

  

SELECT salary (AVG)  FROM employees   GROUP BY dept;      

  

SELECT AVG (salary)   FROM employees  GROUP BY dept;                      (*)     

  

SELECT AVG (salary)   FROM employees  

BY dept;      

  

SELECT AVG salary   FROM employees  BY dept;     67.     Which statement about the GROUP BY clause is true?          To exclude rows before dividing them into groups using the GROUP BY clause, you use should a WHERE  clause. (*)     

  

You can use a column alias in a GROUP BY clause.     

  

By default, rows are not sorted when a GROUP BY clause is used.     

  

You must use the HAVING clause with the GROUP BY clause.      S6L2   

68.     Using a subquery in which clause will return a syntax error?          WHERE           FROM           HAVING           There are no places you cannot place subqueries. (*)    69.     Which operator can be used with subqueries that return only one row?          LIKE (*)       

   ANY           ALL           IN    70.     If you use the equality operator (=) with a subquery, how many values can the subquery return?    

  

only 1 (*)     

  

up to 2     

  

up to 5     

  

unlimited   

71.     Examine the structures of the CUSTOMER and ORDER_HISTORY tables:   CUSTOMER   CUSTOMER_ID NUMBER(5)  NAME VARCHAR2(25)  CREDIT_LIMIT NUMBER(8,2)  OPEN_DATE DATE   ORDER_HISTORY  ORDER_ID NUMBER(5)  CUSTOMER_ID NUMBER(5)  ORDER_DATE DATE  TOTAL NUMBER(8,2)   Which of the following scenarios would require a subquery to return the desired results?    

  

You need to display the date each customer account was opened.     

  

You need to display each date that a customer placed an order.     

  

You need to display all the orders that were placed on a certain date.     

  

You need to display all the orders that were placed on the same day as order number 25950. (*)   

72.     Which operator can be used with a multiple‐row subquery?    

  

IN (*)     

  

<>     

  

=     

  

LIKE    S6 L3    73.     Examine the structure of the EMPLOYEE, DEPARTMENT, and ORDERS tables.   EMPLOYEE  EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2(25)  FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)   DEPARTMENT   DEPARTMENT_ID NUMBER(9) 

DEPARTMENT_NAME VARCHAR2(25)  CREATION_DATE DATE   ORDERS   ORDER_ID NUMBER(9)  EMPLOYEE_ID NUMBER(9)  DATE DATE   CUSTOMER_ID NUMBER(9)   You want to display all employees who had an order after the Sales department was established. Which  of the following constructs would you use?    

  

a group function     

  

a single‐row subquery (*)     

  

the HAVING clause     

  

a MERGE statement                   Incorrect. Refer to Section 6  

  74.     Which best describes a single‐row subquery?    

  

a query that returns only one row from the inner SELECT statement (*)     

  

a query that returns one or more rows from the inner SELECT statement     

  

a query that returns only one column value from the inner SELECT statement     

  

a query that returns one or more column values from the inner SELECT statement    75.     You need to produce a report that contains all employee‐related information for those employees who  have Brad Carter as a supervisor. However, you are not sure which supervisor ID belongs to Brad Carter.  Which query should you issue to accomplish this task?    

  

SELECT *   FROM employees   WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');  

   

  

SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');      

  

SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT employee_id        FROM supervisors        WHERE last_name = 'Carter');      

  

SELECT *   FROM employees  WHERE supervisor_id =        (SELECT employee_id        FROM employees        WHERE last_name = 'Carter');                 (*)   

S6 L4    76. Which best describes a multiple‐row subquery?      A query that returns only one row from the inner SELECT statement       A query that returns one or more rows from the inner SELECT statement (*)       A query that returns only one column value from the inner SELECT statement       A query that returns one or more column values from the inner SELECT statement    77. You are looking for Executive information using a subquery. What will the following SQL statement  display?   SELECT department_id, last_name, job_id   FROM employees   WHERE department_id IN      (SELECT department_id       FROM departments       WHERE department_name = 'Executive');      The department ID, department name and last name for every employee in the Executive department.   

   The department ID, last name, department name for every Executive in the employees table.       The department ID, last name, job ID from departments for Executive employees.       The department ID, last name, job ID for every employee in the Executive department. (*)    78. Evaluate this SQL statement:   SELECT employee_id, last_name, salary   FROM employees  WHERE department_id IN      (SELECT department_id      FROM employees      WHERE salary > 30000 AND salary < 50000);   Which values will be displayed?      Only employees who earn more than $30,000.       Only employees who earn less than $50,000.       All employees who work in a department with employees who earn more than $30,000 and more than  $50,000. 

     All employees who work in a department with employees who earn more than $30,000, but less than  $50,000. (*)    79. Examine the data in the PAYMENT table:   PAYMENT_ID   CUSTOMER_ID  PAYMENT_DATE  

PAYMENT_TYPE  

86590586  

8908090  

10‐JUN‐03  

BASIC   859.00  

89453485  

8549038  

15‐FEB‐03  

INTEREST  

85490345  

5489304  

20‐MAR‐03  

BASIC   568.00  

596.00  

This statement fails when executed:   SELECT customer_id, payment_type   FROM payment   WHERE payment_id =      (SELECT payment_id       FROM payment       WHERE payment_amount = 596.00 OR payment_date = '20‐MAR‐2003');   Which change could correct the problem?      Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)       Remove the quotes surrounding the date value in the OR clause.       Remove the parentheses surrounding the nested SELECT statement. 

PAYMENT_AMOUNT  

     Change the comparison operator to a single‐row operator.               Incorrect. Refer to Section 6     80. Which operator or keyword cannot be used with a multiple‐row subquery?      ALL       ANY       = (*)       >    81.     Which of the following best describes the meaning of the ANY operator?    

  

Equal to any member in the list     

  

Compare value to each value returned by the subquery (*)     

  

Compare value to every value returned by the subquery     

  

Equal to each value in the list                   Incorrect. Refer to Section 6     82.     Which statement about single‐row and multiple‐row subqueries is true?    

  

Multiple‐row subqueries cannot be used with the LIKE operator. (*)     

  

Single‐row operators can be used with both single‐row and multiple‐row subqueries.   

 

  

Multiple‐row subqueries can be used with both single‐row and multiple‐row operators.     

  

Multiple‐row subqueries can only be used in SELECT statements.    83.     Evaluate this SELECT statement:   SELECT customer_id, name   FROM customer   WHERE customer_id IN      (SELECT customer_id       FROM customer       WHERE state_id = 'GA' AND credit_limit > 500.00);   What would happen if the inner query returned null?    

  

An error would be returned.     

  

No rows would be returned by the outer query. (*)     

  

All the rows in the table would be selected.     

  

Only the rows with CUSTOMER_ID values equal to null would be selected.     

   

       Incorrect. Refer to Section 6     84.     Evaluate this SELECT statement:   SELECT student_id, last_name, first_name  FROM student   WHERE major_id NOT IN      (SELECT major_id       FROM majors       WHERE department_head_id = 30 AND title = 'ADJUNCT');   What would happen if the inner query returned a NULL value row?    

  

A syntax error would be returned.     

  

No rows would be returned from the STUDENT table. (*)     

  

All the rows in the STUDENT table would be displayed.   

 

  

Only the rows with STUDENT_ID values equal to NULL would be displayed.     

 

  

    Incorrect. Refer to Section 6     85.     You need to create a SELECT statement that contains a multiple‐row subquery, which comparison  operator(s) can you use?    

  

IN, ANY, and ALL (*)     

  

LIKE     

  

BETWEEN...AND...     

  

=, <, and >    86.     Evaluate this SELECT statement that includes a subquery:   SELECT last_name, first_name   FROM customer 

WHERE area_code IN       (SELECT area_code FROM sales WHERE salesperson_id = 20);   Which statement is true about the given subquery?    

  

The outer query executes before the nested subquery.     

  

The results of the inner query are returned to the outer query. (*)     

  

An error occurs if the either the inner or outer queries do not return a value.     

  

Both the inner and outer queries must return a value, or an error occurs.      S7L1    87.     The STUDENTS table contains these columns:   STU_ID NUMBER(9) NOT NULL  LAST_NAME VARCHAR2 (30) NOT NULL  FIRST_NAME VARCHAR2 (25) NOT NULL  DOB DATE  STU_TYPE_ID VARCHAR2(1) NOT NULL 

ENROLL_DATE DATE   You create another table, named FT_STUDENTS, with an identical structure.You want to insert all full‐ time students, who have a STU_TYPE_ID value of "F", into the new table. You execute this INSERT  statement:   INSERT INTO ft_students      (SELECT stu_id, last_name, first_name, dob, stu_type_id, enroll_date      FROM students      WHERE UPPER(stu_type_id) = 'F');   What is the result of executing this INSERT statement?    

   

   

  

All full‐time students are inserted into the FT_STUDENTS table. (*)     

  

An error occurs because the FT_STUDENTS table already exists.     

  

An error occurs because you CANNOT use a subquery in an INSERT statement.     

  

An error occurs because the INSERT statement does NOT contain a VALUES clause.    88.     Using the INSERT statement, and assuming that a column can accept null values, how can you implicitly  insert a null value in a column?    

  

Use the NULL keyword. 

   

  

Use the ON clause     

  

Omit the column in the column list. (*)     

  

It is not possible to implicitly insert a null value in a column.    89.     The PRODUCTS table contains these columns:   PRODUCT_ID NUMBER NOT NULL   PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER NOT NULL  LIST_PRICE NUMBER (7,2)  COST NUMBER (5,2)  QTY_IN_STOCK NUMBER(4)  LAST_ORDER_DT DATE NOT NULL DEFAULT SYSDATE   Which INSERT statement will execute successfully?    

  

INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, 700); (*)     

  

INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, SYSDATE); 

   

  

INSERT INTO products(product_id, product_name) VALUES (2958, 'Cable');     

  

INSERT INTO products(product_id, product_name, supplier_id VALUES (2958, 'Cable', 8690, SYSDATE);     

   

       Incorrect. Refer to Section 7     90.     You need to add a row to an existing table. Which DML statement should you use?    

  

UPDATE     

  

INSERT (*)     

  

DELETE     

  

CREATE 

    S7L2    91.     You need to update both the DEPARTMENT_ID and LOCATION_ID columns in the EMPLOYEE table using  one UPDATE statement. Which clause should you include in the UPDATE statement to update multiple  columns?    

  

the USING clause     

  

the ON clause     

  

the WHERE clause     

  

the SET clause (*)    92.     Examine the structures of the PLAYERS, MANAGERS, and TEAMS tables:   PLAYERS  PLAYER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (30)  FIRST_NAME VARCHAR2 (25) 

TEAM_ID NUMBER  MGR_ID NUMBER  SIGNING_BONUS NUMBER(9,2)  SALARY NUMBER(9,2)   MANAGERS  MANAGER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (20)  FIRST_NAME VARCHAR2 (20)  TEAM_ID NUMBER   TEAMS  TEAM_ID NUMBER Primary Key  TEAM_NAME VARCHAR2 (20)  OWNER_LAST_NAME VARCHAR2 (20)  OWNER_FIRST_NAME VARCHAR2 (20)   Which situation would require a subquery to return the desired result?    

  

To display the names each player on the Lions team     

  

To display the maximum and minimum player salary for each team     

  

To display the names of the managers for all the teams owned by a given owner (*)     

  

To display each player, their manager, and their team name for all teams with a id value greater than  5000     

 

  

    Incorrect. Refer to Section 7     93.     What would happen if you issued a DELETE statement without a WHERE clause?    

  

All the rows in the table would be deleted. (*)     

  

An error message would be returned.     

  

No rows would be deleted.     

  

Only one row would be deleted.    94.     One of the sales representatives, Janet Roper, has informed you that she was recently married, and she  has requested that you update her name in the employee database. Her new last name is Cooper. Janet  is the only person with the last name of Roper that is employed by the company. The EMPLOYEES table  contains these columns and all data is stored in lowercase:   EMP_ID NUMBER(10) PRIMARY KEY  

LNAME VARCHAR2(20)  FNAME VARCHAR2(20)  DEPT VARCHAR2 (20)  HIRE_DATE DATE  SALARY NUMBER(10)   Which UPDATE statement will accomplish your objective?   

  

UPDATE employees  SET lname = 'cooper'   WHERE lname = 'roper';   (*)     

  

UPDATE employees lname = 'cooper'   WHERE lname = 'roper';      

  

UPDATE employees  SET lname = 'roper'   WHERE lname = 'cooper';      

  

UPDATE employees  SET cooper = 'lname'   WHERE lname = 'roper';  

  95.     When the WHERE clause is missing in a DELETE statement, what is the result?    

  

All rows are deleted from the table. (*)     

  

The table is removed from the database.     

  

An error message is displayed indicating incorrect syntax.     

  

Nothing. The statement will not execute.    96.     The PLAYERS table contains these columns:   PLAYER_ID NUMBER NOT NULL  PLAYER_LNAME VARCHAR2(20) NOT NULL  PLAYER_FNAME VARCHAR2(10) NOT NULL   TEAM_ID NUMBER   SALARY NUMBER(9,2)   You need to increase the salary of each player for all players on the Tiger team by 12.5 percent. The  TEAM_ID value for the Tiger team is 5960. Which statement should you use?    

  

UPDATE players (salary) SET salary = salary * 1.125; 

   

  

UPDATE players SET salary = salary * .125 WHERE team_id = 5960;     

  

UPDATE players SET salary = salary * 1.125 WHERE team_id = 5960; (*)     

  

UPDATE players (salary) VALUES(salary * 1.125) WHERE team_id = 5960;    97.     The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns:   TEACHERS   TEACHER_ID NUMBER(5)   NAME VARCHAR2(25)   SUBJECT_ID NUMBER(5)  HIRE_DATE DATE  SALARY NUMBER(9,2)   CLASS_ASSIGNMENTS  CLASS_ID NUMBER(5)  TEACHER_ID NUMBER(5)  START_DATE DATE  MAX_CAPACITY NUMBER(3)   Which scenario would require a subquery to return the desired results?    

  

You need to display the start date for each class taught by a given teacher.     

  

You need to create a report to display the teachers who were hired more than five years ago.     

  

You need to display the names of the teachers who teach classes that start within the next week.     

  

You need to create a report to display the teachers who teach more classes than the average number of  classes taught by each teacher. (*)    98.     Evaluate this statement: DELETE FROM customer; Which statement is true?    

  

The statement deletes all the rows from the CUSTOMER table. (*)     

  

The statement deletes the CUSTOMER column.     

  

The statement deletes the first row in the CUSTOMERS table.     

  

The statement removes the structure of the CUSTOMER table from the database.   

99.     You need to update the expiration date of products manufactured before June 30th . In which clause of  the UPDATE statement will you specify this condition?    

  

the ON clause     

  

the WHERE clause (*)     

  

the SET clause     

  

the USING clause    100.     You want to enter a new record into the CUSTOMERS table. Which two commands can be used to create  new rows?    

  

INSERT, CREATE     

  

MERGE, CREATE     

  

INSERT, MERGE (*) 

   

  

INSERT, UPDATE                         Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 1 Lesson 1    (Answer all questions in this section)             1.  You query the database with this SQL statement:     SELECT CONCAT(last_name, (SUBSTR(LOWER(first_name), 4))) "Default Password"  

FROM employees;       Which function will be evaluated first?    Mark for Review   (1) Points               CONCAT           SUBSTR           LOWER (*)           All three will be evaluated simultaneously.                     Correct                  2.  You need to return a portion of each employee's last name, beginning with the first character up to  the fifth character. Which character function should you use?  Mark for Review   (1) Points               INSTR           TRUNC  

        SUBSTR (*)           CONCAT                     Correct                  3.  Evaluate this SELECT statement:    SELECT LENGTH(email)  FROM employees;      What will this SELECT statement display?    Mark for Review   (1) Points               The longest e‐mail address in the EMPLOYEES table.           The email address of each employee in the EMPLOYEES table.           The number of characters for each value in the EMAIL column in the EMPLOYEES table. (*)      

    The maximum number of characters allowed in the EMAIL column.                     Correct                  4.  What will the following SQL statement display?     SELECT last_name, LPAD(salary, 15, '$')SALARY   FROM employees;       Mark for Review   (1) Points               The last name of employees that have a salary that includes a $ in the value, size of 15 and the column  labeled SALARY.           The last name and the format of the salary limited to 15 digits to the left of the decimal and the  column labeled SALARY.           The last name and salary for all employees with the format of the salary 15 characters long, left‐ padded with the $ and the column labeled SALARY. (*)           The query will result in an error: "ORA‐00923: FROM keyword not found where expected."              

      Incorrect. Refer to Section 1                  5.  You query the database with this SQL statement:     SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID"  FROM employee;      In which order are the functions evaluated?    Mark for Review   (1) Points               LOWER, SUBSTR, CONCAT           LOWER, CONCAT, SUBSTR           SUBSTR, CONCAT, LOWER           CONCAT, SUBSTR, LOWER (*)                     Correct               

  6.  The STYLES table contains this data:    STYLE_ID  STYLE_NAME  CATEGORY  COST    895840  SANDAL  85940  12.00    968950  SANDAL  85909  10.00    869506  SANDAL  89690  15.00    809090  LOAFER  89098  10.00    890890  LOAFER  89789  14.00    857689  HEEL 85940  11.00    758960  SANDAL  86979 12.00        You query the database and return the value 79. Which script did you use?    Mark for Review   (1) Points               SELECT INSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;              SELECT INSTR(category, ‐2,2)   FROM styles   WHERE style_id = 895840;     

        SELECT SUBSTR(category, 2,2)   FROM styles   WHERE style_id = 895840;             SELECT SUBSTR(category, ‐2,2)   FROM styles   WHERE style_id = 758960;  (*)                       Correct                  7.  You need to display each employee's name in all uppercase letters. Which function should you use?   Mark for Review   (1) Points               CASE           UCASE           UPPER (*)      

    TOUPPER                     Correct                            Section 1 Lesson 2    (Answer all questions in this section)             8.  Which comparison operator retrieves a list of values?  Mark for Review   (1) Points               IN (*)           LIKE           BETWEEN...IN...           IS NULL                     Incorrect. Refer to Section 1 Lesson 1       

          9.  You issue this SQL statement:     SELECT TRUNC(751.367,‐1)   FROM dual;      Which value does this statement display?    Mark for Review   (1) Points               700           750 (*)           751           751.3                     Correct                  10.  Evaluate this function: MOD (25, 2) Which value is returned?  Mark for Review   (1) Points  

            1 (*)           2           25           0                     Correct                  Page 1 of 10               Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 1 Lesson 3  

 (Answer all questions in this section)             11.  Which of the following Date Functions will add calendar months to a date?  Mark for Review   (1) Points               Months + Calendar (Month)           ADD_MONTHS (*)           MONTHS + Date           NEXT_MONTH                     Correct                  12.  The EMPLOYEES table contains these columns:     LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   HIRE_DATE DATE  EVAL_MONTHS NUMBER(3)      

Evaluate this SELECT statement:       SELECT hire_date + eval_months   FROM employees;     The values returned by this SELECT statement will be of which data type?    Mark for Review   (1) Points               DATE (*)           NUMBER           DATETIME           INTEGER                     Incorrect. Refer to Section 1                  13.  You need to subtract three months from the current date. Which function should you use?  Mark  for Review   (1) Points          

    ROUND           TO_DATE           ADD_MONTHS (*)           MONTHS_BETWEEN                     Incorrect. Refer to Section 1                  14.  You want to create a report that displays all orders and their amounts that were placed during the  month of January. You want the orders with the highest amounts to appear first. Which query should  you issue?  Mark for Review   (1) Points               SELECT orderid, total   FROM orders   WHERE order_date LIKE '01‐jan‐02' AND '31‐jan‐02'   ORDER BY total DESC;             SELECT orderid, total   FROM orders   WHERE order_date IN ( 01‐jan‐02 , 31‐jan‐02 )  

ORDER BY total;             SELECT orderid, total   FROM orders   WHERE order_date BETWEEN '01‐jan‐02' AND '31‐jan‐02'   ORDER BY total DESC;  (*)             SELECT orderid, total   FROM orders   WHERE order_date BETWEEN '31‐jan‐02' AND '01‐jan‐02'   ORDER BY total DESC;                       Incorrect. Refer to Section 1                  15.  Which of the following SQL statements will correctly display the last name and the number of  weeks employed for all employees in department 90?  Mark for Review   (1) Points               SELECT last_name, (SYSDATE‐hire_date)/7 AS WEEKS   FROM employees  

WHERE department_id = 90;  (*)             SELECT last name, (SYSDATE‐hire_date)/7 DISPLAY WEEKS   FROM employees   WHERE department id = 90;             SELECT last_name, # of WEEKS   FROM employees   WHERE department_id = 90;             SELECT last_name, (SYSDATE‐hire_date)AS WEEK   FROM employees   WHERE department_id = 90;                       Incorrect. Refer to Section 1                          

 Section 2 Lesson 1    (Answer all questions in this section)             16.  If you use the RR format when writing a query using the date 27‐OCT‐17 and the year is 2001, what  year would be the result?  Mark for Review   (1) Points               2001           1901           2017 (*)           1917                     Correct                  17.  Which two statements concerning SQL functions are true? (Choose two.)  Mark for Review   (1) Points              (Choose all correct answers)                Character functions can accept numeric input.      

    Not all date functions return date values. (*)           Number functions can return number or character values.           Conversion functions convert a value from one data type to another data type. (*)           Single‐row functions manipulate groups of rows to return one result per group of rows.                     Incorrect. Refer to Section 2                  18.  All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a  report that displays each employee's name and salary. Each employee's salary must be displayed in the  following format: $000,000.00. Which function should you include in a SELECT statement to achieve the  desired result?  Mark for Review   (1) Points               TO_CHAR (*)           TO_DATE           TO_NUMBER           CHARTOROWID              

      Incorrect. Refer to Section 2                  19.  Which arithmetic operation will return a numeric value?  Mark for Review   (1) Points               TO_DATE('01‐JUN‐2004') ‐ TO_DATE('01‐OCT‐2004') (*)           NEXT_DAY(hire_date) + 5           SYSDATE ‐ 6           SYSDATE + 30 / 24                     Incorrect. Refer to Section 2                  20.  You have been asked to create a report that lists all customers who have placed orders of at least  $2,500. The report's date should be displayed in the Day, Date Month, Year format (For example,  Tuesday, 13 April, 2004 ). Which statement should you issue?  Mark for Review   (1) Points               SELECT companyname, TO_CHAR (sysdate, 'fmdd, dy month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;  

           SELECT companyname, TO_DATE (date, 'day, dd month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;             SELECT companyname, TO_DATE (sysdate, 'dd, dy month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;             SELECT companyname, TO_CHAR (sysdate, 'fmDay, dd Month, yyyy'), total   FROM customers NATURAL JOIN orders   WHERE total >= 2500;  (*)                       Incorrect. Refer to Section 2                   Page 2 of 10      

               Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 2 Lesson 1    (Answer all questions in this section)             21.  Which three statements concerning explicit data type conversions are true? (Choose three.)  Mark  for Review   (1) Points              (Choose all correct answers)                Use the TO_NUMBER function to convert a number to a character string.           Use the TO_DATE function to convert a character string to a date value. (*)           Use the TO_NUMBER function to convert a character string of digits to a number. (*)      

    Use the TO_DATE function to convert a date value to character string or number.           Use the TO_CHAR function to convert a number or date value to character string. (*)                     Incorrect. Refer to Section 2                            Section 2 Lesson 2    (Answer all questions in this section)             22.  Which statement about group functions is true?  Mark for Review   (1) Points               NVL and NVL2, but not COALESCE, can be used with group functions to replace null values.           NVL and COALESCE, but not NVL2, can be used with group functions to replace null values.           NVL, NVL2, and COALESCE can be used with group functions to replace null values. (*)           COALESCE, but not NVL and NVL2, can be used with group functions to replace null values.              

      Incorrect. Refer to Section 2                  23.  The PRODUCT table contains this column: PRICE NUMBER(7,2)   Evaluate this statement:     SELECT NVL(10 / price, '0')   FROM PRODUCT;     What would happen if the PRICE column contains null values?    Mark for Review   (1) Points               The statement would fail because values cannot be divided by 0.           A value of 0 would be displayed. (*)           A value of 10 would be displayed.           The statement would fail because values cannot be divided by null.                     Correct               

  24.  You need to replace null values in the DEPARTMENT_ID column with the text "N/A". Which  functions should you use?  Mark for Review   (1) Points               TO_CHAR and NVL (*)           TO_CHAR and NULL           TO_CHAR and NULLIF           TO_NUMBER and NULLIF                     Incorrect. Refer to Section 2                            Section 3 Lesson 2    (Answer all questions in this section)             25.  When joining 3 tables in a SELECT statement, how many join conditions are needed in the WHERE  clause?  Mark for Review   (1) Points               0  

        1           2 (*)           3                     Incorrect. Refer to Section 3                  26.  You need to provide a list of the first and last names of all employees who work in the Sales  department who earned a bonus and had sales over $50,000. The company president would like the  sales listed starting with the highest amount first. The EMPLOYEES table and the SALES_DEPT table  contain the following columns:   EMPLOYEES   EMPLOYEE_ID NUMBER(10) PRIMARY KEY   LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   DEPARTMENT_ID NUMBER(10)   HIRE_DATE DATE   SALARY NUMBER(8,2)     SALES_DEPT   SALES_ID NUMBER(10) PRIMARY KEY   SALES NUMBER(20)   QUOTA NUMBER(20)  

MANAGER NUMBER(10)   BONUS NUMBER(10)   EMPLOYEE_ID NUMBER(10) FOREIGN KEY     Which SELECT statement will accomplish this task?    Mark for Review   (1) Points               SELECT e.employee_id, e.last_name, e.first_name, s.employee_id, s.bonus, s.sales   FROM employees e, sales_dept s   ORDER BY sales DESC   WHERE e.employee_id = s.employee_id AND sales > 50000 AND s.bonus IS NOT NULL;             SELECT e.employee_id, e.last_name, e.first_name, s.employee_id, s.bonus, s. sales   ORDER BY sales DESC   FROM employees e, sales_dept s   WHERE e.employee_id = s.employee_id AND s.bonus IS NOT NULL AND sales > 50000;             SELECT e.employee_id, e.last_name, e.first_name, s.employee_id, s.bonus, s. sales   WHERE e.employee_id = s.employee_id   FROM employees e, sales_dept s AND s.bonus IS NOT NULL AND sales > 50000   ORDER BY sales DESC;    

        SELECT e.employee_id, e.last_name, e.first_name, s.employee_id, s.bonus, s. sales   FROM employees e, sales_dept s   WHERE e.employee_id = s.employee_id AND s.bonus IS NOT NULL AND sales > 50000   ORDER BY sales DESC;  (*)                       Incorrect. Refer to Section 3                  27.  Evaluate this SQL statement:   SELECT e.employee_id, e.last_name, e.first_name, d.department_name   FROM employees e, departments d   WHERE e.department_id = d.department_id AND employees.department_id > 5000   ORDER BY 4;     Which clause contains a syntax error?     Mark for Review   (1) Points               SELECT e.employee_id, e.last_name, e.first_name, d.department_name      

    FROM employees e, departments d           WHERE e.department_id = d.department_id           AND employees.department_id > 5000 (*)           ORDER BY 4;                     Incorrect. Refer to Section 3                  28.  The PATIENTS and DOCTORS tables contain these columns:   PATIENTS   PATIENT_ID NUMBER(9)  LAST_NAME VARCHAR2 (20)   FIRST_NAME VARCHAR2 (20)    DOCTORS   DOCTOR_ID NUMBER(9)   LAST_NAME VARCHAR2 (20)   FIRST_NAME VARCHAR2 (20)     You issue this statement:   SELECT patient_id, doctor_id  

FROM patients, doctors;     Which result will this statement provide?    Mark for Review   (1) Points               A report containing all possible combinations of the PATIENT_ID and DOCTOR_ID values (*)           A report containing each patient's id value and their doctor's id value           A report with NO duplicate PATIENT_ID or DOCTOR_ID values           A syntax error                     Incorrect. Refer to Section 3                  29.  What is produced when a join condition is not specified in a multiple‐table query using Oracle  proprietary Join syntax?  Mark for Review   (1) Points               a self‐join           an outer join      

    an equijoin           a Cartesian product (*)                     Incorrect. Refer to Section 3                  30.  What happens when you create a Cartesian product?  Mark for Review   (1) Points               All rows from one table are joined to all rows of another table (*)           The table is joined to itself, one column to the next column, exhausting all possibilities           The table is joined to another equal table           All rows that do not match in the WHERE clause are displayed                     Correct                   Page 3 of 10    

                 Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 3 Lesson 4    (Answer all questions in this section)             31.  Using Oracle Proprietary join syntax, which two operators can be used in an outer join condition  using the outer join operator (+)?  Mark for Review   (1) Points               AND and = (*)           OR and =           BETWEEN...AND... and IN           IN and =  

                  Correct                  32.  Which statement about outer joins is true?  Mark for Review   (1) Points               The tables must be aliased.           The FULL, RIGHT, or LEFT keyword must be included.           The OR operator cannot be used to link outer join conditions. (*)           Outer joins are always evaluated before other types of joins in the query.                     Incorrect. Refer to Section 3                  33.  Using Oracle Proprietary join syntax, which operator would you use after one of the column names  in the WHERE clause when creating an outer join?  Mark for Review   (1) Points               (+) (*)      

    *           +           =                     Correct                            Section 4 Lesson 2    (Answer all questions in this section)             34.  You need to join two tables that have two columns with the same name, datatype and precision.  Which type of join would you create to join the tables on both of the columns?  Mark for Review   (1) Points               Natural join (*)           Cross join           Outer join           Self‐join  

                  Correct                  35.  A join between tables where the result set includes matching values from both tables but does  NOT return any unmatched rows could be called which of the following? (Choose three)  Mark for  Review   (1) Points              (Choose all correct answers)                Equijoin (*)           Self join (*)           Nonequijoin           Simple join (*)           Full outer join                     Incorrect. Refer to Section 4               

  36.  Which of the following conditions will cause an error on a NATURAL JOIN?  Mark for Review   (1) Points               When you attempt to write it as an equijoin.           When the NATURAL JOIN clause is based on all columns in the two tables that have the same name.           If it selects rows from the two tables that have equal values in all matched columns.           If the columns having the same names have different data types, then an error is returned. (*)                     Correct                            Section 4 Lesson 3    (Answer all questions in this section)             37.  Which keyword in a SELECT statement creates an equijoin by specifying a column name common  to both tables?  Mark for Review   (1) Points               A HAVING clause      

    The FROM clause           The SELECT clause           A USING clause (*)                     Incorrect. Refer to Section 4                  38.  Below find the structure of the CUSTOMERS and SALES_ORDER tables:     CUSTOMERS  CUSTOMER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_NAME VARCHAR2 (30)   CONTACT_NAME VARCHAR2 (30)  CONTACT_TITLE VARCHAR2 (20)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (20)  COUNTRY_ID NUMBER Foreign key to COUNTRY_ID column of the COUNTRY table   PHONE VARCHAR2 (20)  FAX VARCHAR2 (20)   CREDIT_LIMIT NUMBER(7,2) 

    SALES_ORDER  ORDER_ID NUMBER NOT NULL, Primary Key  CUSTOMER_ID NUMBER Foreign key to CUSTOMER_ID column of the CUSTOMER table  ORDER_DT DATE   ORDER_AMT NUMBER (7,2)   SHIP_METHOD VARCHAR2 (5)       You need to create a report that displays customers without a sales order. Which statement could you  use?    Mark for Review   (1) Points               SELECT c.customer_name   FROM customers c   WHERE c.customer_id not in (SELECT s.customer_id FROM sales_order s);   (*)             SELECT c.customer_name   FROM customers c, sales_order s   WHERE c.customer_id = s.customer_id(+);         

    SELECT c.customer_name   FROM customers c, sales_order s   WHERE c.customer_id (+) = s.customer_id;              SELECT c.customer_name   FROM customers c  RIGHT OUTER JOIN sales_order s ON (c.customer_id = s.customer_id);                        Incorrect. Refer to Section 4                  39.  The primary advantage of using JOIN ON is:  Mark for Review   (1) Points               The join happens automatically based on matching column names and data types           It will display rows that do not meet the join condition           It permits columns with different names to be joined (*)           It permits columns that don't have matching data types to be joined      

              Incorrect. Refer to Section 4                  40.  Evaluate this SELECT statement:    SELECT a.last_name || ', ' || a.first_name as "Patient", b.last_name || ', ' || b.first_name as "Physician",  c.admission   FROM patient a   JOIN physician b   ON (b.physician_id = c.physician_id)   JOIN admission c   ON (a.patient_id = c.patient_id);     Which clause generates an error?    Mark for Review   (1) Points               JOIN physician b           ON (b.physician_id = c.physician_id) (*)           JOIN admission c           ON (a.patient_id = c.patient_id)      

              Incorrect. Refer to Section 4                   Page 4 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 4 Lesson 4    (Answer all questions in this section)             41.  Which query represents the correct syntax for a left outer join?  Mark for Review   (1) Points               SELECT companyname, orderdate, total  

FROM customers c   LEFT JOIN orders o  ON c.cust_id = o.cust_id;             SELECT companyname, orderdate, total  FROM customers c  OUTER JOIN orders o  ON c.cust_id = o.cust_id;             SELECT companyname, orderdate, total   FROM customers c   LEFT OUTER JOIN orders o   ON c.cust_id = o.cust_id;   (*)             SELECT companyname, orderdate, total   FROM customers c   LEFT OUTER orders o   ON c.cust_id = o.cust_id;                 

      Incorrect. Refer to Section 4                  42.  Which two sets of join keywords create a join that will include unmatched rows from the first table  specified in the SELECT statement?  Mark for Review   (1) Points               LEFT OUTER JOIN and FULL OUTER JOIN (*)           RIGHT OUTER JOIN and LEFT OUTER JOIN           USING and HAVING           OUTER JOIN and USING                     Incorrect. Refer to Section 4                  43.  You need to display all the rows from both the EMPLOYEES and EMPLOYEE_HISTS tables. Which  type of join would you use?  Mark for Review   (1) Points               a right outer join           a left outer join  

        a full outer join (*)           an inner join                     Incorrect. Refer to Section 4                            Section 5 Lesson 1    (Answer all questions in this section)             44.  Evaluate this SELECT statement:  SELECT MAX(salary), department_id   FROM employees   GROUP BY department_id;     Which values are displayed?    Mark for Review   (1) Points               The highest salary for all employees.      

    The highest salary in each department. (*)           The employees with the highest salaries.           The employee with the highest salary for each department.                     Correct                  45.  Evaluate this SELECT statement:     SELECT MIN(hire_date), department_id   FROM employees   GROUP BY department_id;     Which values are displayed?    Mark for Review   (1) Points               The earliest hire date in each department. (*)           The the earliest hire date in the EMPLOYEES table.           The latest hire date in the EMPLOYEES table.  

        The hire dates in the EMPLOYEES table that contain NULL values.                     Incorrect. Refer to Section 5                  46.  If a select list contains both columns as well as groups function then what clause is required?  Mark  for Review   (1) Points               having clause           join clause           order by clause           group by clause (*)                     Incorrect. Refer to Section 5                  47.  Group functions can be nested to a depth of?  Mark for Review   (1) Points          

    three           four           two (*)           Group functions cannot be nested.                     Incorrect. Refer to Section 5                            Section 5 Lesson 2    (Answer all questions in this section)             48.  You need to calculate the standard deviation for the cost of products produced in the Birmingham  facility. Which group function will you use?  Mark for Review   (1) Points               STDEV           STDDEV (*)           VAR_SAMP  

        VARIANCE                     Incorrect. Refer to Section 5                  49.  The TRUCKS table contains these columns:   TRUCKS   TYPE VARCHAR2(30)   YEAR DATE   MODEL VARCHAR2(20)   PRICE NUMBER(10)     Which SELECT statement will return the average price for the 4x4 model?    Mark for Review   (1) Points               SELECT AVG (price) FROM trucks WHERE model = '4x4'; (*)           SELECT AVG (price) FROM trucks WHERE model IS '4x4';           SELECT AVG(price) FROM trucks WHERE model IS 4x4;           SELECT AVG(price), model FROM trucks WHERE model = '4x4';  

                  Correct                  50.  You need to compute the total salary for all employees in department 10. Which group function  will you use?  Mark for Review   (1) Points               MAX           SUM (*)           VARIANCE           COUNT                     Correct                   Page 5 of 10             

        Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 5 Lesson 2    (Answer all questions in this section)             51.  Which aggregate function can be used on a column of the DATE data type?  Mark for Review   (1) Points               AVG           MAX (*)           STDDEV           SUM                     Incorrect. Refer to Section 5   

              52.  Which group function would you use to display the highest salary value in the EMPLOYEE table?   Mark for Review   (1) Points               AVG           COUNT           MAX (*)           MIN                     Correct                  53.  The PRODUCTS table contains these columns:  PROD_ID NUMBER(4)   PROD_NAME VARCHAR2(30)  PROD_CAT VARCHAR2(30)  PROD_PRICE NUMBER(3)   PROD_QTY NUMBER(4)    The following statement is issued:  

  SELECT AVG(prod_price, prod_qty)   FROM products;     What happens when this statement is issued?    Mark for Review   (1) Points               Both the average price and the average quantity of the products are returned.           Only the average quantity of the products is returned.           The values in the PROD_PRICE column and the PROD_QTY column are averaged together.           An error occurs. (*)                     Incorrect. Refer to Section 5                  54.  The AVG, SUM, VARIANCE, and STDDEV functions can be used with which of the following?  Mark  for Review   (1) Points               Only numeric data types (*)      

    Integers only           Any data type           All except numeric                     Correct                  55.  The CUSTOMERS table contains these columns:   CUSTOMER_ID NUMBER(9)   FIRST_NAME VARCHAR2(25)   LAST_NAME VARCHAR2(30)   CREDIT_LIMIT NUMBER (7,2)  CATEGORY VARCHAR2(20)     You need to calculate the average credit limit for all the customers in each category. The average should  be calculated based on all the rows in the table excluding any customers who have not yet been  assigned a credit limit value. Which group function should you use to calculate this value?    Mark for Review   (1) Points               AVG (*)           SUM  

        COUNT           STDDEV                     Incorrect. Refer to Section 5                            Section 5 Lesson 3    (Answer all questions in this section)             56.  Evaluate this SELECT statement:  SELECT COUNT(*)  FROM employees   WHERE salary > 30000;     Which results will the query display?    Mark for Review   (1) Points               The number of employees that have a salary less than 30000.      

    The total of the SALARY column for all employees that have a salary greater than 30000.           The number of rows in the EMPLOYEES table that have a salary greater than 30000. (*)           The query generates an error and returns no results.                     Correct                  57.  The EMPLOYEES table contains these columns:   EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   SALARY NUMBER(7,2)   DEPARTMENT_ID NUMBER(9)     You need to display the number of employees whose salary is greater than $50,000? Which SELECT  would you use?    Mark for Review   (1) Points               SELECT * FROM employees   WHERE salary > 50000;         

    SELECT * FROM employees   WHERE salary < 50000;              SELECT COUNT(*) FROM employees   WHERE salary < 50000;              SELECT COUNT(*) FROM employees   WHERE salary > 50000;   (*)             SELECT COUNT(*) FROM employees   WHERE salary > 50000   GROUP BY employee_id, last_name, first_name, salary, department_id;                        Incorrect. Refer to Section 5                  58.  Evaluate this SQL statement:   SELECT COUNT (amount)   FROM inventory;  

  What will occur when the statement is issued?    Mark for Review   (1) Points               The statement will return the greatest value in the INVENTORY table.           The statement will return the total number of rows in the AMOUNT column.           The statement will replace all NULL values that exist in the AMOUNT column.           The statement will count the number of rows in the INVENTORY table where the AMOUNT column is  not null. (*)                     Incorrect. Refer to Section 5                  59.  Which SELECT statement will calculate the number of rows in the PRODUCTS table?  Mark for  Review   (1) Points               SELECT COUNT(products);           SELECT COUNT FROM products;      

    SELECT COUNT (*) FROM products; (*)           SELECT ROWCOUNT FROM products;                     Incorrect. Refer to Section 5                            Section 6 Lesson 1    (Answer all questions in this section)             60.  Evaluate this SELECT statement:   SELECT SUM(salary), department_id, manager_id  FROM employees   GROUP BY department_id, manager_id;     Which SELECT statement clause allows you to restrict the rows returned, based on a group function?    Mark for Review   (1) Points               HAVING SUM(salary) > 100000 (*)           WHERE SUM(salary) > 100000  

        WHERE salary > 100000           HAVING salary > 100000                     Incorrect. Refer to Section 6                   Page 6 of 10                      Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 1    (Answer all questions in this section)  

          61.  Which statement about the GROUP BY clause is true?  Mark for Review   (1) Points               To exclude rows before dividing them into groups using the GROUP BY clause, you should use a  WHERE clause. (*)           You can use a column alias in a GROUP BY clause.           By default, rows are not sorted when a GROUP BY clause is used.           You must use the HAVING clause with the GROUP BY clause.                     Correct                  62.  The PAYMENT table contains these columns:   PAYMENT_ID NUMBER(9) PK  PAYMENT_DATE DATE   CUSTOMER_ID NUMBER(9)     Which SELECT statement could you use to display the number of times each customer made a payment  between January 1, 2003 and June 30, 2003 ?   Mark for Review   (1) Points  

            SELECT customer_id, COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003'   GROUP BY customer_id;  (*)             SELECT COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003';             SELECT customer_id, COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003';             SELECT COUNT(payment_id)   FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '30‐JUN‐2003'   GROUP BY customer_id;                

      Incorrect. Refer to Section 6                  63.  Evaluate this SELECT statement:   SELECT COUNT(emp_id), mgr_id, dept_id   FROM employee  WHERE status = 'I'   GROUP BY dept_id   HAVING salary > 30000   ORDER BY 2;     Why does this statement return a syntax error?   Mark for Review   (1) Points               MGR_ID must be included in the GROUP BY clause. (*)           The HAVING clause must specify an aggregate function.           A single query cannot contain a WHERE clause and a HAVING clause.           The ORDER BY clause must specify a column name in the EMPLOYEE table.                     Incorrect. Refer to Section 6   

              64.  Evaluate this SELECT statement:   SELECT COUNT(employee_id), department_id   FROM employees   GROUP BY department_id;     You only want to include employees who earn more than 15000.   Which clause should you include in the SELECT statement?   Mark for Review   (1) Points               WHERE salary > 15000 (*)           HAVING salary > 15000           WHERE SUM(salary) > 15000           HAVING SUM(salary) > 15000                     Incorrect. Refer to Section 6                  65.  The PLAYERS table contains these columns:  

PLAYER_ID NUMBER PK   PLAYER_NAME VARCHAR2 (30)   TEAM_ID NUMBER   HIRE_DATE DATE   SALARY NUMBER (8,2)     Which two clauses represent valid uses of aggregate functions? (Choose three.)    Mark for Review   (1) Points              (Choose all correct answers)                ORDER BY AVG(salary) (*)           GROUP BY MAX(salary)           SELECT AVG(NVL(salary, 0)) (*)           HAVING MAX(salary) > 10000 (*)           WHERE hire_date > AVG(hire_date)                     Incorrect. Refer to Section 6       

          66.  The EMPLOYEES table contains these columns:   ID_NUMBER NUMBER Primary Key   NAME VARCHAR2 (30)   DEPARTMENT_ID NUMBER   SALARY NUMBER (7,2)   HIRE_DATE DATE    Evaluate this SQL statement:     SELECT id_number, name, hire_date, department_id, SUM(salary)   FROM employees   WHERE salary > 25000   GROUP BY department_id, id_number, name   ORDER BY hire_date;     Why will this statement cause an error?    Mark for Review   (1) Points               The HAVING clause is missing.           The WHERE clause contains a syntax error.           The SALARY column is NOT included in the GROUP BY clause.  

        The HIRE_DATE column is NOT included in the GROUP BY clause. (*)                     Incorrect. Refer to Section 6                  67.  Evaluate this statement:   SELECT department_id, AVG(salary)   FROM employees   WHERE job_id <> 69879   GROUP BY job_id, department_id   HAVING AVG(salary) > 35000   ORDER BY department_id;     Which clauses restricts the result? Choose two.   Mark for Review   (1) Points              (Choose all correct answers)                SELECT department_id, AVG(salary)           WHERE job_id <> 69879 (*)      

    GROUP BY job_id, department_id           HAVING AVG(salary) > 35000 (*)                     Correct                            Section 6 Lesson 2    (Answer all questions in this section)             68.  Which statement about subqueries is true?  Mark for Review   (1) Points               Subqueries should be enclosed in double quotation marks.           Subqueries cannot contain group functions.           Subqueries are often used in a WHERE clause to return values for an unknown conditional value. (*)           Subqueries generally execute last, after the main or outer query executes.              

      Incorrect. Refer to Section 6                  69.  Which operator can be used with a multiple‐row subquery?  Mark for Review   (1) Points               IN (*)           <>           =           LIKE                     Incorrect. Refer to Section 6                  70.  The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns:   TEACHERS  TEACHER_ID NUMBER(5) Primary Key  NAME VARCHAR2 (25)   SUBJECT_ID NUMBER(5)      

CLASS_ASSIGNMENTS  CLASS_ID NUMBER (5) Primary Key   TEACHER_ID NUMBER (5)  START_DATE DATE  MAX_CAPACITY NUMBER (3)    All MAX_CAPACITY values are greater than 10. Which two SQL statements correctly use subqueries?  (Choose two.)    Mark for Review   (1) Points              (Choose all correct answers)                SELECT *   FROM class_assignments   WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments);  (*)             SELECT *   FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE class_id = 45963);   (*)             SELECT *  

FROM teachers   WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);              SELECT *   FROM teachers   WHERE teacher_id LIKE (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0);              SELECT *   FROM class_assignments   WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments GROUP BY teacher_id);                        Incorrect. Refer to Section 6                   Page 7 of 10                   

  Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 2    (Answer all questions in this section)             71.  Using a subquery in which of the following clauses will return a syntax error?  Mark for Review   (1) Points               WHERE           FROM           HAVING           You can use subqueries in all of the above clauses. (*)                     Correct               

  72.  You need to create a report to display the names of products with a cost value greater than the  average cost of all products. Which SELECT statement should you use?  Mark for Review   (1) Points               SELECT product_name  FROM products   WHERE cost > (SELECT AVG(cost) FROM product);   (*)             SELECT product_name   FROM products  WHERE cost > AVG(cost);             SELECT AVG(cost), product_name   FROM products  WHERE cost > AVG(cost)   GROUP by product_name;              SELECT product_name   FROM (SELECT AVG(cost) FROM product)   WHERE cost > AVG(cost);         

              Incorrect. Refer to Section 6                            Section 6 Lesson 3    (Answer all questions in this section)             73.  If a single‐row subquery returns a null value and uses the equality comparison operator, what will  the outer query return?  Mark for Review   (1) Points               no rows (*)           all the rows in the table           a null value           an error                     Incorrect. Refer to Section 6                  74.  Examine the structure of the EMPLOYEE, DEPARTMENT, and ORDERS tables.  

EMPLOYEE  EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2(25)  FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)     DEPARTMENT   DEPARTMENT_ID NUMBER(9)  DEPARTMENT_NAME VARCHAR2(25)  CREATION_DATE DATE    ORDERS   ORDER_ID NUMBER(9)  EMPLOYEE_ID NUMBER(9)  DATE DATE   CUSTOMER_ID NUMBER(9)    You want to display all employees who had an order after the Sales department was established. Which  of the following constructs would you use?    Mark for Review   (1) Points               a group function           a single‐row subquery (*)      

    the HAVING clause           a MERGE statement                     Incorrect. Refer to Section 6                  75.  Which statement about the <> operator is true?  Mark for Review   (1) Points               The <> operator is NOT a valid SQL operator.           The <> operator CANNOT be used in a single‐row subquery.           The <> operator returns the same result as the ANY operator in a subquery.           The <> operator can be used when a single‐row subquery returns only one row. (*)                     Incorrect. Refer to Section 6                          

 Section 6 Lesson 4    (Answer all questions in this section)             76.  Evaluate this SQL statement:   SELECT employee_id, last_name, salary   FROM employees  WHERE department_id IN      (SELECT department_id      FROM employees      WHERE salary > 30000 AND salary < 50000);    Which values will be displayed?    Mark for Review   (1) Points               Only employees who earn more than $30,000.           Only employees who earn less than $50,000.           All employees who work in a department with employees who earn more than $30,000 and more  than $50,000.           All employees who work in a department with employees who earn more than $30,000, but less than  $50,000. (*)              

      Correct                  77.  Evaluate the structure of the EMPLOYEE and DEPART_HIST tables:   EMPLOYEE:  EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2(25)   FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)  MANAGER_ID NUMBER(9)  SALARY NUMBER(7,2)     DEPART_HIST:   EMPLOYEE_ID NUMBER(9)   OLD_DEPT_ID NUMBER(9)  NEW_DEPT_ID NUMBER(9)  CHANGE_DATE DATE     You want to generate a list of employees who are in department 10, but used to be in department 15.   Which query should you use?    Mark for Review   (1) Points               SELECT employee_id, last_name, first_name, department_id  FROM employee  

WHERE (employee_id, department_id) IN      (SELECT employee_id, new_dept_id      FROM depart_hist       WHERE old_dept_id = 15) AND new_dept_id = 10;  (*)             SELECT employee_id, last_name, first_name, department_id  FROM employee  WHERE (employee_id) IN      (SELECT employee_id       FROM employee_hist       WHERE old_dept_id = 15);             SELECT employee_id, last_name, first_name, department_id  FROM employee  WHERE (employee_id, department_id) =      (SELECT employee_id, new_dept_id       FROM depart_hist       WHERE new_dept_id = 15);              SELECT employee_id, last_name, first_name, department_id   FROM employee  

WHERE (employee_id, department_id) IN      (SELECT employee_id, dept_id       FROM employee       WHERE old_dept_id = 15);                       Incorrect. Refer to Section 6                  78.  Which of the following statements contains a comparison operator that is used to restrict rows  based on a list of values returned from an inner query?  Mark for Review   (1) Points               SELECT description   FROM d_types   WHERE code IN (SELECT type_code FROM d_songs);             SELECT description  FROM d_types  WHERE code = ANY (SELECT type_code FROM d_songs);             SELECT description   FROM d_types  

WHERE code <> ALL (SELECT type_code FROM d_songs);             All of the above. (*)                     Incorrect. Refer to Section 6                  79.  Evaluate this SELECT statement:  SELECT customer_id, name   FROM customer   WHERE customer_id IN      (SELECT customer_id       FROM customer       WHERE state_id = 'GA' AND credit_limit > 500.00);     What would happen if the inner query returned null?    Mark for Review   (1) Points               An error would be returned.           No rows would be returned by the outer query. (*)      

    All the rows in the table would be selected.           Only the rows with CUSTOMER_ID values equal to null would be selected.                     Incorrect. Refer to Section 6                  80.  Which statement about single‐row and multiple‐row subqueries is true?  Mark for Review   (1) Points               Multiple‐row subqueries cannot be used with the LIKE operator. (*)           Single‐row operators can be used with both single‐row and multiple‐row subqueries.           Multiple‐row subqueries can be used with both single‐row and multiple‐row operators.           Multiple‐row subqueries can only be used in SELECT statements.                     Correct                   Page 8 of 10    

                 Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 6 Lesson 4    (Answer all questions in this section)             81.  Which best describes a multiple‐row subquery?  Mark for Review   (1) Points               A query that returns only one row from the inner SELECT statement           A query that returns one or more rows from the inner SELECT statement (*)           A query that returns only one column value from the inner SELECT statement           A query that returns one or more column values from the inner SELECT statement  

                  Correct                  82.  Evaluate this SELECT statement:  SELECT student_id, last_name, first_name  FROM student   WHERE major_id NOT IN      (SELECT major_id       FROM majors       WHERE department_head_id = 30 AND title = 'ADJUNCT');     What would happen if the inner query returned a NULL value row?    Mark for Review   (1) Points               A syntax error would be returned.           No rows would be returned from the STUDENT table. (*)           All the rows in the STUDENT table would be displayed.           Only the rows with STUDENT_ID values equal to NULL would be displayed.      

              Correct                  83.  Which of the following is a valid reason why the query below will not execute successfully?   SELECT employee_id, last_name, salary   FROM employees   WHERE department_id =       (SELECT department_id FROM employees WHERE last_name like '%u%')    Mark for Review   (1) Points               First subquery not enclosed in parenthesis           Single rather than multiple value operator used. (*)           Second subquery found on the right instead of the left side of the operator.           The greater than operator is not valid.                     Incorrect. Refer to Section 6                  84.  Evaluate this SELECT statement that includes a subquery: 

SELECT last_name, first_name   FROM customer  WHERE area_code IN       (SELECT area_code FROM sales WHERE salesperson_id = 20);     Which statement is true about the given subquery?    Mark for Review   (1) Points               The outer query executes before the nested subquery.           The results of the inner query are returned to the outer query. (*)           An error occurs if the either the inner or outer queries do not return a value.           Both the inner and outer queries must return a value, or an error occurs.                     Incorrect. Refer to Section 6                  85.  What is wrong with the following query?   SELECT employee_id, last_name   FROM employees   WHERE salary = 

   (SELECT MIN(salary) FROM employees GROUP BY department_id);     Mark for Review   (1) Points               Single rows contain multiple values and a logical operator is used.           Subquery returns more than one row and single row comparison operator is used. (*)           Subquery references the wrong table in the WHERE clause.           Nothing, it will run without problems.                     Incorrect. Refer to Section 6                  86.  You are looking for Executive information using a subquery. What will the following SQL statement  display?   SELECT department_id, last_name, job_id   FROM employees   WHERE department_id IN      (SELECT department_id       FROM departments       WHERE department_name = 'Executive');    Mark for Review  

(1) Points               The department ID, department name and last name for every employee in the Executive  department.           The department ID, last name, department name for every Executive in the employees table.           The department ID, last name, job ID from departments for Executive employees.           The department ID, last name, job ID for every employee in the Executive department. (*)                     Correct                            Section 7 Lesson 1    (Answer all questions in this section)             87.  The STUDENTS table contains these columns:  STU_ID NUMBER(9) NOT NULL  LAST_NAME VARCHAR2 (30) NOT NULL  FIRST_NAME VARCHAR2 (25) NOT NULL  DOB DATE  STU_TYPE_ID VARCHAR2(1) NOT NULL 

ENROLL_DATE DATE     You create another table, named FT_STUDENTS, with an identical structure.You want to insert all full‐ time students, who have a STU_TYPE_ID value of "F", into the new table. You execute this INSERT  statement:     INSERT INTO ft_students      (SELECT stu_id, last_name, first_name, dob, stu_type_id, enroll_date      FROM students      WHERE UPPER(stu_type_id) = 'F');     What is the result of executing this INSERT statement?    Mark for Review   (1) Points               All full‐time students are inserted into the FT_STUDENTS table. (*)           An error occurs because the FT_STUDENTS table already exists.           An error occurs because you CANNOT use a subquery in an INSERT statement.           An error occurs because the INSERT statement does NOT contain a VALUES clause.                     Incorrect. Refer to Section 7       

          88.  You need to add a row to an existing table. Which DML statement should you use?  Mark for  Review   (1) Points               UPDATE           INSERT (*)           DELETE           CREATE                     Correct                  89.  You have been instructed to add a new customer to the CUSTOMERS table. Because the new  customer has not had a credit check, you should not add an amount to the CREDIT column.   The CUSTOMERS table contains these columns:   CUST_ID NUMBER(10)   COMPANY VARCHAR2(30)   CREDIT NUMBER(10)   POC VARCHAR2(30)   LOCATION VARCHAR2(30)   

Which two INSERT statements will accomplish your objective?    Mark for Review   (1) Points              (Choose all correct answers)                INSERT INTO customers (cust_id, company, poc, location)   VALUES (200, 'InterCargo', 'tflanders', 'samerica');   (*)             INSERT INTO customers   VALUES (200, 'InterCargo', null, 'tflanders', 'samerica');   (*)             INSERT INTO customers   VALUES (cust_id, company, credit, poc, location) (200, 'InterCargo', 0, 'tflanders', 'samerica');              INSERT INTO customers   VALUES (200, InterCargo, 0, tflanders, samerica);                 

      Incorrect. Refer to Section 7                 90.  Assume all the column names are correct. The following SQL statement will execute which of the  following?  INSERT INTO departments (department_id, department_name, manager_id, location_id)   VALUES (70, 'Public Relations', 100, 1700);     Mark for Review   (1) Points               100 will be inserted into the department_id column           1700 will be inserted into the manager_id column           70 will be inserted into the department_id column (*)           'Public Relations' will be inserted into the manager_name column                     Correct                   Page 9 of 10      

               Test: Mid Term Exam ‐ Database Programming with SQL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Section 7 Lesson 2    (Answer all questions in this section)             91.  One of the sales representatives, Janet Roper, has informed you that she was recently married, and  she has requested that you update her name in the employee database. Her new last name is Cooper.  Janet is the only person with the last name of Roper that is employed by the company. The EMPLOYEES  table contains these columns and all data is stored in lowercase:   EMPLOYEE_ID NUMBER(10) PRIMARY KEY   LAST_NAME VARCHAR2(20)  FIRST_NAME VARCHAR2(20)  DEPARTMENT_ID NUMBER(10)  HIRE_DATE DATE  SALARY NUMBER(10)    Which UPDATE statement will accomplish your objective?   Mark for Review  

(1) Points               UPDATE employees  SET last_name = 'cooper'   WHERE last_name = 'roper';   (*)             UPDATE employees last_name = 'cooper'   WHERE last_name = 'roper';             UPDATE employees  SET last_name = 'roper'   WHERE last_name = 'cooper';             UPDATE employees  SET cooper = 'last_name'   WHERE last_name = 'roper';                       Correct       

          92.  Examine the structures of the PLAYERS, MANAGERS, and TEAMS tables:  PLAYERS  PLAYER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (30)  FIRST_NAME VARCHAR2 (25)  TEAM_ID NUMBER  MGR_ID NUMBER  SIGNING_BONUS NUMBER(9,2)  SALARY NUMBER(9,2)    MANAGERS  MANAGER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (20)  FIRST_NAME VARCHAR2 (20)  TEAM_ID NUMBER    TEAMS  TEAM_ID NUMBER Primary Key  TEAM_NAME VARCHAR2 (20)  OWNER_LAST_NAME VARCHAR2 (20)  OWNER_FIRST_NAME VARCHAR2 (20)    Which situation would require a subquery to return the desired result?    Mark for Review  

(1) Points               To display the names each player on the Lions team           To display the maximum and minimum player salary for each team           To display the names of the managers for all the teams owned by a given owner (*)           To display each player, their manager, and their team name for all teams with a id value greater than  5000                     Incorrect. Refer to Section 7                  93.  You want to enter a new record into the CUSTOMERS table. Which two commands can be used to  create new rows?  Mark for Review   (1) Points               INSERT, CREATE           MERGE, CREATE           INSERT, MERGE (*)           INSERT, UPDATE  

                  Incorrect. Refer to Section 7                  94.  One of your employees was recently married. Her employee ID is still 189, however, her last name  is now Rockefeller. Which SQL statement will allow you to reflect this change?  Mark for Review   (1) Points               INSERT INTO my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;           INSERT my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;           UPDATE INTO my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;           UPDATE my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189; (*)                     Incorrect. Refer to Section 7                  95.  Evaluate this statement: DELETE FROM customer; Which statement is true?  Mark for Review   (1) Points               The statement deletes all the rows from the CUSTOMER table. (*)      

    The statement deletes the CUSTOMER column.           The statement deletes the first row in the CUSTOMERS table.           The statement removes the structure of the CUSTOMER table from the database.                     Incorrect. Refer to Section 7                  96.  Which two commands can be used to modify existing data in a database row?  Mark for Review   (1) Points              (Choose all correct answers)                DELETE           MERGE (*)           SELECT           UPDATE (*)                     Incorrect. Refer to Section 7   

              97.  Examine the structures of the PRODUCTS and SUPPLIERS tables:   SUPPLIERS  SUPPLIER_ID NUMBER NOT NULL, Primary Key  SUPPLIER_NAME VARCHAR2 (25)  ADDRESS VARCHAR2 (30)  CITY VARCHAR2 (25)  REGION VARCHAR2 (10)  POSTAL_CODE VARCHAR2 (11)    PRODUCTS  PRODUCT_ID NUMBER NOT NULL, Primary Key  PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER Foreign key to SUPPLIER_ID of the SUPPLIERS table  CATEGORY_ID NUMBER  QTY_PER_UNIT NUMBER  UNIT_PRICE NUMBER (7,2)  QTY_IN_STOCK NUMBER  QTY_ON_ORDER NUMBER  REORDER_LEVEL NUMBER    You want to delete any products supplied by the five suppliers located in Atlanta. Which script should  you use?    Mark for Review   (1) Points  

            DELETE FROM products   WHERE supplier_id IN      (SELECT supplier_id       FROM suppliers       WHERE UPPER(city) = 'ATLANTA');   (*)             DELETE FROM products   WHERE UPPER(city) = 'ATLANTA';              DELETE FROM products  WHERE supplier_id =       (SELECT supplier_id       FROM suppliers       WHERE UPPER(city) = 'ATLANTA');              DELETE FROM products   WHERE supplier_id <       (SELECT supplier_id       FROM suppliers       WHERE UPPER(city) = 'ALANTA');  

                     Correct                  98.  When the WHERE clause is missing in a DELETE statement, what is the result?  Mark for Review   (1) Points               All rows are deleted from the table. (*)           The table is removed from the database.           An error message is displayed indicating incorrect syntax.           Nothing. The statement will not execute.                     Incorrect. Refer to Section 7                  99.  The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns:  TEACHERS   TEACHER_ID NUMBER(5)   NAME VARCHAR2(25)  

SUBJECT_ID NUMBER(5)  HIRE_DATE DATE  SALARY NUMBER(9,2)    CLASS_ASSIGNMENTS  CLASS_ID NUMBER(5)  TEACHER_ID NUMBER(5)  START_DATE DATE  MAX_CAPACITY NUMBER(3)    Which scenario would require a subquery to return the desired results?    Mark for Review   (1) Points               You need to display the start date for each class taught by a given teacher.           You need to create a report to display the teachers who were hired more than five years ago.           You need to display the names of the teachers who teach classes that start within the next week.           You need to create a report to display the teachers who teach more classes than the average number  of classes taught by each teacher. (*)                     Incorrect. Refer to Section 7       

          100.  The PLAYERS table contains these columns:  PLAYER_ID NUMBER NOT NULL  PLAYER_LNAME VARCHAR2(20) NOT NULL  PLAYER_FNAME VARCHAR2(10) NOT NULL   TEAM_ID NUMBER   SALARY NUMBER(9,2)     You need to increase the salary of each player for all players on the Tiger team by 12.5 percent. The  TEAM_ID value for the Tiger team is 5960. Which statement should you use?    Mark for Review   (1) Points               UPDATE players (salary) SET salary = salary * 1.125;           UPDATE players SET salary = salary * .125 WHERE team_id = 5960;           UPDATE players SET salary = salary * 1.125 WHERE team_id = 5960; (*)           UPDATE players (salary) VALUES(salary * 1.125) WHERE team_id = 5960;                     Incorrect. Refer to Section 7                 

 Page 10 of 10           Midl‐mari‐lipsesc 10 intrebari‐ 31‐40!!!!  S1L2  1.    You issue this SQL statement:   SELECT INSTR ('organizational sales', 'al')   FROM dual;   Which value is returned by this command?    

  

1     

  

2     

  

13 (*)     

  

17    2.    Evaluate this SELECT statement:  SELECT LENGTH(email) 

FROM employee;  What will this SELECT statement display?    

  

The longest e‐mail address in the EMPLOYEE table.     

  

The email address of each employee in the EMPLOYEE table.     

  

The number of characters for each value in the EMAIL column in the employees table. (*)     

  

The maximum number of characters allowed in the EMAIL column.    3.    Which SQL function can be used to remove heading or trailing characters (or both) from a character  string?    

  

LPAD     

  

CUT      NVL2   

  

 

  

TRIM (*)    4.     Which functions can be used to manipulate character, number, and date column values?    

  

CONCAT, RPAD, and TRIM (*)     

  

UPPER, LOWER, and INITCAP     

  

ROUND, TRUNC, and MOD     

  

ROUND, TRUNC, and ADD_MONTHS    5.     You need to display the number of characters in each customer's last name. Which function should you  use?    

  

LENGTH (*)      LPAD   

  

 

  

COUNT     

  

SUBSTR    6.     Which SQL function is used to return the position where a specific character string begins within a larger  character string?    

  

CONCAT     

  

INSTR (*)     

  

LENGTH     

  

SUBSTR    7.     You need to return a portion of each employee's last name, beginning with the first character up to the  fifth character. Which character function should you use?     INSTR 

  

   

  

TRUNC     

  

SUBSTR (*)     

  

CONCAT    8.     Evaluate this function: MOD (25, 2) Which value is returned?    

  

1 (*)     

  

2     

  

25      0    9.    

  

Which two functions can be used to manipulate number or date column values, but NOT character  column values? (Choose two.)    

(Choose all correct answers) 

 

  

RPAD     

  

TRUNC (*)     

  

ROUND (*)     

  

INSTR     

  

CONCAT    10.  

You issue this SQL statement: 

SELECT ROUND (1282.248, ‐2)   FROM dual;  What value does this statement produce?    

  

1200     

  

1282     

  

1282.25     

  

1300 (*)    S1L3  11.     You want to create a report that displays all orders and their amounts that were placed during the  month of January. You want the orders with the highest amounts to appear first. Which query should  you issue?    

  

SELECT orderid, total   FROM orders   WHERE order_date LIKE '01‐jan‐02' AND '31‐jan‐02'   ORDER BY total DESC;      

  

SELECT orderid, total   FROM orders   WHERE order_date IN ( 01‐jan‐02 , 31‐jan‐02 )   ORDER BY total;      

  

SELECT orderid, total   FROM orders   WHERE order_date BETWEEN '01‐jan‐02' AND '31‐jan‐02'   ORDER BY total DESC;   (*)     

  

SELECT orderid, total   FROM orders   WHERE order_date BETWEEN '31‐jan‐02' AND '01‐jan‐02'   ORDER BY total DESC;     12.     You need to display the number of months between today's date and each employee's hiredate. Which  function should you use?    

  

ROUND     

  

BETWEEN     

  

ADD_MONTHS     

  

MONTHS_BETWEEN (*) 

  13.     Which of the following Date Functions will add calendar months to a date?    

  

Months + Calendar (Month)     

  

ADD_MONTHS (*)     

  

MONTHS + Date     

  

NEXT_MONTH    14.     Which function would you use to return the current database server date and time?    

  

DATE     

  

SYSDATE (*)     

  

DATETIME 

   

  

CURRENTDATE    15.     The EMPLOYEE table contains these columns:   LAST_NAME VARCHAR2(20)   FIRST_NAME VARCHAR2(20)   HIRE_DATE DATE  EVAL_MONTHS NUMBER(3)   Evaluate this SELECT statement:   SELECT hire_date + eval_months   FROM employee;   The values returned by this SELECT statement will be of which data type?    

  

DATE (*)     

  

NUMBER     

  

DATETIME     

  

INTEGER 

    S2 L1    16.     All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a  report that displays each employee's name and salary. Each employee's salary must be displayed in the  following format: $000,000.00. Which function should you include in a SELECT statement to achieve the  desired result?    

  

TO_CHAR (*)     

  

TO_DATE     

  

TO_NUMBER     

  

CHARTOROWID    17.     The EMPLOYEES table contains these columns:   EMPLOYEE_ID NUMBER(9)   LAST_NAME VARCHAR2 (25)   FIRST_NAME VARCHAR2 (25)   SALARY NUMBER(6)  

You need to create a report to display the salaries of all employees. Which script should you use to  display the salaries in format: "$45,000.00"?    

  

SELECT TO_CHAR(salary, '$999,999')   FROM employees;      

  

SELECT TO_NUM(salary, '$999,990.99')   FROM employees;      

  

SELECT TO_NUM(salary, '$999,999.00')   FROM employees;      

  

SELECT TO_CHAR(salary, '$999,999.00')  FROM employees; (*)    18.     Which statement concerning single row functions is true?    

  

Single row functions can accept only one argument, but can return multiple values.     

  

Single row functions cannot modify a data type.   

 

  

Single row functions can be nested. (*)     

  

Single row functions return one or more results per row.        19.         Which best describes the TO_CHAR function?    

  

The TO_CHAR function can be used to specify meaningful column names in an SQL statement's result  set.     

  

The TO_CHAR function can be used to remove text from column data that will be returned by the  database.     

  

The TO_CHAR function can be used to display dates and numbers according to formatting conventions  that are supported by Oracle. (*)     

  

The TO_CHAR function can only be used on DATE columns.   

20.     If you use the RR format when writing a query using the date 27‐OCT‐17 and the year is 2001, what year  would be the result?    

  

2001     

  

1901     

  

2017 (*)     

  

1917    21.     Which functions allow you to perform explicit data type conversions?    

  

ROUND, TRUNC, ADD_MONTHS     

  

LENGTH, SUBSTR, LPAD, TRIM     

  

TO_CHAR, TO_DATE, TO_NUMBER (*)   

 

  

NVL, NVL2, NULLIF      S2L2    22.     When executed, which statement displays a zero if the TUITION_BALANCE value is zero and the  HOUSING_BALANCE value is null?    

  

SELECT NVL (tuition_balance + housing_balance, 0) "Balance Due"   FROM student_accounts;                                                                                   (*)     

  

SELECT NVL(tuition_balance, 0), NVL (housing_balance), tuition_balance + housing_balance "Balance  Due"   FROM student_accounts;      

  

SELECT tuition_balance + housing_balance   FROM student_accounts;      

  

SELECT TO_NUMBER(tuition_balance, 0), TO_NUMBER (housing_balance, 0), tutition_balance +  housing_balance "Balance Due"   FROM student_accounts;    

23.     Which of the following General Functions will return the first non‐null expression in the expression list?    

  

NVL     

  

NVL2     

  

NULLIF     

  

COALESCE (*)    24.     The PRODUCT table contains this column: PRICE NUMBER(7,2)   Evaluate this statement:   SELECT NVL(10 / price, '0')   FROM PRODUCT;   What would happen if the PRICE column contains null values?    

  

The statement would fail because values cannot be divided by 0.     

  

A value of 0 would be displayed. (*) 

   

  

A value of 10 would be displayed.     

  

The statement would fail because values cannot be divided by null.                  S3 L2  25.     You need to create a report that lists all employees in the Sales department who do not earn $25,000  per year. Which query should you issue to accomplish this task?    

  

SELECT last_name, first_name, salary   FROM employees   WHERE salary > 25000 AND dept_id = 10;      

  

SELECT last_name, first_name, salary   FROM employees  

WHERE salary = 25000 AND dept_id = 10;      

  

SELECT last_name, first_name, salary   FROM employees   WHERE salary <= 25000 AND dept_id = 10;      

  

SELECT last_name, first_name, salary   FROM employees   WHERE salary != 25000 AND dept_id = 10;                (*)    26.     Evaluate this SQL statement:   SELECT e.employee_id, e.last_name, e.first_name, d.department_name   FROM employees e, departments d   WHERE e.department_id = d.department_id AND employees.department_id > 5000   ORDER BY 4;   Which clause contains a syntax error?    

  

SELECT e.employee_id, e.last_name, e.first_name, d.department_name     

  

FROM employees e, departments d   

 

  

WHERE e.department_id = d.department_id     

  

AND employees.department_id > 5000 (*)     

  

ORDER BY 4;    27.     What happens when you create a Cartesian product?    

  

All rows from one table are joined to all rows of another table (*)     

  

The table is joined to itself, one column to the next column, exhausting all possibilities     

  

The table is joined to another equal table     

  

All rows that do not match in the WHERE clause are displayed    28.     What is produced when a join condition is not specified in a multiple‐table query?  

 

  

a self‐join     

  

an outer join     

  

an equijoin     

  

a Cartesian product (*)    29.     The PATIENTS and DOCTORS tables contain these columns:   PATIENTS   PATIENT_ID NUMBER(9)  LAST_NAME VARCHAR2 (20)   FIRST_NAME VARCHAR2 (20)   DOCTORS   DOCTOR_ID NUMBER(9)   LAST_NAME VARCHAR2 (20)   FIRST_NAME VARCHAR2 (20)   You issue this statement:   SELECT patient_id, doctor_id   FROM patients, doctors;  

Which result will this statement provide?    

  

A report containing all possible combinations of the PATIENT_ID and DOCTOR_ID values (*)     

  

A report containing each patient's id value and their doctor's id value     

  

A report with NO duplicate PATIENT_ID or DOCTOR_ID values     

  

A syntax error    30.     Your have two tables named EMPLOYEES and SALES. You want to identify the sales representatives who  have generated at least $100,000 in revenue.   Which query should you issue?    

  

SELECT e.fname, e.lname, s.sales   FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue > 100000;      

  

SELECT e.fname, e.lname, s.sales   FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue >= 100000;  

(*)     

  

SELECT e.fname, e.lname, s.sales   FROM employees, sales   WHERE e.emp_id = s.emp_id AND revenue >= 100000;      

  

SELECT fname, lname, sales   Q FROM employees e, sales s   WHERE e.emp_id = s.emp_id AND revenue > 100000;     31‐40?????  S 4 L4        41.  You need to display all the rows from both the EMPLOYEE and EMPLOYEE_HIST tables. Which type  of join would you use?    o 

a right outer join  



a left outer join  



a full outer join (*)  



an inner join  

    42.  What should be included in a SELECT statement to return NULL values from all tables?    o 

natural joins  



left outer joins  



full outer joins (*)  



right outer joins  

      43.  You need to join the EMPLOYEE_HIST and EMPLOYEE tables. The EMPLOYEE_HIST table will be the  first table in the FROM clause. All the matched and unmatched rows in the EMPLOYEE table need to be  displayed. Which type of join will you use?    o 

a cross join  



an inner join  



a left outer join  



a right outer join (*)  

     S 5 L1        44.  Which statement about the GROUP BY clause is true?    o 

The first column listed in the GROUP BY clause is the most major grouping. (*)  



The last column listed in the GROUP BY clause is the most major grouping.  



The GROUP BY clause can contain an aggregate function.  



A GROUP BY clause cannot be used without an ORDER BY clause.  

      45.  Evaluate this SELECT statement:     SELECT MIN(hire_date), dept_id   FROM employee   GROUP BY dept_id;     Which values are displayed?        



The earliest hire date in each department. (*)  



The the earliest hire date in the EMPLOYEE table.  



The latest hire date in the EMPLOYEE table.  



The hire dates in the EMPLOYEE table that contain NULL values.  

      46.  What will the following SQL Statement do?   SELECT job_id, COUNT(*)   FROM employees   GROUP BY job_id;  o 

Displays all the employees and groups them by job.  



Displays each job id and the number of people assigned to that job id. (*)  



Displays only the number of job_ids.  



Displays all the jobs with as many people as there are jobs.  

    47.  Group functions can be nested to a depth of   o 

three  



four  



two (*)  



Group functions cannot be nested.  

     S 5 L2              48.  Which group function would you use to display the total of all salary values in the EMPLOYEE  table?    o 

SUM (*)  



AVG  



COUNT  



MAX  

      49.  Which group function would you use to display the lowest value in the SALES_AMOUNT column?    o 

AVG  



COUNT  



MAX  



MIN (*)  

      50.  Examine the data in the PAYMENT table:   PAYMENT_ID   CUSTOMER_ID  PAYMENT_DATE  

PAYMENT_TYPE  

86590586  

8908090  

10‐JUN‐03  

BASIC   859.00  

89453485  

8549038  

15‐FEB‐03  

INTEREST  

85490345  

5489304  

20‐MAR‐03  

BASIC   568.00  

PAYMENT_AMOUNT  

596.00  

  You need to determine the average payment amount made by each customer in January, February and  March of 2003. Which SELECT statement should you use?     o 

SELECT AVG(payment_amount)  

FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' AND '31‐MAR‐2003';     o 

SELECT AVG(payment_amount)  

FROM payment;  o 

SELECT SUM(payment_amount)  

FROM payment   WHERE payment_date BETWEEN '01‐JAN‐2003' and '31‐MAR‐2003'; 

(*) 



SELECT AVG(payment_amount)  

FROM payment   WHERE TO_CHAR(payment_date) IN (JAN, FEB, MAR);   S5 L2    51.     The TRUCKS table contains these columns:   TRUCKS   TYPE VARCHAR2(30)   YEAR DATE   MODEL VARCHAR2(20)   PRICE NUMBER(10)   Which SELECT statement will return the average price for the 4x4 model?    

  

SELECT AVG (price) FROM trucks WHERE model = '4x4'; (*)     

  

SELECT AVG (price) FROM trucks WHERE model IS '4x4';     

  

SELECT AVG(price) FROM trucks WHERE model IS 4x4;     

  

SELECT AVG(price), model FROM trucks WHERE model IS '4x4';   

52.     The CUSTOMER table contains these columns:   CUSTOMER_ID NUMBER(9)   FNAME VARCHAR2(25)   LNAME VARCHAR2(30)   CREDIT_LIMIT NUMBER (7,2)  CATEGORY VARCHAR2(20)   You need to calculate the average credit limit for all the customers in each category. The average should  be calculated based on all the rows in the table excluding any customers who have not yet been  assigned a credit limit value. Which group function should you use to calculate this value?    

   

   

  

AVG (*)     

  

SUM     

  

COUNT     

  

STDDEV    53.     The EMPLOYEES table contains these columns:   EMPLOYEE_ID NUMBER(9)  

LAST_NAME VARCHAR2(20)  FIRST_NAME VARCHAR2(20)   SALARY NUMBER(9,2)  HIRE_DATE DATE   BONUS NUMBER(7,2)   COMM_PCT NUMBER(4,2)   Which three functions could be used with the HIRE_DATE, LAST_NAME, or SALARY columns? (Choose  three.)    

(Choose all correct answers) 

 

  

MAX (*)     

  

SUM     

  

AVG     

  

MIN (*)     

  

COUNT (*)    54.     Which group function would you use to display the highest salary value in the EMPLOYEE table?  

 

  

AVG     

  

COUNT     

  

MAX (*)     

  

MIN          55.     Which group function would you use to display the average price of all products in the PRODUCTS table?    

  

SUM     

  

AVG (*)      COUNT 

  

   

  

MAX      S5L3    56.     Which SELECT statement will calculate the number of rows in the PRODUCTS table?    

  

SELECT COUNT(products);     

  

SELECT COUNT FROM products;     

  

SELECT COUNT (*) FROM products; (*)     

  

SELECT ROWCOUNT FROM products;    57.     Examine the data from the LINE_ITEM table:   LINE_ITEM_ID   ORDER_ID  

PRODUCT_ID   PRICE   DISCOUNT  

890898 847589 848399 8.99  

0.10  

768385 862459 849869 5.60  

0.05  

867950 985490 945809 5.60  

 

954039 439203 438925 5.25  

0.15  

543949 349302 453235 4.50  

 

You query the LINE_ITEM table and a value of 5 is returned. Which SQL statement did you execute?    

  

SELECT COUNT(discount) FROM line_item;     

  

SELECT COUNT(*) FROM line_item; (*)     

  

SELECT SUM(discount) FROM line_item;     

  

SELECT AVG(discount) FROM line_item;    58.     Evaluate this SQL statement:   SELECT COUNT (amount)   FROM inventory;   What will occur when the statement is issued?    

  

The statement will return the greatest value in the INVENTORY table.   

 

  

The statement will return the total number of rows in the AMOUNT column.     

  

The statement will replace all NULL values that exist in the AMOUNT column.     

  

The statement will count the number of rows in the INVENTORY table where the AMOUNT column is not  null. (*)    59.     Which statement about the COUNT function is true?    

   

   

  

The COUNT function ignores duplicates by default.     

  

The COUNT function always ignores null values by default. (*)     

  

The COUNT function can be used to find the maximum value in each column.     

  

The COUNT function can be used to determine the number of unique, non‐null values in a column.     

              S6L1    60.     What is the correct order of clauses in a SELECT statement?    

  

SELECT   FROM   WHERE   ORDER BY   HAVING      

  

SELECT   FROM   HAVING   GROUP BY   WHERE  ORDER BY  

   

  

SELECT   FROM   WHERE  GROUP BY   HAVING   ORDER BY   (*)     

  

SELECT   FROM   WHERE   HAVING   ORDER BY   GROUP BY     61.     Evaluate this SELECT statement:   SELECT SUM(salary), dept_id, department_name   FROM employee   WHERE dept_id = 1   GROUP BY department;   Which clause of the SELECT statement contains a syntax error? 

 

  

SELECT     

  

FROM     

  

WHERE     

  

GROUP BY (*)    62.     Evaluate this SELECT statement:   SELECT SUM(salary), dept_id, mgr_id  FROM employee   GROUP BY dept_id, mgr_id;   Which SELECT statement clause allows you to restrict the rows returned, based on a group function?    

  

HAVING SUM(salary) > 100000 (*)     

  

WHERE SUM(salary) > 100000     

  

WHERE salary > 100000     

  

HAVING salary > 100000    63.     Evaluate this SELECT statement:   SELECT COUNT(emp_id), mgr_id, dept_id   FROM employee  WHERE status = 'I'   GROUP BY dept_id   HAVING salary > 30000   ORDER BY 2;   Why does this statement return a syntax error?   

  

MGR_ID must be included in the GROUP BY clause. (*)     

  

The HAVING clause must specify an aggregate function.     

  

A single query cannot contain a WHERE clause and a HAVING clause.     

  

The ORDER BY clause must specify a column name in the EMPLOYEE table. 

  64.     The PRODUCTS table contains these columns:   PROD_ID NUMBER(4)   PROD_NAME VARCHAR(20)   PROD_CAT VARCHAR2(15)   PROD_PRICE NUMBER(5)  PROD_QTY NUMBER(4)   You need to identify the minimum product price in each product category.  Which statement could you use to accomplish this task?   

  

SELECT prod_cat, MIN (prod_price)   FROM products  GROUP BY prod_price;      

  

SELECT prod_cat, MIN (prod_price)   FROM products  GROUP BY prod_cat;   (*)     

  

SELECT MIN (prod_price), prod_cat  FROM products   GROUP BY MIN (prod_price), prod_cat;  

   

  

SELECT prod_price, MIN (prod_cat)  FROM products  GROUP BY prod_cat;     65.     Evaluate this statement:   SELECT department_id, AVG(salary)   FROM employees   WHERE job_id <> 69879   GROUP BY job_id, department_id   HAVING AVG(salary) > 35000   ORDER BY department_id;   Which clauses restricts the result? Choose two.   

(Choose all correct answers) 

 

  

SELECT department_id, AVG(salary)     

  

WHERE job_id <> 69879 (*)     

  

GROUP BY job_id, department_id   

 

  

HAVING AVG(salary) > 35000 (*)    66.     You want to write a report that returns the average salary of all employees in the company, sorted by  departments. The EMPLOYEES table contains the following columns:   EMPLOYEES:   EMP_ID NUMBER(10) PRIMARY KEY   LNAME VARCHAR2(20)   FNAME VARCHAR2(20)   DEPT VARCHAR2(20)   HIRE_DATE DATE  SALARY NUMBER(10)   Which SELECT statement will return the information that you require?    

  

SELECT salary (AVG)  FROM employees   GROUP BY dept;      

  

SELECT AVG (salary)   FROM employees  GROUP BY dept;                      (*)     

  

SELECT AVG (salary)  

FROM employees   BY dept;      

  

SELECT AVG salary   FROM employees  BY dept;     67.     Which statement about the GROUP BY clause is true?          To exclude rows before dividing them into groups using the GROUP BY clause, you use should a WHERE  clause. (*)     

  

You can use a column alias in a GROUP BY clause.     

  

By default, rows are not sorted when a GROUP BY clause is used.     

  

You must use the HAVING clause with the GROUP BY clause.      S6L2 

  68.     Using a subquery in which clause will return a syntax error?          WHERE           FROM           HAVING           There are no places you cannot place subqueries. (*)    69.     Which operator can be used with subqueries that return only one row?          LIKE (*)   

       ANY           ALL           IN    70.     If you use the equality operator (=) with a subquery, how many values can the subquery return?    

  

only 1 (*)     

  

up to 2     

  

up to 5     

  

unlimited 

  71.     Examine the structures of the CUSTOMER and ORDER_HISTORY tables:   CUSTOMER   CUSTOMER_ID NUMBER(5)  NAME VARCHAR2(25)  CREDIT_LIMIT NUMBER(8,2)  OPEN_DATE DATE   ORDER_HISTORY  ORDER_ID NUMBER(5)  CUSTOMER_ID NUMBER(5)  ORDER_DATE DATE  TOTAL NUMBER(8,2)   Which of the following scenarios would require a subquery to return the desired results?    

  

You need to display the date each customer account was opened.     

  

You need to display each date that a customer placed an order.     

  

You need to display all the orders that were placed on a certain date.     

  

You need to display all the orders that were placed on the same day as order number 25950. (*) 

  72.     Which operator can be used with a multiple‐row subquery?    

  

IN (*)     

  

<>     

  

=     

  

LIKE    S6 L3    73.     Examine the structure of the EMPLOYEE, DEPARTMENT, and ORDERS tables.   EMPLOYEE  EMPLOYEE_ID NUMBER(9)  LAST_NAME VARCHAR2(25)  FIRST_NAME VARCHAR2(25)  DEPARTMENT_ID NUMBER(9)   DEPARTMENT  

DEPARTMENT_ID NUMBER(9)  DEPARTMENT_NAME VARCHAR2(25)  CREATION_DATE DATE   ORDERS   ORDER_ID NUMBER(9)  EMPLOYEE_ID NUMBER(9)  DATE DATE   CUSTOMER_ID NUMBER(9)   You want to display all employees who had an order after the Sales department was established. Which  of the following constructs would you use?    

  

a group function     

  

a single‐row subquery (*)     

  

the HAVING clause     

  

a MERGE statement                  

Incorrect. Refer to Section 6     74.     Which best describes a single‐row subquery?    

  

a query that returns only one row from the inner SELECT statement (*)     

  

a query that returns one or more rows from the inner SELECT statement     

  

a query that returns only one column value from the inner SELECT statement     

  

a query that returns one or more column values from the inner SELECT statement    75.     You need to produce a report that contains all employee‐related information for those employees who  have Brad Carter as a supervisor. However, you are not sure which supervisor ID belongs to Brad Carter.  Which query should you issue to accomplish this task?    

  

SELECT *   FROM employees   WHERE supervisor_id =        (SELECT supervisor_id        FROM employees  

     WHERE last_name = 'Carter');      

  

SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT supervisor_id        FROM employees        WHERE last_name = 'Carter');      

  

SELECT *   FROM supervisors  WHERE supervisor_id =        (SELECT employee_id        FROM supervisors        WHERE last_name = 'Carter');      

  

SELECT *   FROM employees  WHERE supervisor_id =        (SELECT employee_id        FROM employees        WHERE last_name = 'Carter');                 (*) 

  S6 L4    76. Which best describes a multiple‐row subquery?      A query that returns only one row from the inner SELECT statement       A query that returns one or more rows from the inner SELECT statement (*)       A query that returns only one column value from the inner SELECT statement       A query that returns one or more column values from the inner SELECT statement    77. You are looking for Executive information using a subquery. What will the following SQL statement  display?   SELECT department_id, last_name, job_id   FROM employees   WHERE department_id IN      (SELECT department_id       FROM departments       WHERE department_name = 'Executive');      The department ID, department name and last name for every employee in the Executive department. 

     The department ID, last name, department name for every Executive in the employees table.       The department ID, last name, job ID from departments for Executive employees.       The department ID, last name, job ID for every employee in the Executive department. (*)    78. Evaluate this SQL statement:   SELECT employee_id, last_name, salary   FROM employees  WHERE department_id IN      (SELECT department_id      FROM employees      WHERE salary > 30000 AND salary < 50000);   Which values will be displayed?      Only employees who earn more than $30,000.       Only employees who earn less than $50,000.      

All employees who work in a department with employees who earn more than $30,000 and more than  $50,000.       All employees who work in a department with employees who earn more than $30,000, but less than  $50,000. (*)    79. Examine the data in the PAYMENT table:   PAYMENT_ID   CUSTOMER_ID  PAYMENT_DATE  

PAYMENT_TYPE  

86590586  

8908090  

10‐JUN‐03  

BASIC   859.00  

89453485  

8549038  

15‐FEB‐03  

INTEREST  

85490345  

5489304  

20‐MAR‐03  

BASIC   568.00  

596.00  

This statement fails when executed:   SELECT customer_id, payment_type   FROM payment   WHERE payment_id =      (SELECT payment_id       FROM payment       WHERE payment_amount = 596.00 OR payment_date = '20‐MAR‐2003');   Which change could correct the problem?      Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)       Remove the quotes surrounding the date value in the OR clause.   

PAYMENT_AMOUNT  

   Remove the parentheses surrounding the nested SELECT statement.       Change the comparison operator to a single‐row operator.               Incorrect. Refer to Section 6     80. Which operator or keyword cannot be used with a multiple‐row subquery?      ALL       ANY       = (*)       >    81.    

Which of the following best describes the meaning of the ANY operator?    

  

Equal to any member in the list     

  

Compare value to each value returned by the subquery (*)     

  

Compare value to every value returned by the subquery     

  

Equal to each value in the list                   Incorrect. Refer to Section 6     82.     Which statement about single‐row and multiple‐row subqueries is true?    

  

Multiple‐row subqueries cannot be used with the LIKE operator. (*)     

  

Single‐row operators can be used with both single‐row and multiple‐row subqueries.     

  

Multiple‐row subqueries can be used with both single‐row and multiple‐row operators.     

  

Multiple‐row subqueries can only be used in SELECT statements.    83.     Evaluate this SELECT statement:   SELECT customer_id, name   FROM customer   WHERE customer_id IN      (SELECT customer_id       FROM customer       WHERE state_id = 'GA' AND credit_limit > 500.00);   What would happen if the inner query returned null?    

  

An error would be returned.     

  

No rows would be returned by the outer query. (*)     

  

All the rows in the table would be selected. 

   

  

Only the rows with CUSTOMER_ID values equal to null would be selected.     

   

       Incorrect. Refer to Section 6     84.     Evaluate this SELECT statement:   SELECT student_id, last_name, first_name  FROM student   WHERE major_id NOT IN      (SELECT major_id       FROM majors       WHERE department_head_id = 30 AND title = 'ADJUNCT');   What would happen if the inner query returned a NULL value row?    

  

A syntax error would be returned.     

  

No rows would be returned from the STUDENT table. (*)     

  

All the rows in the STUDENT table would be displayed.     

  

Only the rows with STUDENT_ID values equal to NULL would be displayed.     

 

  

    Incorrect. Refer to Section 6     85.     You need to create a SELECT statement that contains a multiple‐row subquery, which comparison  operator(s) can you use?    

  

IN, ANY, and ALL (*)     

  

LIKE     

  

BETWEEN...AND...     

  

=, <, and >    86.     Evaluate this SELECT statement that includes a subquery:  

SELECT last_name, first_name   FROM customer  WHERE area_code IN       (SELECT area_code FROM sales WHERE salesperson_id = 20);   Which statement is true about the given subquery?    

  

The outer query executes before the nested subquery.     

  

The results of the inner query are returned to the outer query. (*)     

  

An error occurs if the either the inner or outer queries do not return a value.     

  

Both the inner and outer queries must return a value, or an error occurs.      S7L1    87.     The STUDENTS table contains these columns:   STU_ID NUMBER(9) NOT NULL  LAST_NAME VARCHAR2 (30) NOT NULL  FIRST_NAME VARCHAR2 (25) NOT NULL 

DOB DATE  STU_TYPE_ID VARCHAR2(1) NOT NULL  ENROLL_DATE DATE   You create another table, named FT_STUDENTS, with an identical structure.You want to insert all full‐ time students, who have a STU_TYPE_ID value of "F", into the new table. You execute this INSERT  statement:   INSERT INTO ft_students      (SELECT stu_id, last_name, first_name, dob, stu_type_id, enroll_date      FROM students      WHERE UPPER(stu_type_id) = 'F');   What is the result of executing this INSERT statement?    

   

   

  

All full‐time students are inserted into the FT_STUDENTS table. (*)     

  

An error occurs because the FT_STUDENTS table already exists.     

  

An error occurs because you CANNOT use a subquery in an INSERT statement.     

  

An error occurs because the INSERT statement does NOT contain a VALUES clause.    88.     Using the INSERT statement, and assuming that a column can accept null values, how can you implicitly  insert a null value in a column?  

 

  

Use the NULL keyword.     

  

Use the ON clause     

  

Omit the column in the column list. (*)     

  

It is not possible to implicitly insert a null value in a column.    89.     The PRODUCTS table contains these columns:   PRODUCT_ID NUMBER NOT NULL   PRODUCT_NAME VARCHAR2 (25)  SUPPLIER_ID NUMBER NOT NULL  LIST_PRICE NUMBER (7,2)  COST NUMBER (5,2)  QTY_IN_STOCK NUMBER(4)  LAST_ORDER_DT DATE NOT NULL DEFAULT SYSDATE   Which INSERT statement will execute successfully?    

  

INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, 700); (*)   

 

  

INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, SYSDATE);     

  

INSERT INTO products(product_id, product_name) VALUES (2958, 'Cable');     

  

INSERT INTO products(product_id, product_name, supplier_id VALUES (2958, 'Cable', 8690, SYSDATE);     

   

       Incorrect. Refer to Section 7     90.     You need to add a row to an existing table. Which DML statement should you use?    

  

UPDATE     

  

INSERT (*)      DELETE   

  

 

  

CREATE      S7L2    91.     You need to update both the DEPARTMENT_ID and LOCATION_ID columns in the EMPLOYEE table using  one UPDATE statement. Which clause should you include in the UPDATE statement to update multiple  columns?    

  

the USING clause     

  

the ON clause     

  

the WHERE clause     

  

the SET clause (*)    92.     Examine the structures of the PLAYERS, MANAGERS, and TEAMS tables:   PLAYERS  PLAYER_ID NUMBER Primary Key 

LAST_NAME VARCHAR2 (30)  FIRST_NAME VARCHAR2 (25)  TEAM_ID NUMBER  MGR_ID NUMBER  SIGNING_BONUS NUMBER(9,2)  SALARY NUMBER(9,2)   MANAGERS  MANAGER_ID NUMBER Primary Key  LAST_NAME VARCHAR2 (20)  FIRST_NAME VARCHAR2 (20)  TEAM_ID NUMBER   TEAMS  TEAM_ID NUMBER Primary Key  TEAM_NAME VARCHAR2 (20)  OWNER_LAST_NAME VARCHAR2 (20)  OWNER_FIRST_NAME VARCHAR2 (20)   Which situation would require a subquery to return the desired result?    

  

To display the names each player on the Lions team     

  

To display the maximum and minimum player salary for each team     

  

To display the names of the managers for all the teams owned by a given owner (*) 

   

  

To display each player, their manager, and their team name for all teams with a id value greater than  5000     

 

  

    Incorrect. Refer to Section 7     93.     What would happen if you issued a DELETE statement without a WHERE clause?    

  

All the rows in the table would be deleted. (*)     

  

An error message would be returned.     

  

No rows would be deleted.     

  

Only one row would be deleted.    94.     One of the sales representatives, Janet Roper, has informed you that she was recently married, and she  has requested that you update her name in the employee database. Her new last name is Cooper. Janet 

is the only person with the last name of Roper that is employed by the company. The EMPLOYEES table  contains these columns and all data is stored in lowercase:   EMP_ID NUMBER(10) PRIMARY KEY   LNAME VARCHAR2(20)  FNAME VARCHAR2(20)  DEPT VARCHAR2 (20)  HIRE_DATE DATE  SALARY NUMBER(10)   Which UPDATE statement will accomplish your objective?   

  

UPDATE employees  SET lname = 'cooper'   WHERE lname = 'roper';   (*)     

  

UPDATE employees lname = 'cooper'   WHERE lname = 'roper';      

  

UPDATE employees  SET lname = 'roper'   WHERE lname = 'cooper';      

  

UPDATE employees 

SET cooper = 'lname'   WHERE lname = 'roper';     95.     When the WHERE clause is missing in a DELETE statement, what is the result?    

  

All rows are deleted from the table. (*)     

  

The table is removed from the database.     

  

An error message is displayed indicating incorrect syntax.     

  

Nothing. The statement will not execute.    96.     The PLAYERS table contains these columns:   PLAYER_ID NUMBER NOT NULL  PLAYER_LNAME VARCHAR2(20) NOT NULL  PLAYER_FNAME VARCHAR2(10) NOT NULL   TEAM_ID NUMBER   SALARY NUMBER(9,2)   You need to increase the salary of each player for all players on the Tiger team by 12.5 percent. The  TEAM_ID value for the Tiger team is 5960. Which statement should you use?  

 

  

UPDATE players (salary) SET salary = salary * 1.125;     

  

UPDATE players SET salary = salary * .125 WHERE team_id = 5960;     

  

UPDATE players SET salary = salary * 1.125 WHERE team_id = 5960; (*)     

  

UPDATE players (salary) VALUES(salary * 1.125) WHERE team_id = 5960;    97.     The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns:   TEACHERS   TEACHER_ID NUMBER(5)   NAME VARCHAR2(25)   SUBJECT_ID NUMBER(5)  HIRE_DATE DATE  SALARY NUMBER(9,2)   CLASS_ASSIGNMENTS  CLASS_ID NUMBER(5)  TEACHER_ID NUMBER(5)  START_DATE DATE  MAX_CAPACITY NUMBER(3)  

Which scenario would require a subquery to return the desired results?    

  

You need to display the start date for each class taught by a given teacher.     

  

You need to create a report to display the teachers who were hired more than five years ago.     

  

You need to display the names of the teachers who teach classes that start within the next week.     

  

You need to create a report to display the teachers who teach more classes than the average number of  classes taught by each teacher. (*)    98.     Evaluate this statement: DELETE FROM customer; Which statement is true?    

  

The statement deletes all the rows from the CUSTOMER table. (*)     

  

The statement deletes the CUSTOMER column.     

  

The statement deletes the first row in the CUSTOMERS table.     

  

The statement removes the structure of the CUSTOMER table from the database.    99.     You need to update the expiration date of products manufactured before June 30th . In which clause of  the UPDATE statement will you specify this condition?    

  

the ON clause     

  

the WHERE clause (*)     

  

the SET clause     

  

the USING clause    100.     You want to enter a new record into the CUSTOMERS table. Which two commands can be used to create  new rows?    

  

INSERT, CREATE     

  

MERGE, CREATE   

 

  

INSERT, MERGE (*)     

  

INSERT, UPDATE    Test: Quiz: Case and Character Manipulation           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Case and Character Manipulation    (Answer all questions in this section)             1.  Identify the output from the following SQL statement:   SELECT RPAD('SQL',6, '*') FROM DUAL    Mark for Review   (1) Points               ******SQL           ***SQL           SQL*** (*)  

        SQL******                     Correct                  2.  Which of the following SQL statements would correctly return a song title identified in the database  as "All These Years"?  Mark for Review   (1) Points               WHERE title CONTAINS 'Years';           WHERE title LIKE LOWER('all these years');           WHERE title IN('All', 'These', 'Years');           WHERE title LIKE INITCAP('%all these years'); (*)                     Incorrect. Refer to Section 1                  3.  Which character manipulation function always returns a numerical value?  Mark for Review   (1) Points          

    TRIM           LPAD           LENGTH (*)           SUBSTR                     Incorrect. Refer to Section 1                  4.  Which query would return a user password combining the ID of an employee and the first 4  characters of the last name?  Mark for Review   (1) Points               SELECT CONCAT (employee_id, SUBSTR(last_name,4,1))   AS "User Passwords"  FROM employees              SELECT CONCAT (employee_id, INSTR(last_name,4,1))   AS "User Passwords"   FROM employees         

    SELECT CONCAT (employee_id, INSTR(last_name,1,4))   AS "User Passwords"   FROM employees              SELECT CONCAT (employee_id, SUBSTR(last_name,1,4))   AS "User Passwords"   FROM employees   (*)                       Incorrect. Refer to Section 1                  5.  Which query selects the first names of the DJ On Demand clients who have a first name beginning  with "A"?  Mark for Review   (1) Points               SELECT UPPER(first_name)   FROM d_clients   WHERE first_name LIKE %a%             SELECT UPPER(first_name)   FROM d_clients  

WHERE first_name LIKE '%a%'              SELECT UPPER(first_name)   FROM d_clients   WHERE first_name LIKE 'a%'              SELECT UPPER(first_name)   FROM d_clients   WHERE LOWER(first_name) LIKE 'a%'  (*)                       Incorrect. Refer to Section 1                  6.  Single row functions may be used in ______, _______ and _______ clauses. (Choose two correct  answers)  Mark for Review   (1) Points              (Choose all correct answers)                SELECT, FROM, ALWAYS      

    FROM, SELECT, ORDERS           WHERE, DECODE, ORDER BY (*)           SELECT, WHERE, ORDER BY (*)                     Incorrect. Refer to Section 1                  7.  Which of the following are types of SQL functions? (Choose two correct answers.)  Mark for Review   (1) Points              (Choose all correct answers)                Multi‐Row Functions (*)           Column‐Row Functions           Single‐Row Functions (*)           Many‐to‐Many Functions                     Incorrect. Refer to Section 1   

              8.  What does the following SQL SELECT statement return?   SELECT UPPER( SUBSTR('Database Programming', INSTR('Database Programming','P'),20))   FROM dual;    Mark for Review   (1) Points               Programming           PROGRAMMING (*)           Database           DATABASE                     Incorrect. Refer to Section 1                  9.  Character functions accept character arguments and only return character values. True or False?   Mark for Review   (1) Points               True      

    False (*)                     Correct            Test: Quiz: Number Functions           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Number Functions    (Answer all questions in this section)             1.  ROUND and TRUNC functions can be used with which of the following Datatypes?  Mark for Review   (1) Points               Dates and numbers (*)           Dates and characters           Numbers and characters      

    None of the above                     Incorrect. Refer to Section 1                  2.  The answer to the following script is 456. True or False?   SELECT TRUNC(ROUND(456.98))  FROM dual    Mark for Review   (1) Points               True           False (*)                     Incorrect. Refer to Section 1                  3.  Which number function may be used to determine if a value is odd or even?  Mark for Review   (1) Points               MOD (*)      

    TRUNC           ROUND           BINARY                     Incorrect. Refer to Section 1                  4.  If hire_date has a value of '03‐July‐03', then what is the output from this code?   SELECT ROUND(hire_date, 'Year')   FROM employees;    Mark for Review   (1) Points               01‐JAN‐04 (*)           01‐JAN‐03           01‐JUL‐03           01‐AUG‐03              

      Incorrect. Refer to Section 1                  5.  What is the result of the following SQL Statement:  SELECT ROUND(45.923,‐1)  FROM DUAL; Mark for Review   (1) Points               46           45.9           50 (*)           None of the above                     Correct.               Test: Quiz: Date Functions           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. 

   Date Functions    (Answer all questions in this section)             1.  Which query would return a whole number if the sysdate is 26‐MAY‐04?  Mark for Review   (1) Points               SELECT TRUNC(MONTHS_BETWEEN(SYSDATE,'19‐MAR‐79') /12)   AS YEARS   FROM DUAL;   (*)           SELECT TRUNC(YEARS_BETWEEN(SYSDATE,'19‐MAR‐79') /12)   AS YEARS   FROM DUAL;             SELECT MONTHS_BETWEEN(SYSDATE,'19‐MAR‐79') /12   AS YEARS   FROM DUAL;             None of the above              

      Incorrect. Refer to Section 1                  2.  Round and Trunc can be used on Date datatypes. True or False? Mark for Review   (1) Points               True (*)           False                 3.  What is the result of the following query?  SELECT ADD_MONTHS ('11‐JAN‐94',6)  FROM dual;   Mark for Review   (1) Points               17‐Jan‐04           11‐Jan‐95           11‐Jul‐94 (*)           17‐Jul‐94      

          4.  What is the result of the following query?  SELECT ADD_YEARS ('11‐JAN‐94',6)  FROM dual;   Mark for Review   (1) Points               This in not a valid SQL statement. (*)           11‐Jul‐95           11‐Jan‐00           11‐Jul‐00                 5.  What function would you use to return the highest date in a month?  Mark for Review   (1) Points               FINAL_DAY           END_DAY           HIGHEST_DAY      

    LAST_DAY (*)                 6.  If hire_date has a value of '03‐July‐03', then what is the output from this code?   SELECT ROUND(hire_date, 'Year') FROM employees; Mark for Review   (1) Points               01‐JAN‐04 (*)           01‐JAN‐03           01‐JUL‐03           01‐AUG‐03               Test: Quiz: Conversion Functions           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Conversion Functions    (Answer all questions in this section)          

  1.  You need to display the HIRE_DATE values in this format:   25th of July 2002.    Which SELECT statement would you use?    Mark for Review   (1) Points               SELECT enroll_date(hire_date, 'DDspth "of" Month YYYY')   FROM employees;              SELECT TO_CHAR(hire_date, 'ddth "of" Month YYYY')   FROM employees;  (*)             SELECT TO_CHAR(hire_date, 'DDTH "of" Month YYYY')   FROM employees;             SELECT TO_CHAR(hire_date, 'DDspth 'of' Month RRRR')   FROM employees;                 

      Incorrect. Refer to Section 2                  2.  Which statement will return the salary of e.g. 6000 from the Employees table in the following  format $6000.00? Mark for Review   (1) Points               SELECT TO_CHAR(salary, '$99999.00') SALARY  FROM employees   (*)             SELECT TO_CHAR(salary, '99999.00') SALARY  FROM employees              SELECT TO_CHAR(salary, '$99999') SALARY   FROM employees              SELECT TO_CHAR(sal, '$99999.00') SALARY   FROM employees                    3.  The following script will run successfully. True or False?  

SELECT TO_CHAR(TO_DATE(“25‐DEC‐04” ,'dd‐MON‐yy'))  FROM dual    Mark for Review   (1) Points               True           False (*)                     Correct                  4.  A table has the following definition:  EMPLOYEES(  EMPLOYEE_ID NUMBER(6) NOT NULL,  LAST_NAME VARCHAR2(10) NOT NULL,  MANAGER_ID VARCHAR2(6))  and contains the following rows:    (1001, 'Bob Bevan', '200')  (200, 'Natacha Hansen', null)    Will the following query work:?   SELECT * 

FROM emps  WHERE id = manager;     Mark for Review   (1) Points               No, because the WHERE‐clause will not find any matching data           No, because the datatypes of ID and MANAGER are different.           Yes, Oracle will perform implicit datatype conversion. (*)           No. You will have to re‐write the statement and perform explicit datatype conversion.                 5.  Which statement is true about SQL functions?  Mark for Review   (1) Points               Functions can convert values or text to another data type.           Functions can round a number to a specified decimal place.           Functions can convert upper case characters to lower case characters.           a, b and c are true. (*)  

        None of the above statements are true.                     Incorrect. Refer to Section 2                 6.  Sysdate is 12‐MAY‐2004.   You need to store the following date: 7‐DEC‐89   Which statement about the date format for this value is true?  Mark for Review   (1) Points               Both the YY and RR date formats will interpret the year as 1989.           Both the YY and RR date formats will interpret the year as 2089.           The RR date format will interpret the year as 1989, and the YY date format will interpret the year as  2089. (*)           The RR date format will interpret the year as 2089, and the YY date format will interpret the year as  1989.                     Incorrect. Refer to Section 2               

  Test: Quiz: Null Functions           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Null Functions    (Answer all questions in this section)             1.  With the following data in Employees (last_name, commission_pct, manager_id) what is the result  of the following statement?  DATA:   King,null,null  Kochhar, null,100  Vargas, null, 124  Zlotkey,.2, 100    SELECT last_name, NVL2(commission_pct, manager_id, ‐1) comm   FROM employees ;   Mark for Review   (1) Points               King, ‐1  Kochhar, ‐1  Vargas, ‐1 

Zlotkey, ‐100             Statement will fail.           King, ‐1  Kochhar, 100  Vargas, 124  Zlotkey, .2             King, ‐1  Kochhar, ‐1  Vargas, ‐1  Zlotkey, 100  (*)                 2.  If quantity is a number datatype, what is the result of this statement?   SELECT NVL(200/quantity, 'zero') FROM inventory;   Mark for Review   (1) Points               zero      

    ZERO           The statement fails (*)           Null                     Incorrect. Refer to Section 2                  3.  Which function compares two expressions?  Mark for Review   (1) Points               NVL           NULLIF (*)           NVL2           NULL                     Correct               

  4.  Consider the following data in the Employees table:  last_name commission_pct manager_id   King null null   Kochhar null 100   Vargas null 124   Zlotkey .2 100     What is the result of the following statement:  SELECT last_name, COALESCE(commission_pct, manager_id, ‐1) comm   FROM employees ;   Mark for Review   (1) Points               Statement will fail           King, ‐1  Kochhar, 100  Vargas, 124  Zlotkey, .2  (*)           King, ‐1  Kochhar, 100  Vargas, 124  Zlotkey, 100 

           King, null  Kochhar, 100  Vargas, 124  Zlotkey, .2                   5.  The following statement returns 0 (zero). True or False?   SELECT 121/NULL  FROM dual;   Mark for Review   (1) Points               True           False (*)                     Incorrect. Refer to Section 2                Test: Quiz: Conditional Expressions     

     Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Conditional Expressions    (Answer all questions in this section)             1.  Which of the following is a conditional expression used in SQL?  Mark for Review   (1) Points               CASE (*)           DESCRIBE           WHERE           NULLIF                     Incorrect. Refer to Section 2                  2.  For the given data from Employees (last_name, manager_id) what is the result of the following  statement:  DATA:  King, null 

Kochhar, 100  De Haan, 100  Hunold, 102  Ernst, 103    SELECT last_name,  DECODE(manager_id, 100, 'King', 'A N Other')  FROM employees   Mark for Review   (1) Points               King, Null   Kochhar, King   De Haan, King   Hunold, A N Other   Ernst, A N Other             King, A N Other   Kochhar, King   De Haan, King   Hunold, A N Other   Ernst, A N Other  (*)    

        Invalid statement.           King, A N Other   Kochhar, King   De Haan, King   Hunold, Kochhar   Ernst, De Haan                   3.  CASE and DECODE evaluate expressions in a similar way to IF‐THEN‐ELSE logic. However, DECODE is  specific to Oracle syntax. True or False?  Mark for Review   (1) Points               True (*)           False                     Correct                  4.  Which statement will return a listing of last names, salaries and a rating of 'Low', 'Medium', 'Good'  or 'Excellent' depending on the salary value? Mark for Review   (1) Points  

            SELECT last_name,salary,   (CASE WHEN salary<5000 THEN 'Low'       WHEN salary<10000 THEN 'Medium'       WHEN salary<20000 THEN 'Good'       ELSE 'Excellent'   END) qualified_salary   FROM employees;  (*)             SELECT last_name,salary,   (CASE WHEN salary>5000 THEN 'Low'       WHEN salary>10000 THEN 'Medium'       WHEN salary>20000 THEN 'Good'        ELSE 'Excellent'   END) qualified_salary   FROM employees;             SELECT last_name,sal,   (CASE WHEN sal<5000 THEN 'Low'       WHEN sal<10000 THEN 'Medium'       WHEN sal<20000 THEN 'Good'       ELSE 'Excellent'  

END) qualified_salary   FROM employees;             SELECT last_name,salary,   (RATING WHEN salary<5000 THEN 'Low'       WHEN salary<10000 THEN 'Medium'       WHEN salary<20000 THEN 'Good'       ELSE 'Excellent'   END) qualified_salary   FROM employees;         Test: Quiz: Cartesian Product and the Join Operations           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Cartesian Product and the Join Operations    (Answer all questions in this section)             1.  If table A has 10 rows and table B has 5 rows, how many rows will be returned if you perform an  equi‐join on those two tables? Mark for Review   (1) Points          

    50           It depends on the data found in the two tables. (*)           5           10                 2.  When must column names be prefixed by table names in JOIN syntax?  Mark for Review   (1) Points               When more than two tables participate in the join.           Only when query speed and database performance is a concern.           When the same column name appears in more than one table of the query. (*)           Never.                     Correct                  3.  Will the following statement work? 

SELECT department_name, last_name  FROM employees, departments  WHERE department_id = department_id;   Mark for Review   (1) Points               No, Oracle will return a column ambiguously defined error. (*)           No, Oracle will not allow joins in the Where clause.           Yes, Oracle will resolve which department_id colum comes from which table.           Yes, there are no syntax errors in the statement.                 4.  What is the result of a query that selects from two tables but includes no join condition? Mark for  Review   (1) Points               A Cartesian product. (*)           A selection of matched rows from both tables.           A Syntax error.           A selection of rows from the first table only.  

                  Incorrect. Refer to Section 3                  5.  Oracle proprietary JOINS can use the WHERE clause for conditions other than the join‐condition.  True or False? Mark for Review   (1) Points               True (*)           False                 6.  If table A has 10 rows and table B has 5 rows, how many rows will be returned if you perform a  cartesian join on those two tables? Mark for Review   (1) Points               5           50 (*)           10           15      

        Test: Quiz: Nonequijoins           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Nonequijoins    (Answer all questions in this section)             1.  Which statement about joining tables with a non‐equijoin is false?  Mark for Review   (1) Points               A WHERE clause must specify a column in one table that is compared to a column in the second table  (*)           The number of join conditions required is always one less than the number of tables being joined           The columns being joined must have compatible data types           None of the above                     Correct               

  2.  The following statement is an example of a nonequi‐join.  SELECT e.last_name, e.salary, j.grade_level  FROM employees e, job_grades j  WHERE e.salary   BETWEEN j.lowest_sal AND j.highest_sal;    True or False?   Mark for Review   (1) Points               True (*)           False                 3.  Which of the following operators is/are typically used in a nonequijoin?  Mark for Review   (1) Points               NOT           OR           IN           >=, <=, BETWEEN ...AND (*)  

                  Incorrect. Refer to Section 3                  Test: Quiz: Outer Joins           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Outer Joins    (Answer all questions in this section)             1.  To perform a valid outer join between DEPARMENTS and EMPLOYEES to list departments without  employees select the correct WHERE clause for the following select statement:  SELECT d.department_name, e.last_name  FROM employees e, departments d  WHERE     Mark for Review   (1) Points               e.department_id(+) = d.department_id (*)      

    e.department_id(+) = d.department_id(+)           e.department_id = d.department_id(+)           e.department_id = d.department_id                 2.  The ID column in the CLIENT table that corresponds to the CLIENT_ID column of the ORDER table  contains null values for rows that need to be displayed. Which type of join should you use to display the  data?  Mark for Review   (1) Points               Equijoin           Self join           Outer join (*)           Nonequi‐Join                     Incorrect. Refer to Section 3                  3.  The following is a valid outer join statement:  SELECT c.country_name, d.department_name 

FROM countries c, departments d  WHERE c.country_id (+) = d.country_id (+)    True or False?     Mark for Review   (1) Points               True           False (*)                 4.  Which symbol is used to perform an outer join?  Mark for Review   (1) Points               *           ||           (+) (*)           #              

      Correct        Test: Quiz: Self Joins           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Self Joins    (Answer all questions in this section)             1.  Which of the following database design concepts is implemented with a self join?  Mark for Review   (1) Points               Non‐Transferability           Recursive Relationship (*)           Supertype           Arc                     Correct       

          2.  Which select statement will return the last name and hire data of an employee and his/ her  manager for employees that started in the company before their managers? Mark for Review   (1) Points               SELECT w.last_name, w.hire_date, m.last_name, m.hire_date  FROM employees w , employees m  WHERE w.manager_id != m.employee_id AND w.hire_date < m.hire_date             SELECT w.last_name, w.hire_date, m.last_name, m.hire_date  FROM employees w , employees m  WHERE w.manager_id = m.employee_id AND w.hire_date > m.hire_date             SELECT w.last_name, w.hire_date, m.last_name, m.hire_date  FROM employees w , employees w  WHERE w.manager_id = w.employee_id AND w.hire_date < w.hire_date             SELECT w.last_name, w.hire_date, m.last_name, m.hire_date  FROM employees w , employees m  WHERE w.manager_id = m.employee_id AND w.hire_date < m.hire_date  (*)        

          3.  Which SELECT statement implements a self join ? Mark for Review   (1) Points               SELECT e.employee_id, m.manager_id   FROM employees e NATURAL JOIN employee m;             SELECT e.employee_id, m.manager_id   FROM employees e, employees m   WHERE m.employee_id = e.manager_id;  (*)             SELECT e.employee_id, m.manager_id   FROM employees e, manager m   WHERE e.employee_id = m.manager_id;             SELECT e.employee_id, m.manager_id   FROM employees e, departments m   WHERE e.employee_id = m.manager_id;                 

      Incorrect. Refer to Section 3                Test: Quiz: Cross joins and Natural Joins           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Cross joins and Natural joins             1.  The ___________ join is the ANSI‐standard syntax used to generate a Cartesian product.  Mark for  Review   (1) Points               NATURAL           ALL           FULL           CROSS (*)                     Incorrect. Refer to Section 4       

          2.  The join column must be included in the select statement when you use the NATURAL JOIN clause.  True or False? Mark for Review   (1) Points               True           False (*)                 3.  What happens when you create a Cartesian product?  Mark for Review   (1) Points               All rows from one table are joined to all rows of another table (*)           No rows are returned as you entered wrong join‐criteria           The table is joined to itself, one column to the next column, exhausting all possibilities           All rows that do not match in the WHERE clause are displayed                     Incorrect. Refer to Section 4                  4.  A NATURAL JOIN is based on:  Mark for Review  

(1) Points               Columns with the same name and datatype (*)           Columns with the same name           Columns with the same datatype and width           Tables with the same structure                     Incorrect. Refer to Section 4                Test: Quiz: Join Clauses           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Join Clauses    (Answer all questions in this section)             1.  The following is a valid SQL statement.   SELECT e.employee_id, e.last_name, d.location_id, department_id 

FROM employees e JOIN departments d  USING (department_id) ;    True or False?     Mark for Review   (1) Points               True (*)           False                 2.  The keywords JOIN _____________ should be used to join tables with the same column names but  different datatypes.  Mark for Review   (1) Points               NATURAL ON           ON           WHEN           USING (*)              

      Correct                  3.  You can do nonequi‐joins with ANSI‐Syntax. True or False? Mark for Review   (1) Points               True (*)           False                 4.  The primary advantage of using JOIN ON is:  Mark for Review   (1) Points               The join happens automatically based on matching column names and data types           It will display rows that do not meet the join condition           It easily produces a Cartesian product between the tables in the statement           It permits columns that don?t have matching data types to be joined           It permits columns with different names to be joined (*)              

      Correct                  5.  Table aliases MUST be used with columns referenced in the JOIN USING clause. True or False?  Mark  for Review   (1) Points               True           False (*)                     Incorrect. Refer to Section 4                Test: Quiz: Inner versus Outer Joins           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Inner versus Outer Joins    (Answer all questions in this section)             1.  Given the following descriptions of the employees and jobs tables, which of the following scripts will  display each employee's possible minimum and maximum salaries based on their job title? 

EMPLOYEES Table:  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)        JOBS Table:  Name  Null?  Type    JOB_ID  NOT NULL  VARCHAR2 (10)    JOB_TITLE  NOT NULL  VARCHAR2 (35)    MIN_SALARY   NUMBER (6)    MAX_SALARY   NUMBER (6)       Mark for Review   (1) Points          

    SELECT e.first_name, e.last_name, e.job_id, j.min_salary, j.max_salary   FROM employees e   NATURAL JOIN jobs j   USING (job_id);             SELECT first_name, last_name, job_id, min_salary, max_salary   FROM employees   NATURAL JOIN jobs;  (*)             SELECT e.first_name, e.last_name, e.job_id, j.min_salary, j.max_salary   FROM employees e   NATURAL JOIN jobs j;              SELECT first_name, last_name, job_id, min_salary, max_salary   FROM employees e   FULL JOIN jobs j (job_id);              SELECT e.first_name, e.last_name, e.job_id, j.min_salary, j.max_salary   FROM employees e   NATURAL JOIN jobs j ON (e.job_title = j.job_title);  

                     Correct                  2.  For which of the following tables will all the values be retrieved even if there is no match in the  other?   SELECT e.last_name, e.department_id, d.department_name   FROM employees e   LEFT OUTER JOIN departments d ON (e.department_id = d.department_id);    Mark for Review   (1) Points               employees (*)           department           both           Neither. the LEFT OUTER JOIN limits the value to the matching department id's.                     Incorrect. Refer to Section 4               

  3.  If you select rows from two tables (employees and departments) using an outer join, what will you  get? Use the code below to arrive at your answer:   SELECT e.last_name, e.department_id, d.department_name   FROM employees e   LEFT OUTER JOIN departments d   ON (e.department_id = d.department_id);     Mark for Review   (1) Points               All employees that do not have a department_id assigned to them           All employees including those that do not have a department_id assigned to them (*)           No employees as the statement will fail           None of the above                     Incorrect. Refer to Section 4                  4.  The following statement is an example of what kind of join?   SELECT car.vehicle_id, driver.name   FROM car   LEFT OUTER JOIN driver ON (driver_id) ; 

 Mark for Review   (1) Points               Inner Join           Outer Join (*)           Equijoin           Optimal Join                     Incorrect. Refer to Section 4                  5.  What is another name for a simple join or an inner join?  Mark for Review   (1) Points               Nonequijoin           Equijoin (*)           Self Join           Outer Join  

                  Incorrect. Refer to Section 4                  6.  Which syntax would be used to retrieve all rows in both the EMPLOYEES and DEPARTMENTS tables,  even when there is no match?  Mark for Review   (1) Points               FULL OUTER JOIN (*)           LEFT OUTER JOIN AND RIGHT OUTER JOIN           FULL INNER JOIN           Use any equijoin syntax                     Incorrect. Refer to Section 4                  7.  EMPLOYEES Table: Name  Null?  Type    EMPLOYEE_ID  NOT NULL  NUMBER(6)    FIRST_NAME   VARCHAR2(20)    LAST_NAME  NOT NULL  VARCHAR2(25)    DEPARTMENT_ID   NUMBER (4)   

  DEPARTMENTS Table:  Name  Null?  Type    DEPARTMENT_ID  NOT NULL  NUMBER 4    DEPARTMENT_NAME  NOT NULL  VARCHAR2(30)    MANAGER_ID   NUMBER (6)        A query is needed to display each department and its manager name from the above tables. However,  not all departments have a manager but we want departments returned in all cases. Which of the  following SQL: 1999 syntax scripts will accomplish the task?    Mark for Review   (1) Points               SELECT d.department_id, e.first_name, e.last_name   FROM employees e  LEFT OUTER JOIN departments d ON (e.employee_id = d.manager_id);             SELECT d.department_id, e.first_name, e.last_name   FROM employees e   LEFT OUTER JOIN departments d   WHERE (e.department_id = d.department_id);             SELECT d.department_id, e.first_name, e.last_name   FROM employees e  

RIGHT OUTER JOIN departments d ON (e.employee_id = d.manager_id);   (*)             SELECT d.department_id, e.first_name, e.last_name   FROM employees e   FULL OUTER JOIN departments d ON (e.employee_id = d.manager_id);             SELECT d.department_id, e.first_name, e.last_name   FROM employees e, departments d   WHERE e.employee_id RIGHT OUTER JOIN d.manager_id;                        Incorrect. Refer to Section 4                  Test: Quiz: Group Functions           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.   

 Group Functions    (Answer all questions in this section)             1.  What two group functions can be used with any datatype?  Mark for Review   (1) Points               STDDEV, VARIANCE           SUM, AVG           COUNT, SUM           MIN, MAX (*)                     Incorrect. Refer to Section 5                  2.  Given the following data in the employees table (employee_id, salary, commission_pct)  DATA: (143, 2600, null  144, 2500, null  149, 10500, .2  174, 11000, .3  176, 8600, .2  178, 7000, .15) 

  What is the result of the following statement:    SELECT SUM(commission_pct), COUNT(commission_pct)  FROM employees  WHERE employee_id IN( 143,144,149,174,176,178)     Mark for Review   (1) Points               SUM = 1.85 and COUNT = 6           SUM = 1.85 and COUNT = 4           SUM = .85 and COUNT = 6           SUM = .85 and COUNT = 4 (*)                 3.  The following statement will work even though it uses the same column with different GROUP  functions:  SELECT AVG(salary), MAX(salary), MIN(salary), SUM(salary)  FROM employees;  True or False?     Mark for Review  

(1) Points               True (*)           False                 4.  You can use GROUP functions in all clauses of a SELECT statement. True or False? Mark for Review   (1) Points               True           False (*)                 5.  What would the following SQL statement return?   SELECT MAX(hire_date)   FROM employees;    Mark for Review   (1) Points               The hire date of the longest serving employee           The hire date of the newest employee (*)      

    The hire dates of all employees in ascending order           The hire dates of all employees                     Correct                  6.  Given the following data in the employees table (employee_id, salary, commission_pct)  DATA: (143, 2600, null  144, 2500, null  149, 10500, .2  174, 11000, .3  176, 8600, .2  178, 7000, .15)    What is the result of the following statement:    SELECT AVG(commission_pct)  FROM employees  WHERE employee_id IN( 143,144,149,174,176,178)     Mark for Review   (1) Points          

    This statement is invalid           0.2125 (*)           1.2125           0.0425                   Test: Quiz: Count, Distinct, NVL           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Count, Distinct, NVL    (Answer all questions in this section)             1.  Using your existing knowledge of the employees table, would the following two statements produce  the same result?  SELECT COUNT(*)  FROM employees;    SELECT COUNT(commission_pct) 

FROM employees;     Mark for Review   (1) Points               The second statement is invalid           The first statement is invalid           Yes           No (*)                 2.  To include null values in the calculations of a group function, you must:  Mark for Review   (1) Points               Precede the group function name with NULL           Count the number of null values in that column using COUNT           Convert the null to a value using the NVL( ) function (*)           Group functions can never use null values      

              Correct                  3.  What would the following SQL statement return?   SELECT COUNT(DISTINCT salary)   FROM employees;   Mark for Review   (1) Points               The number of unique salaries in the employees table (*)           The total amount of salaries in the employees table           The total number of rows in the employees table           A listing of all unique salaries in the employees table                 4.  What would the following SQL statement return?   SELECT COUNT(first_name)   FROM employees;    Mark for Review   (1) Points          

    A listing of all non‐null first names in the employees table           The total number of non‐null first names in the employees table (*)           The total number of rows in the employees table           A listing of all unique first names in the employees table                     Incorrect. Refer to Section 5                  Test: Quiz: Group By and Having Clauses           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Group By and Having Clauses    (Answer all questions in this section)             1.  How would you alter the following query to list only employees where more than one employee  exists with the same last_name:  SELECT last_name, COUNT(employee_id)   FROM EMPLOYEES  

GROUP BY last_name;     Mark for Review   (1) Points               SELECT last_name, COUNT(employee_id)   FROM EMPLOYEES   WHERE COUNT(*) > 1  GROUP BY last_name             SELECT last_name, COUNT(last_name)   FROM EMPLOYEES   GROUP BY last_name  HAVING COUNT(last_name) > 1;  (*)             SELECT last_name, COUNT(last_name)   FROM EMPLOYEES   GROUP BY last_name  EXISTS COUNT(last_name) > 1;             SELECT employee_id, DISTINCT(last_name)  

FROM EMPLOYEES   GROUP BY last_name  HAVING last_name > 1;                   2.  Which of the following SQL statements could display the number of people with the same last  name:  Mark for Review   (1) Points               SELECT first_name, last_name, COUNT(employee_id)   FROM EMPLOYEES   GROUP BY last_name;             SELECT employee_id, COUNT(last_name)   FROM EMPLOYEES   GROUP BY last_name;             SELECT last_name, COUNT(last_name)   FROM EMPLOYEES   GROUP BY last_name;  (*)        

    SELECT employee_id, DISTINCT(last_name)   FROM EMPLOYEES   GROUP BY last_name;                       Incorrect. Refer to Section 5                  3.  Is the following statement correct:   SELECT first_name, last_name, salary, department_id,   COUNT(employee_id)   FROM employees  WHERE department_id = 50   GROUP BY last_name, first_name, department_id;     Mark for Review   (1) Points               Yes           No, beause you cannot have a WHERE‐clause when you use group functions.           No, because the statement is missing salary in the GROUP BY clause (*)      

    Yes, because Oracle will correct any mistakes in the statement itself                 4.  Read the following SELECT statement. Choose the column or columns that must be included in the  GROUP_BY clause.   SELECT COUNT(last_name), grade, gender   FROM STUDENTS   GROUP_BY ?????;    Mark for Review   (1) Points               last_name           last_name, grade           grade, gender (*)           last_name, gender                     Correct                  5.  Is the following statement correct?   SELECT department_id, AVG(salary)   FROM employees;  

 Mark for Review   (1) Points               No, because a GROUP BY department_id clause is needed (*)           No, because the SELECT clause cannot contain both individual columns and group functions           No, because the AVG function cannot be used on the salary column           Yes                     Incorrect. Refer to Section 5                  6.  The following is a valid statement:  SELECT MAX(AVG(salary))  FROM employees  GROUP BY department_id;    True or False?     Mark for Review   (1) Points          

    True (*)           False                 Test: Quiz: Subqueries           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Subqueries    (Answer all questions in this section)             1.  What will the following statement return:  SELECT last_name, salary  FROM employees  WHERE salary < (SELECT salary      FROM employees      WHERE employee_id = 103)     Mark for Review   (1) Points          

    A list of last_names and salaries of employees that makes more than employee 103           A list of last_names and salaries of employees that makes less than employee 103 (*)           A list of first_names and salaries of employees making less than employee 103           Nothing. It is an invalid statement.                 2.  Which of the following statements is a true guideline for using subqueries?  Mark for Review   (1) Points               Do not enclose the subquery in parentheses.           Place the subquery on the left side of the comparison condition.           The outer and inner queries can reference than one table. They can get data from different tables. (*)           Only one WHERE clause can be used for a SELECT statement, and if specified, it must be the outer  query.                     Correct                  3.  What will the following statement return: 

SELECT employee_id, last_name  FROM employees  WHERE salary =     (SELECT MIN(salary)      FROM employees      GROUP BY department_id);     Mark for Review   (1) Points               Nothing. It is an invalid statement. (*)           A list of last_names and salaries of employees           A list of first_names and salaries of employees in Department 50           A list of last_names and salaries of employees grouped by department_id.                 4.  Subqueries can only be placed in the WHERE clause. True or False? Mark for Review   (1) Points               True           False (*)  

            Test: Quiz: Single‐Row Subqueries           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Single‐Row Subqueries    (Answer all questions in this section)             1.  Single row subqueries may not include this operator:  Mark for Review   (1) Points               ALL (*)           =           <>           >                     Incorrect. Refer to Section 6       

          2.  Subqueries are limited to four per SQL transaction. True or False?  Mark for Review   (1) Points               True           False (*)                     Incorrect. Refer to Section 6                  3.  In a non‐correlated subquery, the outer query always executes prior to the inner query's execution.  True or False?  Mark for Review   (1) Points               True           False (*)                     Correct                  4.  The result of this statement will be:   SELECT last_name, job_id, salary, department_id  

FROM employees   WHERE job_id =      (SELECT job_id       FROM employees       WHERE employee_id = 141) AND department_id =         (SELECT department_id          FROM departments          WHERE location_id =1500)      Mark for Review   (1) Points               All employees from Location 1500 will be displayed           An error since you can?t get data from two tables in the same subquery           All employees with the department id of 141           Only the employees whose job id matches employee 141 and who work in location 1500 (*)                     Correct                  5.  If the subquery returns no rows will the outer query return any values? Mark for Review  

(1) Points               No, because you are not allowed to not return any rows from a subquery           Yes. It will just run and ignore the subquery           No, because the subquery will be treated like a null value. (*)           Yes, Oracle will find the nearest value and fix rewrite your statement implicitly when you run it               Test: Quiz: Multiple‐Row Subqueries           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Multiple‐Row Subqueries    (Answer all questions in this section)             1.  Group functions, such as HAVING and GROUP BY, can be used in multiple‐row subqueries. True or  False?  Mark for Review   (1) Points               True (*)      

    False                     Correct                  2.  When a multiple‐row subquery uses the NOT IN (<>ALL) operator, if one of the values returned by  the inner query is a null value, the entire query returns:  Mark for Review   (1) Points               A list of Nulls           All rows that were selected by the inner query including the null value(s)           All rows, minus the null value(s), that were selected by the inner query           no rows returned (*)                     Incorrect. Refer to Section 6                  3.  The salary column of the f_staffs table contains the following values:   4000   5050   6000  

11000  23000   Which of the following statements will return the last_name and first_name of those employees who  earn more than 5000.   Mark for Review   (1) Points               SELECT last_name, first_name   FROM f_staffs   WHERE salary = (SELECT salary FROM f_staffs WHERE salary > 5000);             SELECT last_name, first_name   FROM f_staffs   WHERE salary = (SELECT salary FROM f_staffs WHERE salary < 5000);              SELECT last_name, first_name   FROM f_staffs   WHERE salary IN (SELECT salary FROM f_staffs WHERE salary > 5000);  (*)             SELECT last_name, first_name   FROM f_staffs   WHERE salary IN (SELECT last_name, first_name FROM f_staffs WHERE salary < 5000); 

                     Correct                  4.  In a subquery the ALL operator compares a value to every value returned by the inner query. True or  False?  Mark for Review   (1) Points               True (*)           False                     Incorrect. Refer to Section 6                  5.  Group functions can be used in subqueries even though they may return many rows. True or False?   Mark for Review   (1) Points               True (*)           False      

              Incorrect. Refer to Section 6                  6.  The SQL multiple‐row subquery extends the capability of the single‐row syntax through the use of  what three comparison operators?  Mark for Review   (1) Points               IN, ANY and EQUAL           IN, ANY and ALL (*)           IN, ANY and EVERY           IN, ALL and EVERY                     Correct                  7.  There can be more than one subquery returning information to the outer query. True or False?   Mark for Review   (1) Points               True (*)      

    False                     Correct                  8.  Multiple‐row subqueries must have NOT, IN or ANY in the WHERE clause of the inner query. True or  False?  Mark for Review   (1) Points               True           False (*)                     Correct                          Test: Quiz: Insert Statement           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. 

   Insert Statement    (Answer all questions in this section)             1.  When inserting a new row the null keyword can be included in the values list for any null column.  True or False? Mark for Review   (1) Points               True (*)           False                     Correct                  2.  Insert statements can be combined with subqueries to create more than one row per statement.  True or False?  Mark for Review   (1) Points               True (*)           False                 3.  If the employees table have 7 rows how many rows are inserted into the copy_emps table with the  following statement:  

INSERT INTO copy_emps (employee_id, first_name, last_name, salary, department_id)   SELECT employee_id, first_name, last_name, salary, department_id   FROM employees    Mark for Review   (1) Points               No rows, as you cannot use subqueries in an insert statement.           7 rows, as there is no WHERE‐clause on the subquery. (*)           No rows, as the select statement is invalid.           10 rows will be created.                 4.  What is the quickest way to use todays date when you are creating a new row? Mark for Review   (1) Points               Simply write todays date in the format of 'dd‐mon‐rr'.           Simply use the keyword DATE in the insert statement.           Use the SYSDATE function. (*)           Use the TODAYS_DATE function.  

              5.  Which of the following statements will add a new customer to the customers table in the Global  Fast Foods database?  Mark for Review   (1) Points               INSERT IN customers (id, first_name, last_name, address, city, state, zip, phone_number);             INSERT INTO customers (id, first_name, last_name, address, city, state, zip, phone_number)   VALUES ("145", 'Katie', 'Hernandez', '92 Chico Way', 'Los Angeles', 'CA', "98008", "8586667641");              INSERT INTO customers (id, first_name, last_name, address, city, state, zip, phone_number)   VALUES (145, 'Katie', 'Hernandez', '92 Chico Way', 'Los Angeles', 'CA', 98008, 8586667641);   (*)             INSERT INTO customers (id 145, first_name 'Katie', last_name 'Hernandez', address '92 Chico Way',  city 'Los Angeles', state 'CA', zip 98008, phone_number 8586667641);                        Correct               

  6.  To return a table summary on the customers table, which of the following is correct?  Mark for  Review   (1) Points               SHOW customers, or SEE customers           DISTINCT customers, or DIST customers           DESCRIBE customers, or DESC customers (*)           DEFINE customers, or DEF customers                     Incorrect. Refer to Section 7                  7.  Is it possible to insert more than one row at a time using an INSERT statement with a VALUES  clause? Mark for Review   (1) Points               No, you can only create one row at a time when using the VALUES clause. (*)           Yes, you can just list as many rows as you want, just remember to separate the rows with commas.           No, there is no such thing as INSERT …. VALUES.      

          8.  When inserting rows into a table all columns must be given values. True or False? Mark for Review   (1) Points               True           False (*)                 9.  DML is an acronym that stands for:  Mark for Review   (1) Points               Debit Markup Language           Don't Manipulate Language           Data Markup Language           Data Manipulation Language (*)                     Incorrect. Refer to Section 7                 

Test: Quiz: Updating Column Values and Deleting Rows           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Updating Column Values and Deleting Rows    (Answer all questions in this section)             1.  Assuming there are no Foreign Keys on the EMPLOYEES table, if the following subquery returns one  row, how many rows will be deleted from the EMPLOYEES table?   DELETE FROM employees   WHERE department_id =      (SELECT department_id       FROM departments       WHERE department_name LIKE '%Public%');   Mark for Review   (1) Points               No rows will be deleted.           One row will be deleted, as the subquery only returns one row.           All the rows in the EMPLOYEES table with department_ids matching the department_id returned by  the subquery. (*)      

    All rows in the EMPLOYEES table will be deleted, regardless of their department_id.                 2.  How many rows will be deleted from the employees table with the following statement?  DELETE FROM employees  WHERE last_name = 'king';   Mark for Review   (1) Points               All the rows in the employees table will be deleted.           No rows will be deleted, as no employees match the WHERE‐clause. (*)           One will will be deleted, as there exists one employee called King.           All rows with last_name = 'King' will be deleted.                 3.  Using your knowledge of the employees table, what would be the result of the following statement:  DELETE FROM employees; Mark for Review   (1) Points               Nothing, no data will be changed.           All rows in the employees table will be deleted if there are no constraints on the table. (*)      

    The first row in the employees table will be deleted.           Deletes employee number 100.                 4.  Is the following statement valid, i.e. is it allowed to update rows in one table, based on a subquery  from another table?   UPDATE copy_emp   SET department_id = (SELECT department_id        FROM employees        WHERE employee_id = 100)   WHERE job_id = (SELECT job_id        FROM employees         WHERE employee_id = 200);   Mark for Review   (1) Points               Yes, this is a perfectly valid statement. (*)           The statement will fail, because the subqueries are returning data from different rows           No, this will not work           No, this statement will return an error.              

  5.  Which of the following statements best describes what will happen to the student table in this SQL  statement?   UPDATE students   SET lunch_number =      (SELECT lunch_numer       FROM students        WHERE student_id = 17)   WHERE student_id = 19;    Mark for Review   (1) Points               The statement updates the student_table by replacing student id 19’s lunch number with student id  17’s lunch number. (*)           Inserts a new row into the students table.           Does nothing, the as you cannot use subqueries in update statements.           Deletes student 17's lunch_number and inserts a new value from student 19.                     Correct                  6.  To change an existing row in a table, you can use the UPDATE and INSERT statements. True or False?   Mark for Review   (1) Points  

            True           False (*)                     Correct                Test: Quiz: Default Values and the Merge Statement           Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.     Default Values and the Merge Statement    (Answer all questions in this section)             1.  The MERGE function combines the:  Mark for Review   (1) Points               CREATE and UPDATE commands           INSERT and UPDATE commands (*)      

    ALTER and UPDATE commands           all of the above                     Incorrect. Refer to Section 7                  2.  The DEFAULT keyword can be used in the following statements:   Mark for Review   (1) Points      INSERT and UPDATE (*)       INSERT and DELETE       DELETE and UPDATE       All of the above              3.  If a default value was set for a null column, Oracle sets the column to the default value. However, if  no default value was set when the column was created, Oracle inserts an empty space. True or False?  Mark for Review   (1) Points               True           False (*)              

      Correct                  4.  Which statement below will not insert a row of data onto a table?  Mark for Review   (1) Points               INSERT INTO student_table (id, lname, fname, lunch_num)   VALUES (143354, 'Roberts', 'Cameron', 6543);              INSERT INTO student_table   VALUES (143354, 'Roberts', 'Cameron', 6543);             INSERT INTO student_table (id, lname, fname, lunch_num)   VALUES (143352, 'Roberts', 'Cameron', DEFAULT);             INSERT INTO (id, lname, fname, lunch_num)   VALUES (143354, 'Roberts', 'Cameron', 6543);  (*)                       Incorrect. Refer to Section 7   

              5.  The MERGE statement can be used to update rows in one table based on values in another table  and if the update fails, then the rows will automatically be inserted instead. True or False? Mark for  Review   (1) Points               True (*)           False                 6.  In developing the Employees table, you create a column called hire_date. You assign the hire_date  column a DATE datatype with a DEFAULT value of 0 (zero). A user can come back later and enter the  correct hire_date. This is __________.  Mark for Review   (1) Points               A great idea. When a new employee record is entered, if no hire_date is specified, the 0 (zero) will be  automatically specified.           A great idea. When new employee records are entered, they can be added faster by allowing the 0's  (zeroes) to be automatically specified.           Both a and b are correct.           A bad idea. The default value must match the DATE datatype of the column. (*)              

      Incorrect. Refer to Section 7                  Page 1 of 1                                                         

                                                                    

                                                                   

                                                                    

                                                     Section 1 Lesson 1   (Answer all questions in this section)     1.  You need to return a portion of each employee's last name, beginning with the first character up to  the fifth character. Which character function should you use?  Mark for Review  (1) Points       INSTR 

     TRUNC       SUBSTR (*)       CONCAT           Incorrect. Refer to Section 1       2.  What will the following SQL statement display?    SELECT last_name, LPAD(salary, 15, '$')SALARY  FROM employees;       Mark for Review  (1) Points       The last name of employees that have a salary that includes a $ in the value, size of 15 and the column  labeled SALARY.       The last name and the format of the salary limited to 15 digits to the left of the decimal and the  column labeled SALARY.       The last name and salary for all employees with the format of the salary 15 characters long, left‐ padded with the $ and the column labeled SALARY. (*)       The query will result in an error: "ORA‐00923: FROM keyword not found where expected."           Incorrect. Refer to Section 1       3.  Which SQL function can be used to remove heading or trailing characters (or both) from a character  string?  Mark for Review  (1) Points       LPAD       CUT 

     NVL2       TRIM (*)           Incorrect. Refer to Section 1       4.  Evaluate this SELECT statement:    SELECT LENGTH(email)  FROM employees;      What will this SELECT statement display?   Mark for Review  (1) Points       The longest e‐mail address in the EMPLOYEES table.       The email address of each employee in the EMPLOYEES table.       The number of characters for each value in the EMAIL column in the EMPLOYEES table. (*)       The maximum number of characters allowed in the EMAIL column.           Correct       5.  You issue this SQL statement:    SELECT INSTR ('organizational sales', 'al')  FROM dual;      Which value is returned by this command?   Mark for Review  (1) Points       1 

     2       13 (*)       17           Incorrect. Refer to Section 1       6.  You query the database with this SQL statement:    SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID"  FROM employee;      In which order are the functions evaluated?   Mark for Review  (1) Points       LOWER, SUBSTR, CONCAT       LOWER, CONCAT, SUBSTR       SUBSTR, CONCAT, LOWER       CONCAT, SUBSTR, LOWER (*)           Incorrect. Refer to Section 1       7.  The STYLES table contains this data:    STYLE_ID  STYLE_NAME  CATEGORY  COST  895840  SANDAL  85940  12.00  968950  SANDAL  85909  10.00  869506  SANDAL  89690  15.00  809090  LOAFER  89098  10.00  890890  LOAFER  89789  14.00  857689  HEEL 85940  11.00 

758960  SANDAL  86979 12.00      You query the database and return the value 79. Which script did you use?   Mark for Review  (1) Points       SELECT INSTR(category, 2,2)  FROM styles  WHERE style_id = 895840;         SELECT INSTR(category, ‐2,2)  FROM styles  WHERE style_id = 895840;         SELECT SUBSTR(category, 2,2)  FROM styles  WHERE style_id = 895840;         SELECT SUBSTR(category, ‐2,2)  FROM styles  WHERE style_id = 758960;  (*)             Incorrect. Refer to Section 1           Section 1 Lesson 2   (Answer all questions in this section)     8.  You issue this SQL statement:    SELECT TRUNC(751.367,‐1)  FROM dual;   

  Which value does this statement display?   Mark for Review  (1) Points       700       750 (*)       751       751.3           Correct       9.  Which script displays '01‐MAY‐04' when the HIRE_DATE value is '20‐MAY‐04'?  Mark for Review  (1) Points       SELECT TRUNC(hire_date, 'MONTH')  FROM employees;  (*)         SELECT ROUND(hire_date, 'MONTH')  FROM employees;         SELECT ROUND(hire_date, 'MON')  FROM employees;         SELECT TRUNC(hire_date, 'MI')  FROM employees;             Incorrect. Refer to Section 1 Lesson 3       10.  Which two functions can be used to manipulate number or date column values, but NOT character 

column values? (Choose two.)  Mark for Review  (1) Points      (Choose all correct answers)       RPAD       TRUNC (*)       ROUND (*)       INSTR       CONCAT           Incorrect. Refer to Section 1        Page 1 of 10               11.  Which of the following SQL statements will correctly display the last name and the number of  weeks employed for all employees in department 90?  Mark for Review  (1) Points       SELECT last_name, (SYSDATE‐hire_date)/7 AS WEEKS  FROM employees  WHERE department_id = 90;  (*)         SELECT last name, (SYSDATE‐hire_date)/7 DISPLAY WEEKS  FROM employees  WHERE department id = 90;     

   SELECT last_name, # of WEEKS  FROM employees  WHERE department_id = 90;         SELECT last_name, (SYSDATE‐hire_date)AS WEEK  FROM employees  WHERE department_id = 90;             Incorrect. Refer to Section 1       12.  You need to display the number of months between today's date and each employee's hiredate.  Which function should you use?  Mark for Review  (1) Points       ROUND       BETWEEN       ADD_MONTHS       MONTHS_BETWEEN (*)           Incorrect. Refer to Section 1       13.  You want to create a report that displays all orders and their amounts that were placed during the  month of January. You want the orders with the highest amounts to appear first. Which query should  you issue?  Mark for Review  (1) Points       SELECT orderid, total  FROM orders  WHERE order_date LIKE '01‐jan‐02' AND '31‐jan‐02'  ORDER BY total DESC;         SELECT orderid, total 

FROM orders  WHERE order_date IN ( 01‐jan‐02 , 31‐jan‐02 )  ORDER BY total;         SELECT orderid, total  FROM orders  WHERE order_date BETWEEN '01‐jan‐02' AND '31‐jan‐02'  ORDER BY total DESC;  (*)         SELECT orderid, total  FROM orders  WHERE order_date BETWEEN '31‐jan‐02' AND '01‐jan‐02'  ORDER BY total DESC;             Incorrect. Refer to Section 1       14.  You need to subtract three months from the current date. Which function should you use?  Mark  for Review  (1) Points       ROUND       TO_DATE       ADD_MONTHS (*)       MONTHS_BETWEEN           Incorrect. Refer to Section 1       15.  Which SELECT statement will return a numeric value?  Mark for Review  (1) Points   

   SELECT SYSDATE + 600 / 24     

This watermark does not appear in the registered version - http://www.clicktoconvert.com

1. Which SQL function can be used to remove heading or trailing characters (or both) from a character string? Mark for Review (1) Points LPAD CUT NVL2 TRIM (*) Correct

2. Which three statements about functions are true? (Choose three.) Mark for Review (1) Points (Choose all correct answers) The SYSDATE function returns the Oracle Server date and time. (*) The ROUND number function rounds a value to a specified decimal place or the nearest whole number. (*) The CONCAT function can only be used on character strings, not on numbers. The SUBSTR character function returns a portion of a string beginning at a defined character position to a specified length. (*) Correct You query the database with this SQL statement: SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID" FROM employee; In which order are the functions evaluated? Mark for Review (1) Points LOWER, SUBSTR, CONCAT LOWER, CONCAT, SUBSTR

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SUBSTR, CONCAT, LOWER CONCAT, SUBSTR, LOWER (*) Correct 4. The STYLES table contains this data: STYLE_ID STYLE_NAME CATEGORY COST 895840 SANDAL 85940 12.00 968950 SANDAL 85909 10.00 869506 SANDAL 89690 15.00 809090 LOAFER 89098 10.00 890890 LOAFER 89789 14.00 857689 HEEL 85940 11.00 758960 SANDAL 86979 11.00 You query the database and return the value 40. Which script did you use? Mark for Review (1) Points SELECT INSTR(category, 2,2) FROM styles WHERE style_id = 895840; SELECT INSTR(category, -2,2) FROM styles WHERE style_id = 895840; SELECT SUBSTR(category, 2,2) FROM styles WHERE style_id = 895840; (*) SELECT SUBSTR(category, -2,2) FROM styles WHERE style_id = 758960;

Correct You issue this SQL statement:

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT INSTR ('organizational sales', 'al') FROM dual; Which value is returned by this command? Mark for Review (1) Points 1 2 13 (*) 17 Correct 6. You need to display the number of characters in each customer's last name. Which function should you use? Mark for Review (1) Points LENGTH (*) LPAD COUNT SUBSTR Correct 7. What will the following SQL statemtent display? SELECT last_name, LPAD(salary, 15, '$')SALARY FROM employees; Mark for Review (1) Points The last name of employees that have a salary that includes a $ in the value, size of 15 and the column labeled SALARY. The last name and the format of the salary limited to 15 digits to the left of the decimal and the column labeled SALARY.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

The last name and salary for all employees with the format of the salary 15 characters long, left-padded with the $ and the column labeled SALARY. (*) The query will result in an error: "ORA-00923: FROM keyword not found where expected." Correct . You issue this SQL statement: SELECT ROUND (1282.248, -2) FROM dual; What value does this statement produce? Mark for Review (1) Points 1200 1282 1282.25 1300 (*) Correct 9. Evaluate this function: MOD (25, 2) Which value is returned? Mark for Review (1) Points 1 (*) 2 25 0 Correct 10. Which comparison operator retrieves a list of values? Mark for Review (1) Points IN (*) LIKE

This watermark does not appear in the registered version - http://www.clicktoconvert.com

BETWEEN...IN... IS NULL Incorrect. Refer to Section 1 Lesson 1 11. Which function would you use to return the current database server date and time? Mark for Review (1) Points DATE SYSDATE (*) DATETIME CURRENTDATE Correct 12. You need to display the number of months between today's date and each employee's hiredate. Which function should you use? Mark for Review (1) Points ROUND BETWEEN ADD_MONTHS MONTHS_BETWEEN (*) Correct 13. You need to subtract three months from the current date. Which function should you use? Mark for Review (1) Points ROUND TO_DATE ADD_MONTHS (*) MONTHS_BETWEEN

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Incorrect. Refer to Section 1 14. Which of the following Date Functions will add calendar months to a date? Mark for Review (1) Points Months + Calendar (Month) ADD_MONTHS (*) MONTHS + Date NEXT_MONTH Correct 15. Evaluate this SELECT statement: SELECT SYSDATE + 30 FROM dual; Which value is returned by the query? Mark for Review (1) Points the current date plus 30 hours the current date plus 30 days (*) the current date plus 30 months No value is returned because the SELECT statement generates an error. Incorrect. Refer to Section 1 16. Which SQL Statement should you use to display the prices in this format: "$00.30"? Mark for Review (1) Points SELECT TO_CHAR(price, '$99,900.99') FROM product; (*) SELECT TO_CHAR(price, "$99,900.99") FROM product; SELECT TO_CHAR(price, '$99,990.99') FROM product;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT TO_NUMBER(price, '$99,900.99') FROM product; Correct 17. All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a report that displays each employee's name and salary. Each employee's salary must be displayed in the following format: $000,000.00. Which function should you include in a SELECT statement to achieve the desired result? Mark for Review (1) Points TO_CHAR (*) TO_DATE TO_NUMBER CHARTOROWID Incorrect. Refer to Section 2 18. The EMPLOYEES table contains these columns: EMPLOYEE_ID NUMBER(9) LAST_NAME VARCHAR2 (25) FIRST_NAME VARCHAR2 (25) HIRE_DATE DATE You need to display HIRE_DATE values in this format: January 28, 2000 Which SELECT statement could you use? Mark for Review (1) Points SELECT TO_CHAR(hire_date, Month DD, YYYY) FROM employees; SELECT TO_CHAR(hire_date, 'Month DD, YYYY') FROM employees; (*) SELECT hire_date(TO_CHAR 'Month DD', ' YYYY')

This watermark does not appear in the registered version - http://www.clicktoconvert.com

FROM employees; SELECT TO_CHAR(hire_date, 'Month DD', ' YYYY') FROM employees;

Incorrect. Refer to Section 2 19. Which two statements concerning SQL functions are true? (Choose two.) Mark for Review (1) Points (Choose all correct answers) Character functions can accept numeric input. Not all date functions return date values. (*) Number functions can return number or character values. Conversion functions convert a value from one data type to another data type. (*) Single-row functions manipulate groups of rows to return one result per group of rows. Incorrect. Refer to Section 2 20. The EMPLOYEES table contains these columns: EMPLOYEE_ID NUMBER(9) LAST_NAME VARCHAR2 (25) FIRST_NAME VARCHAR2 (25) SALARY NUMBER(6) You need to create a report to display the salaries of all employees. Which script should you use to display the salaries in format: "$45,000.00"? Mark for Review (1) Points SELECT TO_CHAR(salary, '$999,999') FROM employees; SELECT TO_NUM(salary, '$999,990.99') FROM employees;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT TO_NUM(salary, '$999,999.00') FROM employees; SELECT TO_CHAR(salary, '$999,999.00') FROM employees; (*)

Incorrect. Refer to Section 2 21. If you use the RR format when writing a query using the date 27-OCT-17 and the year is 2001, what year would be the result? Mark for Review (1) Points 2001 1901 2017 (*) 1917 Correct 22. Which of the following General Functions will return the first non-null expression in the expression list? Mark for Review (1) Points NVL NVL2 NULLIF COALESCE (*) Correct 23. When executed, which statement displays a zero if the TUITION_BALANCE value is zero and the HOUSING_BALANCE value is null? Mark for Review (1) Points SELECT NVL (tuition_balance + housing_balance, 0) "Balance Due" FROM student_accounts;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

(*) SELECT NVL(tuition_balance, 0), NVL (housing_balance), tuition_balance + housing_balance "Balance Due" FROM student_accounts; SELECT tuition_balance + housing_balance FROM student_accounts; SELECT TO_NUMBER(tuition_balance, 0), TO_NUMBER (housing_balance, 0), tutition_balance + housing_balance "Balance Due" FROM student_accounts;

Incorrect. Refer to Section 2 24. Which statement about group functions is true? Mark for Review (1) Points NVL and NVL2, but not COALESCE, can be used with group functions to replace null values. NVL and COALESCE, but not NVL2, can be used with group functions to replace null values. NVL, NVL2, and COALESCE can be used with group functions to replace null values. (*) COALESCE, but not NVL and NVL2, can be used with group functions to replace null values. Correct 25. When joining 3 tables in a SELECT statement, how many join conditions are needed in the WHERE clause? Mark for Review (1) Points 0 1 2 (*) 3

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Correct 26. You need to create a report that lists all employees in the Sales department who do not earn $25,000 per year. Which query should you issue to accomplish this task? Mark for Review (1) Points SELECT last_name, first_name, salary FROM employees WHERE salary > 25000 AND dept_id = 10; SELECT last_name, first_name, salary FROM employees WHERE salary = 25000 AND dept_id = 10; SELECT last_name, first_name, salary FROM employees WHERE salary <= 25000 AND dept_id = 10; SELECT last_name, first_name, salary FROM employees WHERE salary != 25000 AND dept_id = 10; (*)

Correct 27. The CUSTOMERS and SALES tables contain these columns: CUSTOMERS CUST_ID NUMBER(10) PRIMARY KEY COMPANY VARCHAR2(30) LOCATION VARCHAR2(20) SALES SALES_ID NUMBER(5) PRIMARY KEY CUST_ID NUMBER(10) FOREIGN KEY TOTAL_SALES NUMBER(30) Which SELECT statement will return the customer ID, the company and the total sales? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT c.cust_id, c.company, s.total_sales FROM customers c, sales s WHERE c.cust_id = s.cust_id (+); SELECT cust_id, company, total_sales FROM customers, sales WHERE cust_id = cust_id; SELECT c.cust_id, c.company, s.total_sales FROM customers c, sales s WHERE c.cust_id = s.cust_id; (*) SELECT cust_id, company, total_sales FROM customers c, sales s WHERE c.cust_id = s.cust_id;

Correct 28. Your have two tables named EMPLOYEES and SALES. You want to identify the sales representatives who have generated at least $100,000 in revenue. Which query should you issue? Mark for Review (1) Points SELECT e.fname, e.lname, s.sales FROM employees e, sales s WHERE e.emp_id = s.emp_id AND revenue > 100000; SELECT e.fname, e.lname, s.sales FROM employees e, sales s WHERE e.emp_id = s.emp_id AND revenue >= 100000; (*) SELECT e.fname, e.lname, s.sales FROM employees, sales WHERE e.emp_id = s.emp_id AND revenue >= 100000; SELECT fname, lname, sales Q FROM employees e, sales s WHERE e.emp_id = s.emp_id AND revenue > 100000;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Correct 29. What happens when you create a Cartesian product? Mark for Review (1) Points All rows from one table are joined to all rows of another table (*) The table is joined to itself, one column to the next column, exhausting all possibilities The table is joined to another equal table All rows that do not match in the WHERE clause are displayed Incorrect. Refer to Section 30. Which statement about the join syntax of a SELECT statement is true? Mark for Review (1) Points The ON keyword must be included. The JOIN keyword must be included. The FROM clause represents the join criteria. The WHERE clause represents the join criteria. (*) Incorrect. Refer to Section 3 31. Which statement about outer joins is true? Mark for Review (1) Points The tables must be aliased. The FULL, RIGHT, or LEFT keyword must be included. The OR operator cannot be used to link outer join conditions. (*) Outer joins are always evaluated before other types of joins in the query. Correct 32. Evaluate this SELECT statement: SELECT p.player_id, m.last_name, m.first_name, t.team_name FROM player p

This watermark does not appear in the registered version - http://www.clicktoconvert.com

LEFT OUTER JOIN player m ON (p.manager_id = m.player_id) LEFT OUTER JOIN team t ON (p.team_id = t.team_id); Which join is evaluated first? Mark for Review (1) Points the self-join of the player table (*) the join between the player table and the team table on TEAM_ID the join between the player table and the team table on MANAGER_ID the join between the player table and the team table on PLAYER_ID Correct 33. Which two operators can be used in an outer join condition using the outer join operator (+)? Mark for Review (1) Points AND and = (*) OR and = BETWEEN...AND... and IN IN and = Incorrect. Refer to Section 3 34. Which statement about a natural join is true? Mark for Review (1) Points Columns with the same names must have identical data types. Columns with the same names must have the same precision and datatype. (*) Columns with the same names must have compatible data types. Columns with the same names cannot be included in the SELECT list of the query. Incorrect. Refer to Section 4 35. You need to join all the rows in the EMPLOYEE table to all the rows in the EMP_REFERENCE table. Which type of join should you create? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

An equijoin A cross join (*) An inner join A full outer join Incorrect. Refer to Section 4 36. Which of the following best describes a natural join? Mark for Review (1) Points A join between two tables that includes columns that share the same name, datatypes and lengths (*) A join that produces a Cartesian product A join between tables where matching fields do not exist A join that uses only one table Correct 37. Which SELECT clause creates an equijoin by specifying a column name common to both tables? Mark for Review (1) Points A HAVING clause The FROM clause The SELECT clause A USING clause (*) Correct 38. Which of the following statements is the simplest description of a nonequijoin? Mark for Review (1) Points A join condition containing something other than an equality operator (*) A join condition that is not equal to other joins.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

A join condition that includes the (+) on the left hand side. A join that joins a table to itself Incorrect. Refer to Section 4 39. You created the CUSTOMERS and ORDERS tables by issuing these CREATE TABLE statements in sequence: CREATE TABLE customers (custid varchar2(5), companyname varchar2(30), contactname varchar2(30), address varchar2(30), city varchar2(20), state varchar2(30), phone varchar2(20), constraint pk_customers_01 primary key (custid)); CREATE TABLE orders (orderid varchar2(5) constraint pk_orders_01 primary key, orderdate date, total number(15), custid varchar2(5) references customers (custid)); You have been instructed to compile a report to present the information about orders placed by customers who reside in Nashville . Which query should you issue to achieve the desired results? Mark for Review (1) Points SELECT custid, companyname FROM customers WHERE city = 'Nashville'; SELECT orderid, orderdate, total FROM orders o NATURAL JOIN customers c ON o.custid = c.custid WHERE city = 'Nashville'; SELECT orderid, orderdate, total FROM orders o JOIN customers c ON o.custid = c.custid WHERE city = 'Nashville'; (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT orderid, orderdate, total FROM orders WHERE city = 'Nashville';

Correct 40. Below find the structure of the CUSTOMERS and SALES_ORDER tables: CUSTOMERS CUSTOMER_ID NUMBER NOT NULL, Primary Key CUSTOMER_NAME VARCHAR2 (30) CONTACT_NAME VARCHAR2 (30) CONTACT_TITLE VARCHAR2 (20) ADDRESS VARCHAR2 (30) CITY VARCHAR2 (25) REGION VARCHAR2 (10) POSTAL_CODE VARCHAR2 (20) COUNTRY_ID NUMBER Foreign key to COUNTRY_ID column of the COUNTRY table PHONE VARCHAR2 (20) FAX VARCHAR2 (20) CREDIT_LIMIT NUMBER(7,2) SALES_ORDER ORDER_ID NUMBER NOT NULL, Primary Key CUSTOMER_ID NUMBER Foreign key to CUSTOMER_ID column of the CUSTOMER table ORDER_DT DATE ORDER_AMT NUMBER (7,2) SHIP_METHOD VARCHAR2 (5) You need to create a report that displays customers without a sales order. Which statement could you use? Mark for Review (1) Points SELECT c.customer_name FROM customers c WHERE c.customer_id not in (SELECT s.customer_id FROM sales_order s); (*) SELECT c.customer_name FROM customers c, sales_order s WHERE c.customer_id = s.customer_id(+);

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT c.customer_name FROM customers c, sales_order s WHERE c.customer_id (+) = s.customer_id; SELECT c.customer_name FROM customers c RIGHT OUTER JOIN sales_order s ON (c.customer_id = s.customer_id);

Incorrect. Refer to Section 4 41. Which query will retrieve all the rows in the EMPLOYEES table, even if there is no match in the DEPARTMENTS table? Mark for Review (1) Points SELECT e.last_name, e.department_id, d.department_name FROM employees e RIGHT OUTER JOIN departments d ON (e.department_id = d.department_id); SELECT e.last_name, e.department_id, d.department_name FROM employees e NATURAL JOIN departments d; SELECT e.last_name, e.department_id, d.department_name FROM employees e LEFT OUTER JOIN departments d ON (e.department_id = d.department_id); (*) SELECT e.last_name, e.department_id, d.department_name FROM employees e JOIN departments d USING (e.department_id = d.department_id);

Incorrect. Refer to Section 4 42. Which two sets of join keywords create a join that will include unmatched rows from the first table specified in the SELECT statement? Mark for Review (1) Points LEFT OUTER JOIN and FULL OUTER JOIN (*) RIGHT OUTER JOIN and LEFT OUTER JOIN

This watermark does not appear in the registered version - http://www.clicktoconvert.com

USING and HAVING OUTER JOIN and USING Incorrect. Refer to Section 4 43. What should be included in a SELECT statement to return NULL values from all tables? Mark for Review (1) Points natural joins left outer joins full outer joins (*) right outer joins Incorrect. Refer to Section 4 44. If a select list contains both a column as well as a group function then what clause is required? Mark for Review (1) Points having clause join clause order by clause group by clause (*) Incorrect. Refer to Section 5 45. Evaluate this SELECT statement: SELECT MAX(salary), dept_id FROM employee GROUP BY dept_id; Which values are displayed? Mark for Review (1) Points The highest salary for all employees. The highest salary in each department. (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

The employees with the highest salaries. The employee with the highest salary for each department. Incorrect. Refer to Section 5 46. Which statement about group functions is true? Mark for Review (1) Points Group functions ignore null values. (*) Group functions can only be used in a SELECT list. Group functions can be used in a WHERE clause. A query that includes a group function in the SELECT list must include a GROUP BY clause. Incorrect. Refer to Section 5 47. What is the best explanation as to why this SQL statement will NOT execute? SELECT department_id "Department", AVG (salary)"Average" FROM employees GROUP BY Department; Mark for Review (1) Points Salaries cannot be averaged as not all the numbers will divide evenly. You cannot use a column alias in the GROUP BY clause. (*) The GROUP BY clause must have something to GROUP. The department id is not listed in the departments table. Incorrect. Refer to Section 5 48. The AVG, SUM, VARIANCE, and STDDEV functions can be used with which of the following? Mark for Review (1) Points Only numeric data types (*) Integers only Any data type

This watermark does not appear in the registered version - http://www.clicktoconvert.com

All except numeric Correct 49. Examine the data in the PAYMENT table: PAYMENT_ID CUSTOMER_ID PAYMENT_DATE PAYMENT_TYPE PAYMENT_AMOUNT 86590586 8908090 10-JUN-03 BASIC 859.00 89453485 8549038 15-FEB-03 INTEREST 596.00 85490345 5489304 20-MAR-03 BASIC 568.00 You need to determine the average payment amount made by each customer in January, February and March of 2003. Which SELECT statement should you use? Mark for Review (1) Points SELECT AVG(payment_amount) FROM payment WHERE payment_date BETWEEN '01-JAN-2003' AND '31-MAR-2003'; (*) SELECT AVG(payment_amount) FROM payment; SELECT SUM(payment_amount) FROM payment WHERE payment_date BETWEEN '01-JAN-2003' and '31-MAR-2003'; SELECT AVG(payment_amount) FROM payment WHERE TO_CHAR(payment_date) IN (JAN, FEB, MAR);

Correct 50. You need to calculate the standard deviation for the cost of products produced in the Birmingham facility. Which group function will you use? Mark for Review (1) Points STDEV STDDEV (*) VAR_SAMP

This watermark does not appear in the registered version - http://www.clicktoconvert.com

VARIANCE Incorrect. Refer to Section 5 51. The VENDORS table contains these columns: VENDOR_ID NUMBER Primary Key NAME VARCHAR2(30) LOCATION_ID NUMBER ORDER_DT DATE ORDER_AMOUNT NUMBER(8,2) Which two clauses represent valid uses of aggregate functions for this table? Mark for Review (1) Points (Choose all correct answers) FROM MAX(order_dt) SELECT SUM(order_dt) SELECT SUM(order_amount) (*) WHERE MAX(order_dt) = order_dt SELECT location_id, MIN(AVG(order_amount)) (*) Incorrect. Refer to Section 5 52. Which group function would you use to display the lowest value in the SALES_AMOUNT column? Mark for Review (1) Points AVG COUNT MAX MIN (*) Incorrect. Refer to Section 5 53. You need to calculate the average salary of employees in each department. Which group function will you use? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

AVG (*) MEAN MEDIAN AVERAGE Correct 54. Which group functions below act on character, number and date data types? (Choose more than one answer) Mark for Review (1) Points (Choose all correct answers) SUM MAX (*) MIN (*) AVG COUNT (*) Correct 55. The PRODUCTS table contains these columns: PROD_ID NUMBER(4) PROD_NAME VARCHAR2(30) PROD_CAT VARCHAR2(30) PROD_PRICE NUMBER(3) PROD_QTY NUMBER(4) The following statement is issued: SELECT AVG(prod_price, prod_qty) FROM products; What happens when this statement is issued? Mark for Review (1) Points Both the average price and the average quantity of the products are returned.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Only the average quantity of the products is returned. The values in the PROD_PRICE column and the PROD_QTY column are averaged together. An error occurs. (*) Incorrect. Refer to Section 5 56. The STYLES table contains this data: STYLE_ID STYLE_NAME CATEGORY COST 895840 SANDAL 85940 12.00 968950 SANDAL 85909 10.00 869506 SANDAL 89690 15.00 809090 LOAFER 89098 10.00 890890 LOAFER 89789 14.00 857689 HEEL 85940 11.00 758960 SANDAL 86979 You issue this SELECT statement: SELECT COUNT(category) FROM styles; Which value is displayed? Mark for Review (1) Points 0 6 7 (*) The statement will NOT execute successfully. Incorrect. Refer to Section 5 57. Examine the data from the LINE_ITEM table: LINE_ITEM_ID ORDER_ID PRODUCT_ID PRICE DISCOUNT 890898 847589 848399 8.99 0.10 768385 862459 849869 5.60 0.05 867950 985490 945809 5.60 954039 439203 438925 5.25 0.15 543949 349302 453235 4.50

This watermark does not appear in the registered version - http://www.clicktoconvert.com

You query the LINE_ITEM table and a value of 5 is returned. Which SQL statement did you execute? Mark for Review (1) Points SELECT COUNT(discount) FROM line_item; SELECT COUNT(*) FROM line_item; (*) SELECT SUM(discount) FROM line_item; SELECT AVG(discount) FROM line_item; Incorrect. Refer to Section 5 58. Group functions can avoid computations involving duplicate values by including which keyword? Mark for Review (1) Points NULL DISTINCT (*) SELECT UNLIKE Incorrect. Refer to Section 5 59. Evaluate this SELECT statement: SELECT COUNT(*) FROM products; Which statement is true? Mark for Review (1) Points The number of rows in the table is displayed. (*) The number of unique PRODUCT_IDs in the table is displayed. An error occurs due to an error in the SELECT clause. An error occurs because no WHERE clause is included in the SELECT statement. Incorrect. Refer to Section 5

This watermark does not appear in the registered version - http://www.clicktoconvert.com

60. The PLAYERS table contains these columns: PLAYER_ID NUMBER PK PLAYER_NAME VARCHAR2 (30) TEAM_ID NUMBER HIRE_DATE DATE SALARY NUMBER (8,2) Which two clauses represent valid uses of aggregate functions? (Choose three.) Mark for Review (1) Points (Choose all correct answers) ORDER BY AVG(salary) GROUP BY MAX(salary) (*) SELECT AVG(NVL(salary, 0)) (*) HAVING MAX(salary) > 10000 (*) WHERE hire_date > AVG(hire_date) Incorrect. Refer to Section 6 61. The MANUFACTURER table contains these columns: MANUFACTURER_ID NUMBER MANUFACTURER_NAME VARCHAR2(30) TYPE VARCHAR2(25) LOCATION_ID NUMBER You need to display the number of unique types of manufacturers at each location. Which SELECT statement should you use? Mark for Review (1) Points SELECT location_id, COUNT(DISTINCT type) FROM manufacturer GROUP BY location_id; (*) SELECT location_id, COUNT(DISTINCT type) FROM manufacturer; SELECT location_id, COUNT(type) FROM manufacturer

This watermark does not appear in the registered version - http://www.clicktoconvert.com

GROUP BY location_id; SELECT location_id, COUNT(DISTINCT type) FROM manufacturer GROUP BY type;

Correct 62. What is the correct order of clauses in a SELECT statement? Mark for Review (1) Points SELECT FROM WHERE ORDER BY HAVING SELECT FROM HAVING GROUP BY WHERE ORDER BY SELECT FROM WHERE GROUP BY HAVING ORDER BY (*) SELECT FROM WHERE HAVING ORDER BY GROUP BY

Correct 63. The PRODUCTS table contains these columns:

This watermark does not appear in the registered version - http://www.clicktoconvert.com

PROD_ID NUMBER(4) PROD_NAME VARCHAR(20) PROD_CAT VARCHAR2(15) PROD_PRICE NUMBER(5) PROD_QTY NUMBER(4) You need to identify the minimum product price in each product category. Which statement could you use to accomplish this task? Mark for Review (1) Points SELECT prod_cat, MIN (prod_price) FROM products GROUP BY prod_price; SELECT prod_cat, MIN (prod_price) FROM products GROUP BY prod_cat; (*) SELECT MIN (prod_price), prod_cat FROM products GROUP BY MIN (prod_price), prod_cat; SELECT prod_price, MIN (prod_cat) FROM products GROUP BY prod_cat;

Correct 64. The EMPLOYEES table contains these columns: ID_NUMBER NUMBER Primary Key NAME VARCHAR2 (30) DEPARTMENT_ID NUMBER SALARY NUMBER (7,2) HIRE_DATE DATE Evaluate this SQL statement: SELECT id_number, name, department_id, SUM(salary) FROM employees WHERE salary > 25000 GROUP BY department_id, id_number, name ORDER BY hire_date;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Why will this statement cause an error? Mark for Review (1) Points The HAVING clause is missing. The WHERE clause contains a syntax error. The SALARY column is NOT included in the GROUP BY clause. The HIRE_DATE column is NOT included in the GROUP BY clause. (*) Correct 65. Evaluate this SELECT statement: SELECT SUM(salary), dept_id, department_name FROM employee WHERE dept_id = 1 GROUP BY department; Which clause of the SELECT statement contains a syntax error? Mark for Review (1) Points SELECT FROM WHERE GROUP BY (*) Incorrect. Refer to Section 66. The PLAYERS and TEAMS tables contain these columns: PLAYERS PLAYER_ID NUMBER NOT NULL, Primary Key LAST_NAME VARCHAR2 (30) NOT NULL FIRST_NAME VARCHAR2 (25) NOT NULL TEAM_ID NUMBER POSITION VARCHAR2 (25) TEAMS TEAM_ID NUMBER NOT NULL, Primary Key TEAM_NAME VARCHAR2 (25) You need to create a report that lists the names of each team with more than five pitchers.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Which SELECT statement will produce the desired result? Mark for Review (1) Points SELECT t.team_name, COUNT(p.player_id) FROM players p, teams t ON (p.team_id = t.team_id) WHERE UPPER(p.position) = 'PITCHER' GROUP BY t.team_name; SELECT t.team_name, COUNT(p.player_id) FROM players JOIN teams t ON (p.team_id = t.team_id) WHERE UPPER(p.position) = 'PITCHER' HAVING COUNT(p.player_id) > 5; SELECT t.team_name, COUNT(p.player_id) FROM players p, teams t ON (p.team_id = t.team_id) WHERE UPPER(p.position) = 'PITCHER' GROUP BY t.team_name HAVING COUNT(p.player_id) > 5; SELECT t.team_name, COUNT(p.player_id) FROM players p JOIN teams t ON (p.team_id = t.team_id) WHERE UPPER(p.position) = 'PITCHER' GROUP BY t.team_name HAVING COUNT(p.player_id) > 5; (*)

Incorrect. Refer to Section 6 67. Which statement about the GROUP BY clause is true? Mark for Review (1) Points To exclude rows before dividing them into groups using the GROUP BY clause, you use should a WHERE clause. (*) You can use a column alias in a GROUP BY clause. By default, rows are not sorted when a GROUP BY clause is used. You must use the HAVING clause with the GROUP BY clause. Incorrect. Refer to Section 6 68. Using a subquery in which clause will return a syntax error? Mark for Review (1) Points WHERE

This watermark does not appear in the registered version - http://www.clicktoconvert.com

FROM HAVING There are no places you cannot place subqueries. (*) Incorrect. Refer to Section 6 69. Which of the following is TRUE regarding the order of subquery execution? Mark for Review (1) Points The outer query is executed first The subquery executes once after the main query The subquery executes once before the main query (*) The result of the main query is used with the subquery Correct 70. The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns: TEACHERS TEACHER_ID NUMBER(5) Primary Key NAME VARCHAR2 (25) SUBJECT_ID NUMBER(5) CLASS_ASSIGNMENTS CLASS_ID NUMBER (5) Primary Key TEACHER_ID NUMBER (5) START_DATE DATE MAX_CAPACITY NUMBER (3) All MAX_CAPACITY values are greater than 10. Which two SQL statements correctly use subqueries? (Choose two.) Mark for Review (1) Points (Choose all correct answers) SELECT * FROM class_assignments WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments); (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT * FROM teachers WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE class_id = 45963); (*) SELECT * FROM teachers WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0); SELECT * FROM teachers WHERE teacher_id LIKE (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0); SELECT * FROM class_assignments WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments GROUP BY teacher_id);

Incorrect. Refer to Section 6 71. The EMPLOYEES and ORDERS tables contain these columns: EMPLOYEES EMP_ID NUMBER(10) NOT NULL PRIMARY KEY FNAME VARCHAR2(30) LNAME VARCHAR2(30) ADDRESS VARCHAR2(25) CITY VARCHAR2(20) STATE VARCHAR2(2) ZIP NUMBER(9) TELEPHONE NUMBER(10) ORDERS ORDER_ID NUMBER(10) NOT NULL PRIMARY KEY EMP_ID NUMBER(10) NOT NULL FOREIGN KEY ORDER_DATE DATE TOTAL NUMBER(10) Which SELECT statement will return all orders generated by a sales representative named Franklin during the year 2001? Mark for Review

This watermark does not appear in the registered version - http://www.clicktoconvert.com

(1) Points SELECT order_id, total FROM ORDERS (SELECT emp_id FROM employees WHERE lname = 'Franklin') WHERE order_date BETWEEN '01-jan-01' AND '31-dec-01'; SELECT (SELECT emp_id FROM employees WHERE lname = 'Franklin') AND order_id, total FROM ORDERS WHERE order_date BETWEEN '01-jan-01' AND '31-dec-01'; SELECT order_id, emp_id, total FROM ORDERS WHERE order_date BETWEEN '01-jan-01' AND '31-dec-01' AND emp_id = 'Franklin'; SELECT order_id, total FROM ORDERS WHERE emp_id = (SELECT emp_id FROM employees WHERE lname = 'Franklin') AND order_date BETWEEN '01-jan-01' AND '31-dec-01'; (*)

Correct 72. the structures of the CUSTOMER and ORDER_HISTORY tables: CUSTOMER CUSTOMER_ID NUMBER(5) NAME VARCHAR2(25) CREDIT_LIMIT NUMBER(8,2) OPEN_DATE DATE ORDER_HISTORY ORDER_ID NUMBER(5) CUSTOMER_ID NUMBER(5) ORDER_DATE DATE TOTAL NUMBER(8,2) Which of the following scenarios would require a subquery to return the desired results? Mark for Review (1) Points You need to display the date each customer account was opened.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

You need to display each date that a customer placed an order. You need to display all the orders that were placed on a certain date. You need to display all the orders that were placed on the same day as order number 25950. (*) Incorrect. Refer to Section 6 73. You need to produce a report that contains all employee-related information for those employees who have Brad Carter as a supervisor. However, you are not sure which supervisor ID belongs to Brad Carter. Which query should you issue to accomplish this task? Mark for Review (1) Points SELECT * FROM employees WHERE supervisor_id = (SELECT supervisor_id FROM employees WHERE last_name = 'Carter'); SELECT * FROM supervisors WHERE supervisor_id = (SELECT supervisor_id FROM employees WHERE last_name = 'Carter'); SELECT * FROM supervisors WHERE supervisor_id = (SELECT employee_id FROM supervisors WHERE last_name = 'Carter'); SELECT * FROM employees WHERE supervisor_id = (SELECT employee_id FROM employees WHERE last_name = 'Carter'); (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Incorrect. Refer to Section 6 74. If a single-row subquery returns a null value and uses the equality comparison operator, what will the outer query return? Mark for Review (1) Points no rows (*) all the rows in the table a null value an error Incorrect. Refer to Section 6 75. Which best describes a single-row subquery? Mark for Review (1) Points a query that returns only one row from the inner SELECT statement (*) a query that returns one or more rows from the inner SELECT statement a query that returns only one column value from the inner SELECT statement a query that returns one or more column values from the inner SELECT statement Incorrect. Refer to Section 6 76. Which best describes a multiple-row subquery? Mark for Review (1) Points A query that returns only one row from the inner SELECT statement A query that returns one or more rows from the inner SELECT statement (*) A query that returns only one column value from the inner SELECT statement A query that returns one or more column values from the inner SELECT statement Incorrect. Refer to Section 6 77. Which of the following statements contains a comparison operator that is used to restrict rows based on a list of values returned from an inner query? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT description FROM d_types WHERE code IN (SELECT type_code FROM d_songs); SELECT description FROM d_types WHERE code = ANY (SELECT type_code FROM d_songs); SELECT description FROM d_types WHERE code <> ALL (SELECT type_code FROM d_songs); All of the above. (*) Incorrect. Refer to Section 6 78. Evaluate this SELECT statement: SELECT customer_id, name FROM customer WHERE customer_id IN (SELECT customer_id FROM customer WHERE state_id = 'GA' AND credit_limit > 500.00); What would happen if the inner query returned null? Mark for Review (1) Points An error would be returned. No rows would be returned by the outer query. (*) All the rows in the table would be selected. Only the rows with CUSTOMER_ID values equal to null would be selected. Incorrect. Refer to Section 6 79. You need to create a SELECT statement that contains a multiple-row subquery, which comparison operator(s) can you use? Mark for Review (1) Points IN, ANY, and ALL (*) LIKE

This watermark does not appear in the registered version - http://www.clicktoconvert.com

BETWEEN...AND... =, <, and > Incorrect. Refer to Section 6 80. Which of the following best describes the meaning of the ANY operator? Mark for Review (1) Points Equal to any member in the list Compare value to each value returned by the subquery (*) Compare value to every value returned by the subquery Equal to each value in the list Correct 81. Which operator or keyword cannot be used with a multiple-row subquery? Mark for Review (1) Points ALL ANY = (*) > Incorrect. Refer 82. What would happen if you attempted to use a single-row operator with a multiple-row subquery? Mark for Review (1) Points An error would be returned. (*) No rows will be selected. All the rows will be selected. The data returned may or may not be correct.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Incorrect. Refer to Section 6 83. Evaluate this SQL statement: SELECT employee_id, last_name, salary FROM employees WHERE department_id IN (SELECT department_id FROM employees WHERE salary > 30000 AND salary < 50000); Which values will be displayed? Mark for Review (1) Points Only employees who earn more than $30,000. Only employees who earn less than $50,000. All employees who work in a department with employees who earn more than $30,000 and more than $50,000. All employees who work in a department with employees who earn more than $30,000, but less than $50,000. (*) Correct 84. Examine the data in the PAYMENT table: PAYMENT_ID CUSTOMER_ID PAYMENT_DATE PAYMENT_TYPE PAYMENT_AMOUNT 86590586 8908090 10-JUN-03 BASIC 859.00 89453485 8549038 15-FEB-03 INTEREST 596.00 85490345 5489304 20-MAR-03 BASIC 568.00 This statement fails when executed: SELECT customer_id, payment_type FROM payment WHERE payment_id = (SELECT payment_id FROM payment WHERE payment_amount = 596.00 OR payment_date = '20-MAR-2003'); Which change could correct the problem? Mark for Review (1) Points Change the outer query WHERE clause to 'WHERE payment_id IN'. (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Remove the quotes surrounding the date value in the OR clause. Remove the parentheses surrounding the nested SELECT statement. Change the comparison operator to a single-row operator. Incorrect. Refer to Section 6 85. What is wrong with the following query? SELECT employee_id, last_name FROM employees WHERE salary = (SELECT MIN(salary) FROM employees GROUP BY department_id); Mark for Review (1) Points Single rows contain multiple values and a logical operator is used. Subquery returns more than one row and single row comparison operator is used. (*) Subquery references the wrong table in the WHERE clause. Nothing, it will run without problems. Incorrect. Refer to Section 6 86. Examine the data in the PAYMENT table: PAYMENT_ID CUSTOMER_ID PAYMENT_DATE PAYMENT_TYPE PAYMENT_AMOUNT 86590586 8908090 10-JUN-03 BASIC 859.00 89453485 8549038 15-FEB-03 INTEREST 596.00 85490345 5489304 20-MAR-03 BASIC 568.00 This statement fails when executed: SELECT payment_date, customer_id, payment_amount FROM payment WHERE payment_id = (SELECT payment_id FROM payment WHERE payment_date >= '05-JAN-2002' OR payment_amount > 500.00); Which change could correct the problem?

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Mark for Review (1) Points Remove the subquery WHERE clause. Change the outer query WHERE clause to 'WHERE payment_id IN'. (*) Include the PAYMENT_ID column in the select list of the outer query. Remove the single quotes around the date value in the inner query WHERE clause. Incorrect. Refer to Section 6 87. Assume all the column names are correct. The following SQL statement will execute which of the following? INSERT INTO departments (department_id, department_name, manager_id, location_id) VALUES (70, 'Public Relations', 100, 1700); Mark for Review (1) Points 100 will be inserted into the department_id column 1700 will be inserted into the manager_id column 70 will be inserted into the department_id column (*) 'Public Relations' will be inserted into the manager_name column Incorrect. Refer to Section 7 88. You need to add a row to an existing table. Which DML statement should you use? Mark for Review (1) Points UPDATE INSERT (*) DELETE CREATE Incorrect. Refer 89. The PRODUCTS table contains these columns:

This watermark does not appear in the registered version - http://www.clicktoconvert.com

PRODUCT_ID NUMBER NOT NULL PRODUCT_NAME VARCHAR2 (25) SUPPLIER_ID NUMBER NOT NULL LIST_PRICE NUMBER (7,2) COST NUMBER (5,2) QTY_IN_STOCK NUMBER(4) LAST_ORDER_DT DATE NOT NULL DEFAULT SYSDATE Which INSERT statement will execute successfully? Mark for Review (1) Points INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, 700); (*) INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, SYSDATE); INSERT INTO products(product_id, product_name) VALUES (2958, 'Cable'); INSERT INTO products(product_id, product_name, supplier_id VALUES (2958, 'Cable', 8690, SYSDATE); Incorrect. Refer to Section 7 90. You need to copy rows from the EMPLOYEE table to the EMPLOYEE_HIST table. What could you use in the INSERT statement to accomplish this task? Mark for Review (1) Points an ON clause a SET clause a subquery (*) a function Correct 91. One of the sales representatives, Janet Roper, has informed you that she was recently married, and she has requested that you update her name in the employee database. Her new last name is Cooper. Janet is the only person with the last name of Roper that is employed by the company. The EMPLOYEES table contains these columns and all data is stored in lowercase: EMP_ID NUMBER(10) PRIMARY KEY LNAME VARCHAR2(20) FNAME VARCHAR2(20)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

DEPT VARCHAR2 (20) HIRE_DATE DATE SALARY NUMBER(10) Which UPDATE statement will accomplish your objective? Mark for Review (1) Points UPDATE employees SET lname = 'cooper' WHERE lname = 'roper'; (*) UPDATE employees lname = 'cooper' WHERE lname = 'roper'; UPDATE employees SET lname = 'roper' WHERE lname = 'cooper'; UPDATE employees SET cooper = 'lname' WHERE lname = 'roper';

Incorrect. Refer to Section 7 92. You need to remove a row from the EMPLOYEE table. Which statement would you use? Mark for Review (1) Points UPDATE with a WHERE clause INSERT with a WHERE clause DELETE with a WHERE clause (*) MERGE with a WHERE clause Correct 93. Examine the structures of the PLAYERS, MANAGERS, and TEAMS tables: PLAYERS PLAYER_ID NUMBER Primary Key LAST_NAME VARCHAR2 (30)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

FIRST_NAME VARCHAR2 (25) TEAM_ID NUMBER MGR_ID NUMBER SIGNING_BONUS NUMBER(9,2) SALARY NUMBER(9,2) MANAGERS MANAGER_ID NUMBER Primary Key LAST_NAME VARCHAR2 (20) FIRST_NAME VARCHAR2 (20) TEAM_ID NUMBER TEAMS TEAM_ID NUMBER Primary Key TEAM_NAME VARCHAR2 (20) OWNER_LAST_NAME VARCHAR2 (20) OWNER_FIRST_NAME VARCHAR2 (20) Which situation would require a subquery to return the desired result? Mark for Review (1) Points To display the names each player on the Lions team To display the maximum and minimum player salary for each team To display the names of the managers for all the teams owned by a given owner (*) To display each player, their manager, and their team name for all teams with a id value greater than 5000 Correct 94. The EMPLOYEES table contains the following columns: EMP_ID NUMBER(10) PRIMARY KEY LNAME VARCHAR2(20) FNAME VARCHAR2(20) DEPT VARCHAR2(20) HIRE_DATE DATE SALARY NUMBER(9,2) BONUS NUMBER(9,2) You want to execute one DML statement to change the salary of all employees in department 10 to equal the new salary of employee number 89898. Currently, all employees in department 10 have the same salary value. Which statement should you execute? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

UPDATE employee SET salary = SELECT salary FROM employee WHERE emp_id = 89898; UPDATE employee SET salary = (SELECT salary FROM employee WHERE emp_id = 89898); UPDATE employee SET salary = (SELECT salary FROM employee WHERE emp_id = 89898) WHERE dept = 10; (*) UPDATE employee SET salary = (SELECT salary FROM employee WHERE emp_id = 89898 AND dept = 10);

Incorrect. Refer to Section 7 95. Evaluate this statement: DELETE FROM customer; Which statement is true? Mark for Review (1) Points The statement deletes all the rows from the CUSTOMER table. (*) The statement deletes the CUSTOMER column. The statement deletes the first row in the CUSTOMERS table. The statement removes the structure of the CUSTOMER table from the database. Incorrect. Refer to Section 7 96. When the WHERE clause is missing in a DELETE statement, what is the result? Mark for Review (1) Points All rows are deleted from the table. (*) The table is removed from the database. An error message is displayed indicating incorrect syntax. Nothing. The statement will not execute.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Correct 97. The PLAYERS table contains these columns: PLAYER_ID NUMBER NOT NULL PLAYER_LNAME VARCHAR2(20) NOT NULL PLAYER_FNAME VARCHAR2(10) NOT NULL TEAM_ID NUMBER SALARY NUMBER(9,2) You need to increase the salary of each player for all players on the Tiger team by 12.5 percent. The TEAM_ID value for the Tiger team is 5960. Which statement should you use? Mark for Review (1) Points UPDATE players (salary) SET salary = salary * 1.125; UPDATE players SET salary = salary * .125 WHERE team_id = 5960; UPDATE players SET salary = salary * 1.125 WHERE team_id = 5960; (*) UPDATE players (salary) VALUES(salary * 1.125) WHERE team_id = 5960; Correct 98. You need to delete a record in the EMPLOYEES table for Tim Jones, whose unique employee identification number is 348. The EMPLOYEES table contains these columns: ID_NUM NUMBER(5) PRIMARY KEY LNAME VARCHAR2(20) FNAME VARCHAR2(20) ADDRESS VARCHAR2(30) PHONE NUMBER(10) Which DELETE statement will delete the appropriate record without deleting any additional records? Mark for Review (1) Points DELETE FROM employees WHERE id_num = 348; (*) DELETE FROM employees WHERE lname = jones; DELETE * FROM employees WHERE id_num = 348; DELETE 'jones' FROM employees;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Correct 99. You need to update the expiration date of products manufactured before June 30th . In which clause of the UPDATE statement will you specify this condition? Mark for Review (1) Points the ON clause the WHERE clause (*) the SET clause the USING clause Correct 100. You need to update both the DEPARTMENT_ID and LOCATION_ID columns in the EMPLOYEE table using one UPDATE statement. Which clause should you include in the UPDATE statement to update multiple columns? Mark for Review (1) Points the USING clause the ON clause the WHERE clause the SET clause (*) Correct 1. You need to display each employee's name in all uppercase letters. Which function should you use? (1) Points CASE

Mark for Review

UCASE UPPER (*) TOUPPER 2. You need to return a portion of each employee's last name, beginning with the first character up to the fifth character. Which character function should you use?

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Mark for Review (1) Points INSTR TRUNC SUBSTR (*)

3.

CONCAT Evaluate this SELECT statement:

SELECT LENGTH(email) FROM employee; What will this SELECT statement display? Mark for Review (1) Points The longest e- mail address in the EMPLOYEE table. The email address of each employee in the EMPLOYEE table. The number of characters for each value in the EMAIL column in the employees table. (*) The maximum number of characters allowed in the EMAIL column. 4. You need to display the number of characters in each customer's last name. Which function should you use? Mark for Review (1) Points LENGTH (*) LPAD COUNT SUBSTR 5. Which functions can be used to manipulate character, number, and date column values? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

CONCAT, RPAD, and TRIM (*) UPPER, LOWER, and INITCAP ROUND, TRUNC, and MOD ROUND, TRUNC, and ADD_MONTH 6. You query the database with this SQL statement: SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID" FROM employee; In which order are the functions evaluated? Mark for Review (1) Points LOWER, SUBSTR, CONCAT LOWER, CONCAT, SUBSTR SUBSTR, CONCAT, LOWER CONCAT, SUBSTR, LOWER (*) 7. Which three statements about functions are true? (Choose three.) Review (1) Points

Mark for

(Choose all correct answers) The SYSDATE function returns the Oracle Server date and time. (*) The ROUND number function rounds a value to a specified decimal place or the nearest whole number. (*) The CONCAT function can only be used on character strings, not on numbers. Which comparison operator retrieves a list of values? Mark for Review

This watermark does not appear in the registered version - http://www.clicktoconvert.com

(1) Points IN (*) LIKE BETWEEN...IN...

IS NULL The SUBSTR character function returns a portion of a string beginning at a defined character position to a specified length. (*) 10. Which two functions can be used to manipulate number or date column values, but NOT character column values? (Choose two.) Mark for Review (1) Points (Choose all correct answers) RPAD TRUNC (*) ROUND (*) INSTR CONCAT 11. Evaluate this SELECT statement: SELECT SYSDATE + 30 FROM dual; Which value is returned by the query? Mark for Review (1) Points the current date plus 30 hours

This watermark does not appear in the registered version - http://www.clicktoconvert.com

the current date plus 30 days (*) the current date plus 30 months No value is returned because the SELECT statement generates an error. 12. You need to display the current year as a character value (for example: Two Thousand and One). Which element would you use? Mark for Review (1) Points RR YY YYYY

YEAR (*) 13. You need to display the number of months between today's date and each employee's hiredate. Which function should you use? Mark for Review (1) Points ROUND BETWEEN ADD_MONTHS MONTHS_BETWEEN (*) 14. Which of the following SQL statements will correctly display the last name and the number of weeks employed for all employees in department 90? Mark for Review (1) Points SELECT last_name, (SYSDATE-hire_date)/7 AS WEEKS

This watermark does not appear in the registered version - http://www.clicktoconvert.com

FROM employees WHERE department_id = 90; (*) SELECT last name, (SYSDATE-hire_date)/7 DISPLAY WEEKS FROM employees WHERE department id = 90;

SELECT last_name, # of WEEKS FROM employees WHERE department_id = 90;

SELECT last_name, (SYSDATE-hire_date)AS WEEK FROM employees WHERE department_id = 90; 16. Review (1) Points

Which statement concerning single row functions is true? Mark for

Single row functions can accept only one argument, but can return multiple values. Single row functions cannot modify a data type. Single row functions can be nested. (*) Single row functions return one or more results per row. 17. Which two statements concerning SQL functions are true? (Choose two.) Mark for Review (1) Points (Choose all correct answers) Character functions can accept numeric input. Not all date functions return date values. (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Number functions can return number or character values. Conversion functions convert a value from one data type to another data type. (*) Single-row functions manipulate groups of rows to return one result per group of rows. 18. Which three statements concerning explicit data type conversions are true? (Choose three.) Mark for Review (1) Points (Choose all correct answers) Use the TO_NUMBER function to convert a number to a character string. Use the TO_DATE function to convert a character string to a date value. (*) Use the TO_NUMBER function to convert a character string of digits to a number. (*) Use the TO_DATE function to convert a date value to character string or number. Use the TO_CHAR function to convert a number or date value to character string. (*) 19. The EMPLOYEES table contains these columns: EMPLOYEE_ID NUMBER(9) LAST_NAME VARCHAR2 (25) FIRST_NAME VARCHAR2 (25) HIRE_DATE DATE You need to display HIRE_DATE values in this format: January 28, 2000 Which SELECT statement could you use? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT TO_CHAR(hire_date, Month DD, YYYY) FROM employees;

SELECT TO_CHAR(hire_date, 'Month DD, YYYY') FROM employees; (*) SELECT hire_date(TO_CHAR 'Month DD', ' YYYY') FROM employees;

SELECT TO_CHAR(hire_date, 'Month DD', ' YYYY') FROM employees; 20. Which arithmetic operation will return a numeric value? (1) Points

Mark for Review

TO_DATE('01-JUN-2004') - TO_DATE('01-OCT-2004') (*) NEXT_DAY(hire_date) + 5 SYSDATE - 6 SYSDATE + 30 / 24 21. If you use the RR format when writing a query using the date 27-OCT-17 and the year is 2001, what year would be the result? Mark for Review (1) Points 2001 1901 2017 (*) 1917

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Incorrect

Incorrect. Refer to Section 2

Previous Page 21 of 100 Next Summary 22. The PRODUCT table contains this column: PRICE NUMBER(7,2) Evaluate this statement: SELECT NVL(10 / price, '0') FROM PRODUCT; What would happen if the PRICE column contains null values? Mark for Review (1) Points The statement would fail because values cannot be divided by 0. A value of 0 would be displayed. (*) A value of 10 would be displayed. The statement would fail because values cannot be divided by null. 23. Which of the following General Functions will return the first non-null expression in the expression list? Mark for Review (1) Points NVL NVL2 NULLIF COALESCE (*) 24. You need to replace null values in the DEPT_ID column with the text "N/A". Which functions should you use? Mark for Review (1) Points TO_CHAR and NVL (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

TO_CHAR and NULL TO_CHAR and NULLIF 25. What happens when you create a Cartesian product? (1) Points

Mark for Review

All rows from one table are joined to all rows of another table (*) The table is joined to itself, one column to the next column, exhausting all possibilities The table is joined to another equal table All rows that do not match in the WHERE clause are displayed

Incorrect Incorrect. Refer to Section 3 26. The PATIENTS and DOCTORS tables contain these columns: PATIENTS PATIENT_ID NUMBER(9) LAST_NAME VARCHAR2 (20) FIRST_NAME VARCHAR2 (20) DOCTORS DOCTOR_ID NUMBER(9) LAST_NAME VARCHAR2 (20) FIRST_NAME VARCHAR2 (20) You issue this statement: SELECT patient_id, doctor_id FROM patients, doctors; Which result will this statement provide? Mark for Review (1) Points A report containing all possible combinations of the PATIENT_ID and DOCTOR_ID values (*) A report containing each patient's id value and their doctor's id value

This watermark does not appear in the registered version - http://www.clicktoconvert.com

A report with NO duplicate PATIENT_ID or DOCTOR_ID values A syntax error 27. When joining 3 tables in a SELECT statement, how many join conditions are needed in the WHERE clause? Mark for Review (1) Points 0 1 2 (*) 3

Incorrect Incorrect. Refer to Section 3 28. You need to provide a list of the first and last names of all employees who work in the Sales department who earned a bonus and had sales over $50,000. The company president would like the sales listed starting with the highest amount first. The EMPLOYEES table and the SALES_DEPT table contain the following columns: EMPLOYEES EMP_ID NUMBER(10) PRIMARY KEY LNAME VARCHAR2(20) FNAME VARCHAR2(20) DEPT VARCHAR2(20) HIRE_DATE DATE SALARY NUMBER(10) SALES_DEPT SALES_ID NUMBER(10) PRIMARY KEY SALES NUMBER(20) QUOTA NUMBER(20) MGR VARCHAR2(30) BONUS NUMBER(10) EMP_ID NUMBER(10) FOREIGN KEY Which SELECT statement will accomplish this task? Mark for Review

This watermark does not appear in the registered version - http://www.clicktoconvert.com

(1) Points SELECT e.emp_id, e.lname, e.fname, s.emp_id, s.bonus, s.sales FROM employees e, sales_dept s ORDER BY sales DESC WHERE e.emp_id = s.emp_id AND sales > 50000 AND s.bonus IS NOT NULL;

SELECT e.emp_id, e.lname, e.fname, s.emp_id, s.bonus, s. sales ORDER BY sales DESC FROM employees e, sales_dept s WHERE e.emp_id = s.emp_id AND s.bonus IS NOT NULL AND sales > 50000;

SELECT e.emp_id, e.lname, e.fname, s.emp_id, s.bonus, s. sales WHERE e.emp_id = s.emp_id FROM employees e, sales_dept s AND s.bonus IS NOT NULL AND sales > 50000 ORDER BY sales DESC;

SELECT e.emp_id, e.lname, e.fname, s.emp_id, s.bonus, s. sales FROM employees e, sales_dept s WHERE e.emp_id = s.emp_id AND s.bonus IS NOT NULL AND sales > 50000 ORDER BY sales DESC; (*) 29. You need to create a report that lists all employees in the Sales department who do not earn $25,000 per year. Which query should you issue to accomplish this task? Mark for Review (1) Points SELECT last_name, first_name, salary FROM employees WHERE salary > 25000 AND dept_id = 10;

SELECT last_name, first_name, salary FROM employees WHERE salary = 25000 AND dept_id = 10;

SELECT last_name, first_name, salary FROM employees

This watermark does not appear in the registered version - http://www.clicktoconvert.com

WHERE salary <= 25000 AND dept_id = 10;

SELECT last_name, first_name, salary FROM employees WHERE salary != 25000 AND dept_id = 10; (*) 30.

The CUSTOMERS and SALES tables contain these columns:

CUSTOMERS CUST_ID NUMBER(10) PRIMARY KEY COMPANY VARCHAR2(30) LOCATION VARCHAR2(20) SALES SALES_ID NUMBER(5) PRIMARY KEY CUST_ID NUMBER(10) FOREIGN KEY TOTAL_SALES NUMBER(30) Which SELECT statement will return the customer ID, the company and the total sales? Mark for Review (1) Points SELECT c.cust_id, c.company, s.total_sales FROM customers c, sales s WHERE c.cust_id = s.cust_id (+);

SELECT cust_id, company, total_sales FROM customers, sales WHERE cust_id = cust_id;

SELECT c.cust_id, c.company, s.total_sales FROM customers c, sales s WHERE c.cust_id = s.cust_id; (*) SELECT cust_id, company, total_sales FROM customers c, sales s WHERE c.cust_id = s.cust_id;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

31. The EMPLOYEE_ID column in the EMPLOYEE table corresponds to the EMPLOYEE_ID column of the ORDER table. The EMPLOYEE_ID column in the ORDER table contains null values for rows that you need to display. Which type of join should you use to display the data? Mark for Review (1) Points natural join self-join outer join (*) equijoin 32. Which statement about outer joins is true? (1) Points

Mark for Review

The tables must be aliased. The FULL, RIGHT, or LEFT keyword must be included. The OR operator cannot be used to link outer join conditions. (*) Outer joins are always evaluated before other types of joins in the query. 33. Which of the following best describes the function of an outer join? Mark for Review (1) Points An outer join will return only those rows that do not meet the join criteria. An outer join will return only data from the far left column in one table and the far right column in the other table. An outer join will return data only if both tables contain an identical pair of columns. An outer join will return all rows that meet the join criteria and will return NULL values from one table if no rows from the other table satisfy the join criteria. (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

34.

Which of the following conditions will cause an error on a NATURAL JOIN? Mark for Review (1) Points When you attempt to write it as an equijoin. When the NATURAL JOIN clause is based on all columns in the two tables that have the same name. If it selects rows from the two tables that have equal values in all matched columns. If the columns having the same names have different data types, then an error is returned. (*) 35. A join between tables where the result set includes matching values from both tables but does NOT return any unmatched rows could be called which of the following? (Choose three) Mark for Review (1) Points (Choose all correct answers) Equijoin (*) Self join (*) Nonequijoin Simple join (*) full outer join 36. You need to join two tables that have two columns with the same name and compatible data types. Which type of join would you create to join the tables on both of the columns? Mark for Review (1) Points Natural join (*) Cross join

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Outer join Self- join 37. Which of the following statements is the simplest description of a nonequijoin? Mark for Review (1) Points A join condition containing something other than an equality operator (*) A join condition that is not equal to other joins. A join condition that includes the (+) on the left hand side. A join that joins a table to itself 38. Evaluate this SELECT statement: SELECT a.lname || ', ' || a.fname as "Patient", b.lname || ', ' || b.fname as "Physician", c.admission FROM patient a JOIN physician b ON (b.physician_id = c.physician_id); JOIN admission c ON (a.patient_id = c.patient_id); Which clause generates an error? Mark for Review (1) Points JOIN physician b ON (b.physician_id = c.physician_id); (*) JOIN admission c ON (a.patient_id = c.patient_id) 39. Review

The primary advantage of using JOIN ON is:

Mark for

This watermark does not appear in the registered version - http://www.clicktoconvert.com

(1) Points The join happens automatically based on matching column names and data types It will display rows that do not meet the join condition It permits columns with different names to be joined (*) It permits columns that don't have matching data types to be joined 40. USING keyword? (1) Points

For which condition would you use an equijoin query with the Mark for Review

You need to perform a join of the CUSTOMER and ORDER tables but limit the number of columns in the join condition. (*) The ORDER table contains a column that has a referential constraint to a column in the PRODUCT table. The CUSTOMER and ORDER tables have no columns with identical names. The CUSTOMER and ORDER tables have a corresponding column, CUST_ID. The CUST_ID column in the ORDER table contains null values that need to be displayed. 41. Which query will retrieve all the rows in the EMPLOYEES table, even if there is no match in the DEPARTMENTS table? Mark for Review (1) Points SELECT e.last_name, e.department_id, d.department_name FROM employees e RIGHT OUTER JOIN departments d ON (e.department_id = d.department_id);

SELECT e.last_name, e.department_id, d.department_name FROM employees e NATURAL JOIN departments d;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT e.last_name, e.department_id, d.department_name FROM employees e LEFT OUTER JOIN departments d ON (e.department_id = d.department_id); (*) SELECT e.last_name, e.department_id, d.department_name FROM employees e JOIN departments d USING (e.department_id = d.department_id);

42. Which type of join returns rows from one table that have NO direct match in the other table? Mark for Review (1) Points equijoin self join outer join (*) natural join 43. What should be included in a SELECT statement to return NULL values from all tables? Mark for Review (1) Points natural joins left outer joins full outer joins (*) right outer joins 44. If a select list contains both a column as well as a group function then what clause is required? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

having clause join clause order by clause group by clause (*) 45.

Evaluate this SELECT statement:

SELECT MIN(hire_date), dept_id FROM employee GROUP BY dept_id; Which values are displayed? Mark for Review (1) Points The earliest hire date in each department. (*) The the earliest hire date in the EMPLOYEE table. The latest hire date in the EMPLOYEE table. The hire dates in the EMPLOYEE table that contain NULL values 46.

Which statement about group functions is true?

Mark for

Review (1) Points Group functions ignore null values. (*) Group functions can only be used in a SELECT list. Group functions can be used in a WHERE clause. A query that includes a group function in the SELECT list must include a GROUP BY clause.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

47. Group functions can be nested to a depth of? (1) Points

Mark for Review

three four two (*) Group functions cannot be nested. 48. Which group function would you use to display the total of all salary values in the EMPLOYEE table? Mark for Review (1) Points SUM (*) AVG COUNT MAX 49.

The VENDORS table contains these columns:

VENDOR_ID NUMBER Primary Key NAME VARCHAR2(30) LOCATION_ID NUMBER ORDER_DT DATE ORDER_AMOUNT NUMBER(8,2) Which two clauses represent valid uses of aggregate functions for this table? Mark for Review (1) Points (Choose all correct answers) FROM MAX(order_dt)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT SUM(order_dt) SELECT SUM(order_amount) (*) WHERE MAX(order_dt) = order_dt SELECT location_id, MIN(AVG(order_amount)) (*)

Incorrect Incorrect. Refer to Section 5 50. You need to calculate the standard deviation for the cost of products produced in the Birmingham facility. Which group function will you use? Mark for Review (1) Points STDEV STDDEV (*) VAR_SAMP VARIANCE 51. Group functions return a value for ________________ and ________________ null values in their computations. Mark for Review (1) Points a row set, ignore (*) each row, ignore a row set, include each row, include

52. You need to calculate the average salary of employees in each department. Which group function will you use? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

AVG (*) MEAN MEDIAN AVERAGE 53. The AVG, SUM, VARIANCE, and STDDEV functions can be used with which of the following? Mark for Review (1) Points Only numeric data types (*) Integers only Any data type All except numeric 54.

The PRODUCTS table contains these columns:

PROD_ID NUMBER(4) PROD_NAME VARCHAR2(30) PROD_CAT VARCHAR2(30) PROD_PRICE NUMBER(3) PROD_QTY NUMBER(4) The following statement is issued: SELECT AVG(prod_price, prod_qty) FROM products; What happens when this statement is issued? Mark for Review (1) Points Both the average price and the average quantity of the products are returned. Only the average quantity of the products is returned.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

The values in the PROD_PRICE column and the PROD_QTY column are averaged together. An error occurs. (*) 55.

The EMPLOYEES table contains these columns:

EMPLOYEE_ID NUMBER(9) LAST_NAME VARCHAR2(20) FIRST_NAME VARCHAR2(20) SALARY NUMBER(9,2) HIRE_DATE DATE BONUS NUMBER(7,2) COMM_PCT NUMBER(4,2) Which three functions could be used with the HIRE_DATE, LAST_NAME, or SALARY columns? (Choose three.) Mark for Review (1) Points (Choose all correct answers) MAX (*) SUM AVG MIN (*) COUNT (*) 56. Which SELECT statement will calculate the number of rows in the PRODUCTS table? Mark for Review (1) Points SELECT COUNT(products);

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT COUNT FROM products; SELECT COUNT (*) FROM products; (*)

57.

SELECT ROWCOUNT FROM products Examine the data from the LINE_ITEM table:

LINE_ITEM_ID ORDER_ID PRODUCT_ID DISCOUNT 890898 847589 848399 8.99 0.10 768385 862459 849869 5.60 0.05 867950 985490 945809 5.60 954039 439203 438925 5.25 0.15 543949 349302 453235 4.50

PRICE

You query the LINE_ITEM table and a value of 5 is returned. Which SQL statement did you execute? Mark for Review (1) Points SELECT COUNT(discount) FROM line_item; SELECT COUNT(*) FROM line_item; (*) SELECT SUM(discount) FROM line_item; SELECT AVG(discount) FROM line_it 58.

The EMPLOYEES table contains these columns:

EMPLOYEE_ID NUMBER(9) LAST_NAME VARCHAR2(20) FIRST_NAME VARCHAR2(20) SALARY NUMBER(7,2) DEPARTMENT_ID NUMBER(9) You need to display the number of employees whose salary is greater than $50,000? Which SELECT would you use? Mark for Review (1) Points SELECT * FROM employees WHERE salary > 50000;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT * FROM employees WHERE salary < 50000;

SELECT COUNT(*) FROM employees WHERE salary < 50000;

SELECT COUNT(*) FROM employees WHERE salary > 50000; (*) SELECT COUNT(*) FROM employees WHERE salary > 50000 GROUP BY employee_id, last_name, first_name, salary, department_id;

59.

Evaluate this SELECT statement:

SELECT COUNT(*) FROM products; Which statement is true? Mark for Review (1) Points The number of rows in the table is displayed. (*) The number of unique PRODUCT_IDs in the table is displayed. An error occurs due to an error in the SELECT clause. An error occurs because no WHERE clause is included in the SELECT statement. 60.

Evaluate this statement:

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT department_id, AVG(salary) FROM employees WHERE job_id <> 69879 GROUP BY job_id, department_id HAVING AVG(salary) > 35000 ORDER BY department_id; Which clauses restricts the result? Choose two. Mark for Review (1) Points (Choose all correct answers) SELECT department_id, AVG(salary) WHERE job_id <> 69879 (*) GROUP BY job_id, department_id

61.

HAVING AVG(salary) > 35000 (*) The PLAYERS and TEAMS tables contain these columns:

PLAYERS PLAYER_ID NUMBER NOT NULL, Primary Key LAST_NAME VARCHAR2 (30) NOT NULL FIRST_NAME VARCHAR2 (25) NOT NULL TEAM_ID NUMBER POSITION VARCHAR2 (25) TEAMS TEAM_ID NUMBER NOT NULL, Primary Key TEAM_NAME VARCHAR2 (25) You need to create a report that lists the names of each team with more than five pitchers. Which SELECT statement will produce the desired result? Mark for Review (1) Points SELECT t.team_name, COUNT(p.player_id) FROM players p, teams t ON (p.team_id = t.team_id) WHERE UPPER(p.position) = 'PITCHER' GROUP BY t.team_name;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT t.team_name, COUNT(p.player_id) FROM players JOIN teams t ON (p.team_id = t.team_id) WHERE UPPER(p.position) = 'PITCHER' HAVING COUNT(p.player_id) > 5;

SELECT t.team_name, COUNT(p.player_id) FROM players p, teams t ON (p.team_id = t.team_id) WHERE UPPER(p.position) = 'PITCHER' GROUP BY t.team_name HAVING COUNT(p.player_id) > 5;

SELECT t.team_name, COUNT(p.player_id) FROM players p JOIN teams t ON (p.team_id = t.team_id) WHERE UPPER(p.position) = 'PITCHER' GROUP BY t.team_name HAVING COUNT(p.player_id) > 5; (*) 62.

The MANUFACTURER table contains these columns:

MANUFACTURER_ID NUMBER MANUFACTURER_NAME VARCHAR2(30) TYPE VARCHAR2(25) LOCATION_ID NUMBER You need to display the number of unique types of manufacturers at each location. Which SELECT statement should you use? Mark for Review (1) Points SELECT location_id, COUNT(DISTINCT type) FROM manufacturer GROUP BY location_id; (*) SELECT location_id, COUNT(DISTINCT type) FROM manufacturer;

SELECT location_id, COUNT(type) FROM manufacturer GROUP BY location_id;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT location_id, COUNT(DISTINCT type) FROM manufacturer GROUP BY type; 3. The PLAYERS table contains these columns: PLAYER_ID NUMBER PK PLAYER_NAME VARCHAR2 (30) TEAM_ID NUMBER HIRE_DATE DATE SALARY NUMBER (8,2) Which two clauses represent valid uses of aggregate functions? (Choose three.) Mark for Review (1) Points (Choose all correct answers) ORDER BY AVG(salary) GROUP BY MAX(salary) (*) SELECT AVG(NVL(salary, 0)) (*) HAVING MAX(salary) > 10000 (*) WHERE hire_date > AVG(hire_date) 65. Which statement about the GROUP BY clause is true? (1) Points

Mark for Review

To exclude rows before dividing them into groups using the GROUP BY clause, you use should a WHERE clause. (*) You can use a column alias in a GROUP BY clause. By default, rows are not sorted when a GROUP BY clause is used. You must use the HAVING clause with the GROUP BY clause.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

66.

Evaluate this SELECT statement:

SELECT SUM(salary), dept_id FROM employee GROUP BY dept_id; How are the results of this statement sorted? Mark for Review (1) Points Ascending order by dept_id (*) Descending order by dept_id Ascending order by cumulative salary

67.

Descending order by cumulative salary The EMPLOYEES table contains these columns:

ID_NUMBER NUMBER Primary Key NAME VARCHAR2 (30) DEPARTMENT_ID NUMBER SALARY NUMBER (7,2) HIRE_DATE DATE Evaluate this SQL statement: SELECT id_number, name, department_id, SUM(salary) FROM employees WHERE salary > 25000 GROUP BY department_id, id_number, name ORDER BY hire_date; Why will this statement cause an error? Mark for Review (1) Points The HAVING clause is missing. The WHERE clause contains a syntax error. The SALARY column is NOT included in the GROUP BY clause.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

The HIRE_DATE column is NOT included in the GROUP BY clause. (*)

Incorrect

Incorrect. Refer to Section 6

Previous Page 67 of 100 Next Summary 68. Examine the structures of the CUSTOMER and ORDER_HISTORY tables: CUSTOMER CUSTOMER_ID NUMBER(5) NAME VARCHAR2(25) CREDIT_LIMIT NUMBER(8,2) OPEN_DATE DATE ORDER_HISTORY ORDER_ID NUMBER(5) CUSTOMER_ID NUMBER(5) ORDER_DATE DATE TOTAL NUMBER(8,2) Which of the following scenarios would require a subquery to return the desired results? Mark for Review (1) Points You need to display the date each customer account was opened. You need to display each date that a customer placed an order. You need to display all the orders that were placed on a certain date. You need to display all the orders that were placed on the same day as order number 25950. (*)

Incorrect Previous 69.

Incorrect. Refer to Section 6 Page 68 of 100

Next

Summary

Which operator can be used with a multiple-row subquery? Mark for Review

This watermark does not appear in the registered version - http://www.clicktoconvert.com

(1) Points IN (*) <> = LIKE 70. You need to create a report to display the names of products with a cost value greater than the average cost of all products. Which SELECT statement should you use? Mark for Review (1) Points SELECT product_name FROM products WHERE cost > (SELECT AVG(cost) FROM product); (*) SELECT product_name FROM products WHERE cost > AVG(cost);

SELECT AVG(cost), product_name FROM products WHERE cost > AVG(cost) GROUP by product_name;

SELECT product_name FROM (SELECT AVG(cost) FROM product) WHERE cost > AVG(cost); 71. Using a subquery in which clause will return a syntax error? Review (1) Points WHERE

Mark for

This watermark does not appear in the registered version - http://www.clicktoconvert.com

FROM HAVING There are no places you cannot place subqueries. (*) 72. You need to display all the players whose salaries are greater than or equal to John Brown's salary. Which comparison operator should you use? Mark for Review (1) Points = > <= >= (*)

73. Which best describes a single-row subquery? (1) Points

Mark for Review

a query that returns only one row from the inner SELECT statement (*) a query that returns one or more rows from the inner SELECT statement a query that returns only one column value from the inner SELECT statement a query that returns one or more column values from the inner SELECT statement 74. Examine the structure of the EMPLOYEE, DEPARTMENT, and ORDERS tables. EMPLOYEE EMPLOYEE_ID NUMBER(9) LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

DEPARTMENT_ID NUMBER(9) DEPARTMENT DEPARTMENT_ID NUMBER(9) DEPARTMENT_NAME VARCHAR2(25) CREATION_DATE DATE ORDERS ORDER_ID NUMBER(9) EMPLOYEE_ID NUMBER(9) DATE DATE CUSTOMER_ID NUMBER(9) You want to display all employees who had an order after the Sales department was established. Which of the following constructs would you use? Mark for Review (1) Points a group function a single-row subquery (*) the HAVING clause a MERGE statement 75. Which statement about the <> operator is true? (1) Points

Mark for Review

The <> operator is NOT a valid SQL operator. The <> operator CANNOT be used in a single-row subquery. The <> operator returns the same result as the ANY operator in a subquery. The <> operator can be used when a single-row subquery returns only one row. (*) 76.

Which operator or keyword cannot be used with a multiple-row subquery? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

ALL ANY = (*) >

77. Which comparison operator would you use to compare a value to every value returned by a subquery? Mark for Review (1) Points SOME ANY ALL (*) IN Correct

Correct 78.

Evaluate this SELECT statement:

SELECT player_id, name FROM players WHERE team_id IN (SELECT team_id  FROM teams  WHERE team_id > 300 AND salary_cap > 400000); What would happen if the inner query returned a NULL value? Mark for Review (1) Points No rows would be returned by the outer query. (*) A syntax error in the outer query would be returned.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

A syntax error in the inner query would be returned. All the rows in the PLAYER table would be returned by the outer query. 79. What would happen if you attempted to use a single-row operator with a multiple-row subquery? Mark for Review (1) Points An error would be returned. (*) No rows will be selected. All the rows will be selected. The data returned may or may not be correct.

Incorrect Incorrect. Refer to Section 6 80. Which best describes a multiple-row subquery? (1) Points

Mark for Review

A query that returns only one row from the inner SELECT statement A query that returns one or more rows from the inner SELECT statement (*) A query that returns only one column value from the inner SELECT statement

81.

A query that returns one or more Examine the structures of the PARTS and MANUFACTURERS tables:

PARTS: PARTS_ID VARCHAR2(25) PK PARTS_NAME VARCHAR2(50) MANUFACTURERS_ID NUMBER COST NUMBER(5,2) PRICE NUMBER(5,2)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

MANUFACTURERS: ID NUMBER PK NAME VARCHAR2(30) LOCATION VARCHAR2(20) Which SQL statement correctly uses a subquery? Mark for Review (1) Points UPDATE parts SET price = price * 1.15 WHERE manufacturers_id = (SELECT id  FROM manufacturers  WHERE UPPER(location) IN('ATLANTA ', 'BOSTON ', 'DALLAS '));

SELECT parts_name, price, cost FROM parts WHERE manufacturers_id != (SELECT id  FROM manufacturers  WHERE LOWER(name) = 'cost plus');

SELECT parts_name, price, cost FROM parts WHERE manufacturers_id IN (SELECT id  FROM manufacturers m  JOIN part p ON (m.id = p.manufacturers_id)); (*) SELECT parts_name FROM (SELECT AVG(cost)  FROM manufacturers)  WHERE cost > AVG(cost);

Correct

Correct

Previous

Page 81 of 100

Next

Summary

This watermark does not appear in the registered version - http://www.clicktoconvert.com

82.

Which of the following best describes the meaning of the ANY operator? Mark for Review (1) Points Equal to any member in the list Compare value to each value returned by the subquery (*) Compare value to every value returned by the subquery Equal to each value in the list 83.

Which statement about single-row and multiple-row subqueries is true? Mark for Review (1) Points Multiple-row subqueries cannot be used with the LIKE operator. (*) Single-row operators can be used with both single-row and multiple-row subqueries. Multiple-row subqueries can be used with both single-row and multiple-row operators. Multiple-row subqueries can only be used in SEL 84. Which statement about the ANY operator when used with a multiplerow subquery is true? Mark for Review (1) Points The ANY operator compares every value returned by the subquery. (*) The ANY operator can be used with the DISTINCT keyword. The ANY operator is a synonym for the ALL operator.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

The ANY operator can be used with the LIKE and IN operators. 85. You need to create a SELECT statement that contains a multiple-row subquery, which comparison operator(s) can you use? Mark for Review (1) Points IN, ANY, and ALL (*) LIKE BETWEEN...AND... =, <, and > 86. You need to display all the products that cost more than the maximum cost of every product produced in Japan. Which multiple-row comparison operator could you use? Mark for Review (1) Points >ANY (*) NOT=ALL IN >IN 87.

The STUDENTS table contains these columns:

STU_ID NUMBER(9) NOT NULL LAST_NAME VARCHAR2 (30) NOT NULL FIRST_NAME VARCHAR2 (25) NOT NULL DOB DATE STU_TYPE_ID VARCHAR2(1) NOT NULL ENROLL_DATE DATE You create another table, named FT_STUDENTS, with an identical structure.You want to insert all full-time students, who have a STU_TYPE_ID value of "F", into the new table. You execute this INSERT statement:

This watermark does not appear in the registered version - http://www.clicktoconvert.com

INSERT INTO ft_students (SELECT stu_id, last_name, first_name, dob, stu_type_id, enroll_date FROM students WHERE UPPER(stu_type_id) = 'F'); What is the result of executing this INSERT statement? Mark for Review (1) Points All full-time students are inserted into the FT_STUDENTS table. (*) An error occurs because the FT_STUDENTS table already exists. An error occurs because you CANNOT use a subquery in an INSERT statement. An error occurs because the INSERT statement does NOT contain a VALUES clause. 88.

The PRODUCTS table contains these columns:

PROD_ID NUMBER(4) PROD_NAME VARCHAR2(25) PROD_PRICE NUMBER(3) You want to add the following row data to the PRODUCTS table: (1) a NULL value in the PROD_ID column (2) "6- foot nylon leash" in the PROD_NAME column (3) "10" in the PROD_PRICE column You issue this statement: INSERT INTO products VALUES (null,'6- foot nylon leash', 10); What row data did you add to the table? Mark for Review (1) Points The row was created with the correct data in all three columns. (*) The row was created with the correct data in two of three columns.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

The row was created with the correct data in one of the three columns. The row was created completely wrong. No data ended up in the correct columns. 89. You have been instructed to add a new customer to the CUSTOMERS table. Because the new customer has not had a credit check, you should not add an amount to the CREDIT column. The CUSTOMERS table contains these columns: CUST_ID NUMBER(10) COMPANY VARCHAR2(30) CREDIT NUMBER(10) POC VARCHAR2(30) LOCATION VARCHAR2(30) Which two INSERT statements will accomplish your objective? Mark for Review (1) Points (Choose all correct answers) INSERT INTO customers (cust_id, company, poc, location) VALUES (200, 'InterCargo', 'tflanders', 'samerica'); (*) INSERT INTO customers VALUES (200, 'InterCargo', null, 'tflanders', 'samerica'); (*) INSERT INTO customers VALUES (cust_id, company, credit, poc, location) (200, 'InterCargo', 0, 'tflanders', 'samerica');

INSERT INTO customers VALUES (200, InterCargo, 0, tflanders, samerica); 90. You need to add a row to an existing table. Which DML statement should you use? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

UPDATE INSERT (*) DELETE CREATE 91. You need to update both the DEPARTMENT_ID and LOCATION_ID columns in the EMPLOYEE table using one UPDATE statement. Which clause should you include in the UPDATE statement to update multiple columns? Mark for Review (1) Points the USING clause the ON clause the WHERE clause the SET clause (*) 92. What keyword in an UPDATE statement speficies the columns you want to change? Mark for Review (1) Points SELECT WHERE SET (*) HAVING 93. One of the sales representatives, Janet Roper, has informed you that she was recently married, and she has requested that you update her name in the employee database. Her new last name is Cooper. Janet is the only person with the last name of Roper that is employed by the company. The EMPLOYEES table contains these columns and all data is stored in lowercase:

This watermark does not appear in the registered version - http://www.clicktoconvert.com

EMP_ID NUMBER(10) PRIMARY KEY LNAME VARCHAR2(20) FNAME VARCHAR2(20) DEPT VARCHAR2 (20) HIRE_DATE DATE SALARY NUMBER(10) Which UPDATE statement will accomplish your objective? Mark for Review (1) Points UPDATE employees SET lname = 'cooper' WHERE lname = 'roper'; (*) UPDATE employees lname = 'cooper' WHERE lname = 'roper';

UPDATE employees SET lname = 'roper' WHERE lname = 'cooper';

UPDATE employees SET cooper = 'lname' WHERE lname = 'roper';

94.

Which two commands can be used to modify existing data in a database row? Mark for Review (1) Points (Choose all correct answers) DELETE INSERT (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT UPDATE (*) 95. You need to delete a record in the EMPLOYEES table for Tim Jones, whose unique employee identification number is 348. The EMPLOYEES table contains these columns: ID_NUM NUMBER(5) PRIMARY KEY LNAME VARCHAR2(20) FNAME VARCHAR2(20) ADDRESS VARCHAR2(30) PHONE NUMBER(10) Which DELETE statement will delete the appropriate record without deleting any additional records? Mark for Review (1) Points DELETE FROM employees WHERE id_num = 348; (*) DELETE FROM employees WHERE lname = jones; DELETE * FROM employees WHERE id_num = 348; DELETE 'jones' FROM employees;

Incorrect Incorrect. Refer to Section 7 96. The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns: TEACHERS TEACHER_ID NUMBER(5) NAME VARCHAR2(25) SUBJECT_ID NUMBER(5) HIRE_DATE DATE SALARY NUMBER(9,2) CLASS_ASSIGNMENTS CLASS_ID NUMBER(5) TEACHER_ID NUMBER(5) START_DATE DATE MAX_CAPACITY NUMBER(3)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Which scenario would require a subquery to return the desired results? Mark for Review (1) Points You need to display the start date for each class taught by a given teacher. You need to create a report to display the teachers who were hired more than five years ago. You need to display the names of the teachers who teach classes that start within the next week. You need to create a report to display the teachers who teach more classes than the average number of classes taught by each teacher. (*)

Incorrect Incorrect. Refer to Section 7 96. The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns: TEACHERS TEACHER_ID NUMBER(5) NAME VARCHAR2(25) SUBJECT_ID NUMBER(5) HIRE_DATE DATE SALARY NUMBER(9,2) CLASS_ASSIGNMENTS CLASS_ID NUMBER(5) TEACHER_ID NUMBER(5) START_DATE DATE MAX_CAPACITY NUMBER(3) Which scenario would require a subquery to return the desired results? Mark for Review (1) Points You need to display the start date for each class taught by a given teacher. You need to create a report to display the teachers who were hired more than five years ago.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

You need to display the names of the teachers who teach classes that start within the next week. You need to create a report to display the teachers who teach more classes than the average number of classes taught by each teacher. (*) 97.

Examine the structures of the PRODUCTS and SUPPLIERS

tables: SUPPLIERS SUPPLIER_ID NUMBER NOT NULL, Primary Key SUPPLIER_NAME VARCHAR2 (25) ADDRESS VARCHAR2 (30) CITY VARCHAR2 (25) REGION VARCHAR2 (10) POSTAL_CODE VARCHAR2 (11) PRODUCTS PRODUCT_ID NUMBER NOT NULL, Primary Key PRODUCT_NAME VARCHAR2 (25) SUPPLIER_ID NUMBER Foreign key to SUPPLIER_ID of the SUPPLIERS table CATEGORY_ID NUMBER QTY_PER_UNIT NUMBER UNIT_PRICE NUMBER (7,2) QTY_IN_STOCK NUMBER QTY_ON_ORDER NUMBER REORDER_LEVEL NUMBER You want to delete any products supplied by the five suppliers located in Atlanta. Which script should you use? Mark for Review (1) Points DELETE FROM products WHERE supplier_id IN (SELECT supplier_id FROM suppliers WHERE UPPER(city) = 'ATLANTA'); (*) DELETE FROM products WHERE UPPER(city) = 'ATLANTA';

DELETE FROM products

This watermark does not appear in the registered version - http://www.clicktoconvert.com

WHERE supplier_id = (SELECT supplier_id FROM suppliers WHERE UPPER(city) = 'ATLANTA');

DELETE FROM products WHERE supplier_id IN (SELECT supplier_id FROM suppliers WHERE UPPER(city) = 'ALANTA'); 97. Examine the structures of the PRODUCTS and SUPPLIERS tables: SUPPLIERS SUPPLIER_ID NUMBER NOT NULL, Primary Key SUPPLIER_NAME VARCHAR2 (25) ADDRESS VARCHAR2 (30) CITY VARCHAR2 (25) REGION VARCHAR2 (10) POSTAL_CODE VARCHAR2 (11) PRODUCTS PRODUCT_ID NUMBER NOT NULL, Primary Key PRODUCT_NAME VARCHAR2 (25) SUPPLIER_ID NUMBER Foreign key to SUPPLIER_ID of the SUPPLIERS table CATEGORY_ID NUMBER QTY_PER_UNIT NUMBER UNIT_PRICE NUMBER (7,2) QTY_IN_STOCK NUMBER QTY_ON_ORDER NUMBER REORDER_LEVEL NUMBER You want to delete any products supplied by the five suppliers located in Atlanta. Which script should you use? Mark for 98. What would happen if you issued a DELETE statement without a WHERE clause? Mark for Review (1) Points All the rows in the table would be deleted. (*) An error message would be returned. No rows would be deleted.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Only one row would be deleted.

Incorrect 99.

Incorrect. Refer to Section 7

The EMPLOYEES table contains the following columns:

EMP_ID NUMBER(10) PRIMARY KEY LNAME VARCHAR2(20) FNAME VARCHAR2(20) DEPT VARCHAR2(20) HIRE_DATE DATE SALARY NUMBER(9,2) BONUS NUMBER(9,2) You want to execute one DML statement to change the salary of all employees in department 10 to equal the new salary of employee number 89898. Currently, all employees in department 10 have the same salary value. Which statement should you execute? Mark for Review (1) Points UPDATE employee SET salary = SELECT salary FROM employee WHERE emp_id = 89898;

UPDATE employee SET salary = (SELECT salary FROM employee WHERE emp_id = 89898);

UPDATE employee SET salary = (SELECT salary FROM employee WHERE emp_id = 89898) WHERE dept = 10; (*) UPDATE employee SET salary = (SELECT salary FROM employee WHERE emp_id = 89898 AND dept = 10); 100. Which of the following represents the correct syntax for an INSERT statement? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

INSERT VALUES INTO customers (3178 J. Smith 123 Main Street Nashville TN 37777; INSERT INTO customers VALUES '3178' 'J.' 'Smith' '123 Main Street' 'Nashville' 'TN' '37777'; INSERT INTO customers VALUES ('3178', 'J.', 'Smith', '123 Main Street', 'Nashville', 'TN', '37777'); (*) INSERT customers VALUES 3178, J., Smith, 123 Main Street, Nashville, TN, 37777; Test: Mid Term Exam - Database Programming with SQL

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 1 Lesson 1 (Answer all questions in this section) 1. Which SQL function can be used to remove heading or trailing characters (or both) from a character string? Mark for Review (1) Points LPAD CUT NVL2 TRIM (*) Correct 2. Which three statements about functions are true? (Choose three.) Mark for Review (1) Points (Choose all correct answers) The SYSDATE function returns the Oracle Server date and time. (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

The ROUND number function rounds a value to a specified decimal place or the nearest whole number. (*) The CONCAT function can only be used on character strings, not on numbers. The SUBSTR character function returns a portion of a string beginning at a defined character position to a specified length. (*) Correct 3. You query the database with this SQL statement: SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID" FROM employee; In which order are the functions evaluated? Mark for Review (1) Points LOWER, SUBSTR, CONCAT LOWER, CONCAT, SUBSTR SUBSTR, CONCAT, LOWER CONCAT, SUBSTR, LOWER (*) Correct 4. You need to return a portion of each employee's last name, beginning with the first character up to the fifth character. Which character function should you use? Mark for Review (1) Points INSTR TRUNC SUBSTR (*) CONCAT Correct

This watermark does not appear in the registered version - http://www.clicktoconvert.com

5. You issue this SQL statement: SELECT INSTR ('organizational sales', 'al') FROM dual; Which value is returned by this command? Mark for Review (1) Points 1 2 13 (*) 17 Correct 6. What will the following SQL statemtent display? SELECT last_name, LPAD(salary, 15, '$')SALARY FROM employees; Mark for Review (1) Points The last name of employees that have a salary that includes a $ in the value, size of 15 and the column labeled SALARY. The last name and the format of the salary limited to 15 digits to the left of the decimal and the column labeled SALARY. The last name and salary for all employees with the format of the salary 15 characters long, left-padded with the $ and the column labeled SALARY. (*) The query will result in an error: "ORA-00923: FROM keyword not found where expected." Correct 7. Evaluate this SELECT statement:

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT LENGTH(email) FROM employee; What will this SELECT statement display? Mark for Review (1) Points The longest e- mail address in the EMPLOYEE table. The email address of each employee in the EMPLOYEE table. The number of characters for each value in the EMAIL column in the employees table. (*) The maximum number of characters allowed in the EMAIL column. Correct

Section 1 Lesson 2 (Answer all questions in this section) 8. Which two functions can be used to manipulate number or date column values, but NOT character column values? (Choose two.) Mark for Review (1) Points (Choose all correct answers) RPAD TRUNC (*) ROUND (*) INSTR CONCAT Correct 9. Which script displays '01-MAY-04' when the HIRE_DATE value is '20-MAY04'? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT TRUNC(hire_date, 'MONTH') FROM employee; (*) SELECT ROUND(hire_date, 'MONTH') FROM employee; SELECT ROUND(hire_date, 'MON') FROM employee; SELECT TRUNC(hire_date, 'MI') FROM employee;

Incorrect. Refer to Section 1 Lesson 3 10. You issue this SQL statement: SELECT TRUNC(751.367,-1) FROM dual; Which value does this statement display? Mark for Review (1) Points 700 750 (*) 751 751.3 Correct

Page 1 of 10 Test: Mid Term Exam - Database Programming with SQL

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 1 Lesson 3 (Answer all questions in this section) 11. Which SELECT statement will NOT return a date value? Mark for Review (1) Points SELECT (30 + hire_date) + 1440/24 FROM employees; SELECT (SYSDATE - hire_date) + 10*8 FROM employees; (*) SELECT SYSDATE - TO_DATE('25-JUN-02') + hire_date FROM employees; SELECT (hire_date - SYSDATE) + TO_DATE('25-JUN-02') FROM employees;

Correct 12. You need to subtract three months from the current date. Which function should you use? Mark for Review (1) Points ROUND TO_DATE ADD_MONTHS (*) MONTHS_BETWEEN Correct 13. You need to display the number of months between today's date and each employee's hiredate. Which function should you use? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

ROUND BETWEEN ADD_MONTHS MONTHS_BETWEEN (*) Correct 14. You need to display the current year as a character value (for example: Two Thousand and One). Which element would you use? Mark for Review (1) Points RR YY YYYY YEAR (*) Correct 15. Evaluate this SELECT statement: SELECT SYSDATE + 30 FROM dual; Which value is returned by the query? Mark for Review (1) Points the current date plus 30 hours the current date plus 30 days (*) the current date plus 30 months No value is returned because the SELECT statement generates an error. Correct

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Section 2 Lesson 1 (Answer all questions in this section) 16. All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a report that displays each employee's name and salary. Each employee's salary must be displayed in the following format: $000,000.00. Which function should you include in a SELECT statement to achieve the desired result? Mark for Review (1) Points TO_CHAR (*) TO_DATE TO_NUMBER CHARTOROWID Correct 17. Which best describes the TO_CHAR function? Mark for Review (1) Points The TO_CHAR function can be used to specify meaningful column names in an SQL statement's result set. The TO_CHAR function can be used to remove text from column data that will be returned by the database. The TO_CHAR function can be used to display dates and numbers according to formatting conventions that are supported by Oracle. (*) The TO_CHAR function can only be used on DATE columns. Correct 18. You have been asked to create a report that lists all customers who have placed orders of at least $2,500. The report's date should be displayed in the Day, Date Month, Year format (For example, Tuesday, 13 April, 2004 ). Which statement should you issue? Mark for Review (1) Points SELECT companyname, TO_CHAR (sysdate, 'fmdd, dy month, yyyy'), total FROM customers NATURAL JOIN orders

This watermark does not appear in the registered version - http://www.clicktoconvert.com

WHERE total >= 2500; SELECT companyname, TO_DATE (date, 'day, dd month, yyyy'), total FROM customers NATURAL JOIN orders WHERE total >= 2500; SELECT companyname, TO_DATE (sysdate, 'dd, dy month, yyyy'), total FROM customers NATURAL JOIN orders WHERE total >= 2500; SELECT companyname, TO_CHAR (sysdate, 'fmDay, dd Month, yyyy'), total FROM customers NATURAL JOIN orders WHERE total >= 2500; (*)

Incorrect. Refer to Section 2 19. Which SQL Statement should you use to display the prices in this format: "$00.30"? Mark for Review (1) Points SELECT TO_CHAR(price, '$99,900.99') FROM product; (*) SELECT TO_CHAR(price, "$99,900.99") FROM product; SELECT TO_CHAR(price, '$99,990.99') FROM product; SELECT TO_NUMBER(price, '$99,900.99') FROM product; Correct 20. Which statement concerning single row functions is true? Mark for Review (1) Points Single row functions can accept only one argument, but can return multiple values. Single row functions cannot modify a data type. Single row functions can be nested. (*) Single row functions return one or more results per row.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Correct

Page 2 of 10

Test: Mid Term Exam - Database Programming with SQL

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 2 Lesson 1 (Answer all questions in this section) 21. The EMPLOYEES table contains these columns: EMPLOYEE_ID NUMBER(9) LAST_NAME VARCHAR2 (25) FIRST_NAME VARCHAR2 (25) SALARY NUMBER(6) You need to create a report to display the salaries of all employees. Which script should you use to display the salaries in format: "$45,000.00"? Mark for Review (1) Points SELECT TO_CHAR(salary, '$999,999') FROM employees; SELECT TO_NUM(salary, '$999,990.99') FROM employees; SELECT TO_NUM(salary, '$999,999.00') FROM employees; SELECT TO_CHAR(salary, '$999,999.00') FROM employees; (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Correct

Section 2 Lesson 2 (Answer all questions in this section) 22. Which statement about group functions is true? Mark for Review (1) Points NVL and NVL2, but not COALESCE, can be used with group functions to replace null values. NVL and COALESCE, but not NVL2, can be used with group functions to replace null values. NVL, NVL2, and COALESCE can be used with group functions to replace null values. (*) COALESCE, but not NVL and NVL2, can be used with group functions to replace null values. Correct 23. The STYLES table contains this data: STYLE_ID STYLE_NAME CATEGORY COST 895840 SANDAL 85940 12.00 968950 SANDAL 85909 10.00 869506 SANDAL 89690 15.00 809090 LOAFER 89098 10.00 890890 LOAFER 89789 14.00 857689 HEEL 85940 11.00 758960 SANDAL 86979 Evaluate this SELECT statement: SELECT style_id, style_name, category, cost FROM styles WHERE style_name LIKE 'SANDAL' AND NVL(cost, 0) < 15.00 ORDER BY category, cost; Which result will the query provide?

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Mark for Review (1) Points STYLE_ID STYLE_NAME CATEGORY COST 895840 SANDAL 85940 12.00 968950 SANDAL 85909 10.00 758960 SANDAL 86979

STYLE_ID STYLE_NAME CATEGORY COST 895840 SANDAL 85909 12.00 968950 SANDAL 85909 10.00 869506 SANDAL 89690 15.00 758960 SANDAL 86979

STYLE_ID STYLE_NAME CATEGORY COST 895840 SANDAL 85909 12.00 968950 SANDAL 85909 10.00 758960 SANDAL 86979 869506 SANDAL 89690 15.00

STYLE_ID STYLE_NAME CATEGORY COST 968950 SANDAL 85909 10.00 895840 SANDAL 85940 12.00 758960 SANDAL 86979 (*)

Correct 24. You need to replace null values in the DEPT_ID column with the text "N/A". Which functions should you use? Mark for Review (1) Points TO_CHAR and NVL (*) TO_CHAR and NULL TO_CHAR and NULLIF TO_NUMBER and NULLIF

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Correct

Section 3 Lesson 2 (Answer all questions in this section) 25. Your have two tables named EMPLOYEES and SALES. You want to identify the sales representatives who have generated at least $100,000 in revenue. Which query should you issue? Mark for Review (1) Points SELECT e.fname, e.lname, s.sales FROM employees e, sales s WHERE e.emp_id = s.emp_id AND revenue > 100000; SELECT e.fname, e.lname, s.sales FROM employees e, sales s WHERE e.emp_id = s.emp_id AND revenue >= 100000; (*) SELECT e.fname, e.lname, s.sales FROM employees, sales WHERE e.emp_id = s.emp_id AND revenue >= 100000; SELECT fname, lname, sales Q FROM employees e, sales s WHERE e.emp_id = s.emp_id AND revenue > 100000;

Correct 26. What is produced when a join condition is not specified in a multiple-table query? Mark for Review (1) Points a self-join an outer join an equijoin a Cartesian product (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Correct 27. What happens when you create a Cartesian product? Mark for Review (1) Points All rows from one table are joined to all rows of another table (*) The table is joined to itself, one column to the next column, exhausting all possibilities The table is joined to another equal table All rows that do not match in the WHERE clause are displayed Correct 28. Which statement about the join syntax of a SELECT statement is true? Mark for Review (1) Points The ON keyword must be included. The JOIN keyword must be included. The FROM clause represents the join criteria. The WHERE clause represents the join criteria. (*) Correct 29. The CUSTOMERS and SALES tables contain these columns: CUSTOMERS CUST_ID NUMBER(10) PRIMARY KEY COMPANY VARCHAR2(30) LOCATION VARCHAR2(20) SALES SALES_ID NUMBER(5) PRIMARY KEY CUST_ID NUMBER(10) FOREIGN KEY TOTAL_SALES NUMBER(30) Which SELECT statement will return the customer ID, the company and the total sales?

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Mark for Review (1) Points SELECT c.cust_id, c.company, s.total_sales FROM customers c, sales s WHERE c.cust_id = s.cust_id (+); SELECT cust_id, company, total_sales FROM customers, sales WHERE cust_id = cust_id; SELECT c.cust_id, c.company, s.total_sales FROM customers c, sales s WHERE c.cust_id = s.cust_id; (*) SELECT cust_id, company, total_sales FROM customers c, sales s WHERE c.cust_id = s.cust_id;

Correct 30. You need to create a report that lists all employees in the Sales department who do not earn $25,000 per year. Which query should you issue to accomplish this task? Mark for Review (1) Points SELECT last_name, first_name, salary FROM employees WHERE salary > 25000 AND dept_id = 10; SELECT last_name, first_name, salary FROM employees WHERE salary = 25000 AND dept_id = 10; SELECT last_name, first_name, salary FROM employees WHERE salary <= 25000 AND dept_id = 10; SELECT last_name, first_name, salary

This watermark does not appear in the registered version - http://www.clicktoconvert.com

FROM employees WHERE salary != 25000 AND dept_id = 10; (*)

Correct

Page 3 of 10

Test: Mid Term Exam - Database Programming with SQL

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 3 Lesson 4 (Answer all questions in this section) 31. Which two operators can be used in an outer join condition using the outer join operator (+)? Mark for Review (1) Points AND and = (*) OR and = BETWEEN...AND... and IN IN and = Correct 32. Which operator would you use after one of the column names in the WHERE clause when creating an outer join? Mark for Review (1) Points (+) (*) *

This watermark does not appear in the registered version - http://www.clicktoconvert.com

+ = Correct 33. Which of the following best describes the function of an outer join? Mark for Review (1) Points An outer join will return only those rows that do not meet the join criteria. An outer join will return only data from the far left column in one table and the far right column in the other table. An outer join will return data only if both tables contain an identical pair of columns. An outer join will return all rows that meet the join criteria and will return NULL values from one table if no rows from the other table satisfy the join criteria. (*) Correct

Section 4 Lesson 2 (Answer all questions in this section) 34. You need to join all the rows in the EMPLOYEE table to all the rows in the EMP_REFERENCE table. Which type of join should you create? Mark for Review (1) Points An equijoin A cross join (*) An inner join A full outer join Correct 35. Which statement about a natural join is true? Mark for Review

This watermark does not appear in the registered version - http://www.clicktoconvert.com

(1) Points Columns with the same names must have identical data types. Columns with the same names must have the same precision and datatype. (*) Columns with the same names must have compatible data types. Columns with the same names cannot be included in the SELECT list of the query. Correct 36. A join between tables where the result set includes matching values from both tables but does NOT return any unmatched rows could be called which of the following? (Choose three) Mark for Review (1) Points (Choose all correct answers) Equijoin (*) Self join (*) Nonequijoin Simple join (*) full outer join Incorrect. Refer to Section 4

Section 4 Lesson 3 (Answer all questions in this section) 37. Evaluate this SELECT statement: SELECT a.lname || ', ' || a.fname as "Patient", b.lname || ', ' || b.fname as "Physician", c.admission FROM patient a JOIN physician b ON (b.physician_id = c.physician_id); JOIN admission c ON (a.patient_id = c.patient_id);

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Which clause generates an error? Mark for Review (1) Points JOIN physician b ON (b.physician_id = c.physician_id); (*) JOIN admission c ON (a.patient_id = c.patient_id) Correct 38. Which of the following statements is the simplest description of a nonequijoin? Mark for Review (1) Points A join condition containing something other than an equality operator (*) A join condition that is not equal to other joins. A join condition that includes the (+) on the left hand side. A join that joins a table to itself Correct 39. Which SELECT clause creates an equijoin by specifying a column name common to both tables? Mark for Review (1) Points A HAVING clause The FROM clause The SELECT clause A USING clause (*) Correct 40. For which condition would you use an equijoin query with the USING keyword? Mark for Review

This watermark does not appear in the registered version - http://www.clicktoconvert.com

(1) Points You need to perform a join of the CUSTOMER and ORDER tables but limit the number of columns in the join condition. (*) The ORDER table contains a column that has a referential constraint to a column in the PRODUCT table. The CUSTOMER and ORDER tables have no columns with identical names. The CUSTOMER and ORDER tables have a corresponding column, CUST_ID. The CUST_ID column in the ORDER table contains null values that need to be displayed. Correct

Page 4 of 10

Test: Mid Term Exam - Database Programming with SQL

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 4 Lesson 4 (Answer all questions in this section) 41. What should be included in a SELECT statement to return NULL values from all tables? Mark for Review (1) Points natural joins left outer joins full outer joins (*) right outer joins Incorrect. Refer to Section 4

This watermark does not appear in the registered version - http://www.clicktoconvert.com

42. Which two sets of join keywords create a join that will include unmatched rows from the first table specified in the SELECT statement? Mark for Review (1) Points LEFT OUTER JOIN and FULL OUTER JOIN (*) RIGHT OUTER JOIN and LEFT OUTER JOIN USING and HAVING OUTER JOIN and USING Correct 43. Which query will retrieve all the rows in the EMPLOYEES table, even if there is no match in the DEPARTMENTS table? Mark for Review (1) Points SELECT e.last_name, e.department_id, d.department_name FROM employees e RIGHT OUTER JOIN departments d ON (e.department_id = d.department_id); SELECT e.last_name, e.department_id, d.department_name FROM employees e NATURAL JOIN departments d; SELECT e.last_name, e.department_id, d.department_name FROM employees e LEFT OUTER JOIN departments d ON (e.department_id = d.department_id); (*) SELECT e.last_name, e.department_id, d.department_name FROM employees e JOIN departments d USING (e.department_id = d.department_id);

Correct

Section 5 Lesson 1

This watermark does not appear in the registered version - http://www.clicktoconvert.com

(Answer all questions in this section) 44. What will the following SQL Statement do? SELECT job_id, COUNT(*) FROM employees GROUP BY job_id; Mark for Review (1) Points Displays all the employees and groups them by job. Displays each job id and the number of people assigned to that job id. (*) Displays only the number of job_ids. Displays all the jobs with as many people as there are jobs. Correct 45. What is the best explanation as to why this SQL statement will NOT execute? SELECT department_id "Department", AVG (salary)"Average" FROM employees GROUP BY Department; Mark for Review (1) Points Salaries cannot be averaged as not all the numbers will divide evenly. You cannot use a column alias in the GROUP BY clause. (*) The GROUP BY clause must have something to GROUP. The department id is not listed in the departments table. Correct 46. Which statement about the GROUP BY clause is true? Mark for Review (1) Points The first column listed in the GROUP BY clause is the most major grouping. (*) The last column listed in the GROUP BY clause is the most major grouping. The GROUP BY clause can contain an aggregate function.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

A GROUP BY clause cannot be used without an ORDER BY clause. Correct 47. Group functions can be nested to a depth of? Mark for Review (1) Points three four two (*) Group functions cannot be nested. Correct

Section 5 Lesson 2 (Answer all questions in this section) 48. Which group functions below act on character, number and date data types? (Choose more than one answer) Mark for Review (1) Points (Choose all correct answers) SUM MAX (*) MIN (*) AVG COUNT (*) Correct 49. You need to calculate the standard deviation for the cost of products produced in the Birmingham facility. Which group function will you use? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

STDEV STDDEV (*) VAR_SAMP VARIANCE Correct 50. The CUSTOMER table contains these columns: CUSTOMER_ID NUMBER(9) FNAME VARCHAR2(25) LNAME VARCHAR2(30) CREDIT_LIMIT NUMBER (7,2) CATEGORY VARCHAR2(20) You need to calculate the average credit limit for all the customers in each category. The average should be calculated based on all the rows in the table excluding any customers who have not yet been assigned a credit limit value. Which group function should you use to calculate this value? Mark for Review (1) Points AVG (*) SUM COUNT STDDEV Correct

Page 5 of 10

Test: Mid Term Exam - Database Programming with SQL

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 5 Lesson 2 (Answer all questions in this section) 51. Which group function would you use to display the average price of all products in the PRODUCTS table? Mark for Review (1) Points SUM AVG (*) COUNT MAX Correct 52. Which group function would you use to display the highest salary value in the EMPLOYEE table? Mark for Review (1) Points AVG COUNT MAX (*) MIN Correct 53. Examine the data in the PAYMENT table: PAYMENT_ID CUSTOMER_ID PAYMENT_DATE PAYMENT_TYPE PAYMENT_AMOUNT 86590586 8908090 10-JUN-03 BASIC 859.00 89453485 8549038 15-FEB-03 INTEREST 596.00 85490345 5489304 20-MAR-03 BASIC 568.00 You need to determine the average payment amount made by each customer in January, February and March of 2003. Which SELECT statement should you use? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT AVG(payment_amount) FROM payment WHERE payment_date BETWEEN '01-JAN-2003' AND '31-MAR-2003'; (*) SELECT AVG(payment_amount) FROM payment; SELECT SUM(payment_amount) FROM payment WHERE payment_date BETWEEN '01-JAN-2003' and '31-MAR-2003'; SELECT AVG(payment_amount) FROM payment WHERE TO_CHAR(payment_date) IN (JAN, FEB, MAR);

Correct 54. The EMPLOYEES table contains these columns: EMPLOYEE_ID NUMBER(9) LAST_NAME VARCHAR2(20) FIRST_NAME VARCHAR2(20) SALARY NUMBER(9,2) HIRE_DATE DATE BONUS NUMBER(7,2) COMM_PCT NUMBER(4,2) Which three functions could be used with the HIRE_DATE, LAST_NAME, or SALARY columns? (Choose three.) Mark for Review (1) Points (Choose all correct answers) MAX (*) SUM AVG MIN (*) COUNT (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Correct 55. Group functions return a value for ________________ and ________________ null values in their computations. Mark for Review (1) Points a row set, ignore (*) each row, ignore a row set, include each row, include Correct

Section 5 Lesson 3 (Answer all questions in this section) 56. Which statement about the COUNT function is true? Mark for Review (1) Points The COUNT function ignores duplicates by default. The COUNT function always ignores null values by default. (*) The COUNT function can be used to find the maximum value in each column. The COUNT function can be used to determine the number of unique, non-null values in a column. Incorrect. Refer to Section 5 57. The EMPLOYEES table contains these columns: EMPLOYEE_ID NUMBER(9) LAST_NAME VARCHAR2(20) FIRST_NAME VARCHAR2(20) SALARY NUMBER(7,2) DEPARTMENT_ID NUMBER(9)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

You need to display the number of employees whose salary is greater than $50,000? Which SELECT would you use? Mark for Review (1) Points SELECT * FROM employees WHERE salary > 50000; SELECT * FROM employees WHERE salary < 50000; SELECT COUNT(*) FROM employees WHERE salary < 50000; SELECT COUNT(*) FROM employees WHERE salary > 50000; (*) SELECT COUNT(*) FROM employees WHERE salary > 50000 GROUP BY employee_id, last_name, first_name, salary, department_id;

Correct 58. Group functions can avoid computations involving duplicate values by including which keyword? Mark for Review (1) Points NULL DISTINCT (*) SELECT UNLIKE Correct 59. Examine the data from the LINE_ITEM table: LINE_ITEM_ID ORDER_ID PRODUCT_ID PRICE DISCOUNT 890898 847589 848399 8.99 0.10

This watermark does not appear in the registered version - http://www.clicktoconvert.com

768385 867950 954039 543949

862459 985490 439203 349302

849869 945809 438925 453235

5.60 0.05 5.60 5.25 0.15 4.50

You query the LINE_ITEM table and a value of 5 is returned. Which SQL statement did you execute? Mark for Review (1) Points SELECT COUNT(discount) FROM line_item; SELECT COUNT(*) FROM line_item; (*) SELECT SUM(discount) FROM line_item; SELECT AVG(discount) FROM line_item; Correct

Section 6 Lesson 1 (Answer all questions in this section) 60. The PRODUCTS table contains these columns: PRODUCT_ID NUMBER(9) PK CATEGORY_ID VARCHAR2(10) LOCATION_ID NUMBER(9) DESCRIPTION VARCHAR2(30) COST NUMBER(7,2) PRICE NUMBER(7,2) QUANTITY NUMBER You display the total of the extended costs for each product category by location. You need to include only the products that have a price less than $25.00. The extended cost of each item equals the quantity value multiplied by the cost value. Which SQL statement will display the desired result? Mark for Review (1) Points SELECT category_id, SUM(cost * quantity) TOTAL,location_id FROM products WHERE price > 25.00 GROUP BY category_id, location_id;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT SUM(cost * quantity) TOTAL, location_id FROM products WHERE price < 25.00 GROUP BY location_id; SELECT category_id, SUM(cost * quantity) TOTAL, location_id FROM products WHERE price < 25.00 GROUP BY category_id, location_id; (*) SELECT SUM(cost * quantity) TOTAL FROM products WHERE price < 25.00;

Incorrect. Refer to Section 6

Page 6 of 10

Test: Mid Term Exam - Database Programming with SQL

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 6 Lesson 1 (Answer all questions in this section) 61. Evaluate this SELECT statement: SELECT SUM(salary), dept_id FROM employee GROUP BY dept_id; How are the results of this statement sorted? Mark for Review (1) Points Ascending order by dept_id (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Descending order by dept_id Ascending order by cumulative salary Descending order by cumulative salary Correct 62. The PLAYERS table contains these columns: PLAYER_ID NUMBER PK PLAYER_NAME VARCHAR2 (30) TEAM_ID NUMBER HIRE_DATE DATE SALARY NUMBER (8,2) Which two clauses represent valid uses of aggregate functions? (Choose three.) Mark for Review (1) Points (Choose all correct answers) ORDER BY AVG(salary) GROUP BY MAX(salary) (*) SELECT AVG(NVL(salary, 0)) (*) HAVING MAX(salary) > 10000 (*) WHERE hire_date > AVG(hire_date) Correct 63. Evaluate this SELECT statement: SELECT SUM(salary), dept_id, mgr_id FROM employee GROUP BY dept_id, mgr_id; Which SELECT statement clause allows you to restrict the rows returned, based on a group function? Mark for Review (1) Points HAVING SUM(salary) > 100000 (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

WHERE SUM(salary) > 100000 WHERE salary > 100000 HAVING salary > 100000 Incorrect. Refer to Section 6 64. The MANUFACTURER table contains these columns: MANUFACTURER_ID NUMBER MANUFACTURER_NAME VARCHAR2(30) TYPE VARCHAR2(25) LOCATION_ID NUMBER You need to display the number of unique types of manufacturers at each location. Which SELECT statement should you use? Mark for Review (1) Points SELECT location_id, COUNT(DISTINCT type) FROM manufacturer GROUP BY location_id; (*) SELECT location_id, COUNT(DISTINCT type) FROM manufacturer; SELECT location_id, COUNT(type) FROM manufacturer GROUP BY location_id; SELECT location_id, COUNT(DISTINCT type) FROM manufacturer GROUP BY type;

Incorrect. Refer to Section 6 65. Evaluate this SELECT statement: SELECT SUM(salary), dept_id, department_name FROM employee WHERE dept_id = 1 GROUP BY department;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Which clause of the SELECT statement contains a syntax error? Mark for Review (1) Points SELECT FROM WHERE GROUP BY (*) Incorrect. Refer to Section 6 66. Which statement about the GROUP BY clause is true? Mark for Review (1) Points To exclude rows before dividing them into groups using the GROUP BY clause, you use should a WHERE clause. (*) You can use a column alias in a GROUP BY clause. By default, rows are not sorted when a GROUP BY clause is used. You must use the HAVING clause with the GROUP BY clause. Correct 67. The PAYMENT table contains these columns: PAYMENT_ID NUMBER(9) PK PAYMENT_DATE DATE CUSTOMER_ID NUMBER(9) Which SELECT statement could you use to display the number of times each customer made a payment between January 1, 2003 and June 30, 2003 ? Mark for Review (1) Points SELECT customer_id, COUNT(payment_id) FROM payment WHERE payment_date BETWEEN '01-JAN-2003' AND '30-JUN-2003' GROUP BY customer_id; (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT COUNT(payment_id) FROM payment WHERE payment_date BETWEEN '01-JAN-2003' AND '30-JUN-2003'; SELECT customer_id, COUNT(payment_id) FROM payment WHERE payment_date BETWEEN '01-JAN-2003' AND '30-JUN-2003'; SELECT COUNT(payment_id) FROM payment WHERE payment_date BETWEEN '01-JAN-2003' AND '30-JUN-2003' GROUP BY customer_id;

Incorrect. Refer to Section 6

Section 6 Lesson 2 (Answer all questions in this section) 68. Which statement about subqueries is true? Mark for Review (1) Points Subqueries should be enclosed in double quotation marks. Subqueries cannot contain group functions. Subqueries are often used in a WHERE clause to return values for an unknown conditional value. (*) Subqueries generally execute last, after the main or outer query executes. Correct 69. Which operator can be used with subqueries that return only one row? Mark for Review (1) Points LIKE (*) ANY ALL

This watermark does not appear in the registered version - http://www.clicktoconvert.com

IN Correct 70. If you use the equality operator (=) with a subquery, how many values can the subquery return? Mark for Review (1) Points only 1 (*) up to 2 up to 5 unlimited Correct

Page 7 of 10

Test: Mid Term Exam - Database Programming with SQL

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 6 Lesson 2 (Answer all questions in this section) 71. You need to display all the players whose salaries are greater than or equal to John Brown's salary. Which comparison operator should you use? Mark for Review (1) Points = > <=

This watermark does not appear in the registered version - http://www.clicktoconvert.com

>= (*) Correct 72. Examine the structures of the CUSTOMER and ORDER_HISTORY tables: CUSTOMER CUSTOMER_ID NUMBER(5) NAME VARCHAR2(25) CREDIT_LIMIT NUMBER(8,2) OPEN_DATE DATE ORDER_HISTORY ORDER_ID NUMBER(5) CUSTOMER_ID NUMBER(5) ORDER_DATE DATE TOTAL NUMBER(8,2) Which of the following scenarios would require a subquery to return the desired results? Mark for Review (1) Points You need to display the date each customer account was opened. You need to display each date that a customer placed an order. You need to display all the orders that were placed on a certain date. You need to display all the orders that were placed on the same day as order number 25950. (*) Correct

Section 6 Lesson 3 (Answer all questions in this section) 73. You need to produce a report that contains all employee-related information for those employees who have Brad Carter as a supervisor. However, you are not sure which supervisor ID belongs to Brad Carter. Which query should you issue to accomplish this task? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT * FROM employees WHERE supervisor_id = (SELECT supervisor_id FROM employees WHERE last_name = 'Carter'); SELECT * FROM supervisors WHERE supervisor_id = (SELECT supervisor_id FROM employees WHERE last_name = 'Carter'); SELECT * FROM supervisors WHERE supervisor_id = (SELECT employee_id FROM supervisors WHERE last_name = 'Carter'); SELECT * FROM employees WHERE supervisor_id = (SELECT employee_id FROM employees WHERE last_name = 'Carter'); (*)

Correct 74. Examine the structure of the EMPLOYEE, DEPARTMENT, and ORDERS tables. EMPLOYEE EMPLOYEE_ID NUMBER(9) LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25) DEPARTMENT_ID NUMBER(9) DEPARTMENT DEPARTMENT_ID NUMBER(9) DEPARTMENT_NAME VARCHAR2(25) CREATION_DATE DATE

This watermark does not appear in the registered version - http://www.clicktoconvert.com

ORDERS ORDER_ID NUMBER(9) EMPLOYEE_ID NUMBER(9) DATE DATE CUSTOMER_ID NUMBER(9) You want to display all employees who had an order after the Sales department was established. Which of the following constructs would you use? Mark for Review (1) Points a group function a single-row subquery (*) the HAVING clause a MERGE statement Incorrect. Refer to Section 6 75. Which best describes a single-row subquery? Mark for Review (1) Points a query that returns only one row from the inner SELECT statement (*) a query that returns one or more rows from the inner SELECT statement a query that returns only one column value from the inner SELECT statement a query that returns one or more column values from the inner SELECT statement Correct

Section 6 Lesson 4 (Answer all questions in this section) 76. Evaluate this SELECT statement: SELECT customer_id, name FROM customer WHERE customer_id IN (SELECT customer_id FROM customer WHERE state_id = 'GA' AND credit_limit > 500.00);

This watermark does not appear in the registered version - http://www.clicktoconvert.com

What would happen if the inner query returned null? Mark for Review (1) Points An error would be returned. No rows would be returned by the outer query. (*) All the rows in the table would be selected. Only the rows with CUSTOMER_ID values equal to null would be selected. Correct 77. Which of the following best describes the meaning of the ANY operator? Mark for Review (1) Points Equal to any member in the list Compare value to each value returned by the subquery (*) Compare value to every value returned by the subquery Equal to each value in the list Correct 78. Which of the following statements contains a comparison operator that is used to restrict rows based on a list of values returned from an inner query? Mark for Review (1) Points SELECT description FROM d_types WHERE code IN (SELECT type_code FROM d_songs); SELECT description FROM d_types WHERE code = ANY (SELECT type_code FROM d_songs); SELECT description FROM d_types

This watermark does not appear in the registered version - http://www.clicktoconvert.com

WHERE code <> ALL (SELECT type_code FROM d_songs); All of the above. (*) Correct 79. Examine the data in the PAYMENT table: PAYMENT_ID CUSTOMER_ID PAYMENT_DATE PAYMENT_TYPE PAYMENT_AMOUNT 86590586 8908090 10-JUN-03 BASIC 859.00 89453485 8549038 15-FEB-03 INTEREST 596.00 85490345 5489304 20-MAR-03 BASIC 568.00 This statement fails when executed: SELECT customer_id, payment_type FROM payment WHERE payment_id = (SELECT payment_id FROM payment WHERE payment_amount = 596.00 OR payment_date = '20-MAR-2003'); Which change could correct the problem? Mark for Review (1) Points Change the outer query WHERE clause to 'WHERE payment_id IN'. (*) Remove the quotes surrounding the date value in the OR clause. Remove the parentheses surrounding the nested SELECT statement. Change the comparison operator to a single-row operator. Correct 80. What is wrong with the following query? SELECT employee_id, last_name FROM employees WHERE salary = (SELECT MIN(salary) FROM employees GROUP BY department_id); Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Single rows contain multiple values and a logical operator is used. Subquery returns more than one row and single row comparison operator is used. (*) Subquery references the wrong table in the WHERE clause. Nothing, it will run without problems. Correct

Page 8 of 10

Test: Mid Term Exam - Database Programming with SQL

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 6 Lesson 4 (Answer all questions in this section) 81. Evaluate this SELECT statement: SELECT player_id, name FROM players WHERE team_id IN (SELECT team_id FROM teams WHERE team_id > 300 AND salary_cap > 400000); What would happen if the inner query returned a NULL value? Mark for Review (1) Points No rows would be returned by the outer query. (*) A syntax error in the outer query would be returned. A syntax error in the inner query would be returned.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

All the rows in the PLAYER table would be returned by the outer query. Correct 82. Evaluate this SELECT statement that includes a subquery: SELECT last_name, first_name FROM customer WHERE area_code IN (SELECT area_code FROM sales WHERE salesperson_id = 20); Which statement is true about the given subquery? Mark for Review (1) Points The outer query executes before the nested subquery. The results of the inner query are returned to the outer query. (*) An error occurs if the either the inner or outer queries do not return a value. Both the inner and outer queries must return a value, or an error occurs. Correct 83. Which statement about single-row and multiple-row subqueries is true? Mark for Review (1) Points Multiple-row subqueries cannot be used with the LIKE operator. (*) Single-row operators can be used with both single-row and multiple-row subqueries. Multiple-row subqueries can be used with both single-row and multiple-row operators. Multiple-row subqueries can only be used in SELECT statements. Correct 84. You need to create a SELECT statement that contains a multiple-row subquery, which comparison operator(s) can you use? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

IN, ANY, and ALL (*) LIKE BETWEEN...AND... =, <, and > Correct 85. Which statement about the ANY operator when used with a multiple-row subquery is true? Mark for Review (1) Points The ANY operator compares every value returned by the subquery. (*) The ANY operator can be used with the DISTINCT keyword. The ANY operator is a synonym for the ALL operator. The ANY operator can be used with the LIKE and IN operators. Correct 86. What would happen if you attempted to use a single-row operator with a multiple-row subquery? Mark for Review (1) Points An error would be returned. (*) No rows will be selected. All the rows will be selected. The data returned may or may not be correct. Correct

Section 7 Lesson 1 (Answer all questions in this section)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

87. You need to copy rows from the EMPLOYEE table to the EMPLOYEE_HIST table. What could you use in the INSERT statement to accomplish this task? Mark for Review (1) Points an ON clause a SET clause a subquery (*) a function Correct 88. The PRODUCTS table contains these columns: PRODUCT_ID NUMBER NOT NULL PRODUCT_NAME VARCHAR2 (25) SUPPLIER_ID NUMBER NOT NULL LIST_PRICE NUMBER (7,2) COST NUMBER (5,2) QTY_IN_STOCK NUMBER(4) LAST_ORDER_DT DATE NOT NULL DEFAULT SYSDATE Which INSERT statement will execute successfully? Mark for Review (1) Points INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, 700); (*) INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, SYSDATE); INSERT INTO products(product_id, product_name) VALUES (2958, 'Cable'); INSERT INTO products(product_id, product_name, supplier_id VALUES (2958, 'Cable', 8690, SYSDATE); Correct 89. You have been instructed to add a new customer to the CUSTOMERS table. Because the new customer has not had a credit check, you should not add an amount to the CREDIT column. The CUSTOMERS table contains these columns: CUST_ID NUMBER(10) COMPANY VARCHAR2(30)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

CREDIT NUMBER(10) POC VARCHAR2(30) LOCATION VARCHAR2(30) Which two INSERT statements will accomplish your objective? Mark for Review (1) Points (Choose all correct answers) INSERT INTO customers (cust_id, company, poc, location) VALUES (200, 'InterCargo', 'tflanders', 'samerica'); (*) INSERT INTO customers VALUES (200, 'InterCargo', null, 'tflanders', 'samerica'); (*) INSERT INTO customers VALUES (cust_id, company, credit, poc, location) (200, 'InterCargo', 0, 'tflanders', 'samerica'); INSERT INTO customers VALUES (200, InterCargo, 0, tflanders, samerica);

Correct 90. Assume all the column names are correct. The following SQL statement will execute which of the following? INSERT INTO departments (department_id, department_name, manager_id, location_id) VALUES (70, 'Public Relations', 100, 1700); Mark for Review (1) Points 100 will be inserted into the department_id column 1700 will be inserted into the manager_id column 70 will be inserted into the department_id column (*) 'Public Relations' will be inserted into the manager_name column

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Correct

Page 9 of 10

Test: Mid Term Exam - Database Programming with SQL

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 7 Lesson 2 (Answer all questions in this section) 91. You need to remove a row from the EMPLOYEE table. Which statement would you use? Mark for Review (1) Points UPDATE with a WHERE clause INSERT with a WHERE clause DELETE with a WHERE clause (*) MERGE with a WHERE clause Correct 92. One of your employees was recently married. Her employee ID is still 189, however, her last name is now Rockefeller. Which SQL statement will allow you to reflect this change? Mark for Review (1) Points INSERT INTO my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189; INSERT my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

UPDATE INTO my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189; UPDATE my_employees SET last_name = 'Rockefeller' WHERE employee_ID = 189; (*) Correct 93. You want to enter a new record into the CUSTOMERS table. Which two commands can be used to create new rows? Mark for Review (1) Points INSERT, CREATE MERGE, CREATE INSERT, MERGE (*) INSERT, UPDATE Correct 94. The EMPLOYEES table contains the following columns: EMP_ID NUMBER(10) PRIMARY KEY LNAME VARCHAR2(20) FNAME VARCHAR2(20) DEPT VARCHAR2(20) HIRE_DATE DATE SALARY NUMBER(9,2) BONUS NUMBER(9,2) You need to increase the salary for all employees in department 10 by 10 percent. You also need to increase the bonus for all employees in department 10 by 15 percent. Which statement should you use? Mark for Review (1) Points UPDATE employees SET salary = salary * 1.10, bonus = bonus * 1.15 WHERE dept = 10; (*) UPDATE employees SET salary = salary * 1.10 AND bonus = bonus * 1.15 WHERE dept = 10;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

UPDATE employees SET (salary = salary * 1.10) SET (bonus = bonus * 1.15) WHERE dept = 10; UPDATE employees SET salary = salary * .10, bonus = bonus * .15 WHERE dept = 10;

Incorrect. Refer to Section 7 95. One of the sales representatives, Janet Roper, has informed you that she was recently married, and she has requested that you update her name in the employee database. Her new last name is Cooper. Janet is the only person with the last name of Roper that is employed by the company. The EMPLOYEES table contains these columns and all data is stored in lowercase: EMP_ID NUMBER(10) PRIMARY KEY LNAME VARCHAR2(20) FNAME VARCHAR2(20) DEPT VARCHAR2 (20) HIRE_DATE DATE SALARY NUMBER(10) Which UPDATE statement will accomplish your objective? Mark for Review (1) Points UPDATE employees SET lname = 'cooper' WHERE lname = 'roper'; (*) UPDATE employees lname = 'cooper' WHERE lname = 'roper'; UPDATE employees SET lname = 'roper' WHERE lname = 'cooper'; UPDATE employees SET cooper = 'lname' WHERE lname = 'roper';

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Correct 96. What would happen if you issued a DELETE statement without a WHERE clause? Mark for Review (1) Points All the rows in the table would be deleted. (*) An error message would be returned. No rows would be deleted. Only one row would be deleted. Correct 97. Which of the following represents the correct syntax for an INSERT statement? Mark for Review (1) Points INSERT VALUES INTO customers (3178 J. Smith 123 Main Street Nashville TN 37777; INSERT INTO customers VALUES '3178' 'J.' 'Smith' '123 Main Street' 'Nashville' 'TN' '37777'; INSERT INTO customers VALUES ('3178', 'J.', 'Smith', '123 Main Street', 'Nashville', 'TN', '37777'); (*) INSERT customers VALUES 3178, J., Smith, 123 Main Street, Nashville, TN, 37777; Correct 98. The PLAYERS table contains these columns: PLAYER_ID NUMBER NOT NULL PLAYER_LNAME VARCHAR2(20) NOT NULL PLAYER_FNAME VARCHAR2(10) NOT NULL TEAM_ID NUMBER SALARY NUMBER(9,2)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

You need to increase the salary of each player for all players on the Tiger team by 12.5 percent. The TEAM_ID value for the Tiger team is 5960. Which statement should you use? Mark for Review (1) Points UPDATE players (salary) SET salary = salary * 1.125; UPDATE players SET salary = salary * .125 WHERE team_id = 5960; UPDATE players SET salary = salary * 1.125 WHERE team_id = 5960; (*) UPDATE players (salary) VALUES(salary * 1.125) WHERE team_id = 5960; Correct 99. You need to update the expiration date of products manufactured before June 30th . In which clause of the UPDATE statement will you specify this condition? Mark for Review (1) Points the ON clause the WHERE clause (*) the SET clause the USING clause Correct 100. You need to delete a record in the EMPLOYEES table for Tim Jones, whose unique employee identification number is 348. The EMPLOYEES table contains these columns: ID_NUM NUMBER(5) PRIMARY KEY LNAME VARCHAR2(20) FNAME VARCHAR2(20) ADDRESS VARCHAR2(30) PHONE NUMBER(10) Which DELETE statement will delete the appropriate record without deleting any additional records? Mark for Review (1) Points DELETE FROM employees WHERE id_num = 348; (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

DELETE FROM employees WHERE lname = jones; DELETE * FROM employees WHERE id_num = 348; DELETE 'jones' FROM employees; Correct

Page 10 of 10

1. Which SQL function can be used to remove heading or trailing characters (or both) from a character string? Mark for Review (1) Points LPAD CUT NVL2 TRIM (*) Correct

2. Which three statements about functions are true? (Choose three.) Mark for Review (1) Points (Choose all correct answers) The SYSDATE function returns the Oracle Server date and time. (*) The ROUND number function rounds a value to a specified decimal place or the nearest whole number. (*) The CONCAT function can only be used on character strings, not on numbers. The SUBSTR character function returns a portion of a string beginning at a defined character position to a specified length. (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Correct You query the database with this SQL statement: SELECT LOWER(SUBSTR(CONCAT(last_name, first_name)), 1, 5) "ID" FROM employee; In which order are the functions evaluated? Mark for Review (1) Points LOWER, SUBSTR, CONCAT LOWER, CONCAT, SUBSTR SUBSTR, CONCAT, LOWER CONCAT, SUBSTR, LOWER (*) Correct 4. The STYLES table contains this data: STYLE_ID STYLE_NAME CATEGORY COST 895840 SANDAL 85940 12.00 968950 SANDAL 85909 10.00 869506 SANDAL 89690 15.00 809090 LOAFER 89098 10.00 890890 LOAFER 89789 14.00 857689 HEEL 85940 11.00 758960 SANDAL 86979 11.00 You query the database and return the value 40. Which script did you use? Mark for Review (1) Points SELECT INSTR(category, 2,2) FROM styles WHERE style_id = 895840; SELECT INSTR(category, -2,2) FROM styles WHERE style_id = 895840;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT SUBSTR(category, 2,2) FROM styles WHERE style_id = 895840; (*) SELECT SUBSTR(category, -2,2) FROM styles WHERE style_id = 758960;

Correct You issue this SQL statement: SELECT INSTR ('organizational sales', 'al') FROM dual; Which value is returned by this command? Mark for Review (1) Points 1 2 13 (*) 17 Correct 6. You need to display the number of characters in each customer's last name. Which function should you use? Mark for Review (1) Points LENGTH (*) LPAD COUNT SUBSTR Correct

This watermark does not appear in the registered version - http://www.clicktoconvert.com

7. What will the following SQL statemtent display? SELECT last_name, LPAD(salary, 15, '$')SALARY FROM employees; Mark for Review (1) Points The last name of employees that have a salary that includes a $ in the value, size of 15 and the column labeled SALARY. The last name and the format of the salary limited to 15 digits to the left of the decimal and the column labeled SALARY. The last name and salary for all employees with the format of the salary 15 characters long, left-padded with the $ and the column labeled SALARY. (*) The query will result in an error: "ORA-00923: FROM keyword not found where expected." Correct . You issue this SQL statement: SELECT ROUND (1282.248, -2) FROM dual; What value does this statement produce? Mark for Review (1) Points 1200 1282 1282.25 1300 (*) Correct 9. Evaluate this function: MOD (25, 2) Which value is returned? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

1 (*) 2 25 0 Correct 10. Which comparison operator retrieves a list of values? Mark for Review (1) Points IN (*) LIKE BETWEEN...IN... IS NULL Incorrect. Refer to Section 1 Lesson 1 11. Which function would you use to return the current database server date and time? Mark for Review (1) Points DATE SYSDATE (*) DATETIME CURRENTDATE Correct 12. You need to display the number of months between today's date and each employee's hiredate. Which function should you use? Mark for Review (1) Points ROUND BETWEEN ADD_MONTHS

This watermark does not appear in the registered version - http://www.clicktoconvert.com

MONTHS_BETWEEN (*) Correct 13. You need to subtract three months from the current date. Which function should you use? Mark for Review (1) Points ROUND TO_DATE ADD_MONTHS (*) MONTHS_BETWEEN Incorrect. Refer to Section 1 14. Which of the following Date Functions will add calendar months to a date? Mark for Review (1) Points Months + Calendar (Month) ADD_MONTHS (*) MONTHS + Date NEXT_MONTH Correct 15. Evaluate this SELECT statement: SELECT SYSDATE + 30 FROM dual; Which value is returned by the query? Mark for Review (1) Points the current date plus 30 hours the current date plus 30 days (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

the current date plus 30 months No value is returned because the SELECT statement generates an error. Incorrect. Refer to Section 1 16. Which SQL Statement should you use to display the prices in this format: "$00.30"? Mark for Review (1) Points SELECT TO_CHAR(price, '$99,900.99') FROM product; (*) SELECT TO_CHAR(price, "$99,900.99") FROM product; SELECT TO_CHAR(price, '$99,990.99') FROM product; SELECT TO_NUMBER(price, '$99,900.99') FROM product; Correct 17. All Human Resources data is stored in a table named EMPLOYEES. You have been asked to create a report that displays each employee's name and salary. Each employee's salary must be displayed in the following format: $000,000.00. Which function should you include in a SELECT statement to achieve the desired result? Mark for Review (1) Points TO_CHAR (*) TO_DATE TO_NUMBER CHARTOROWID Incorrect. Refer to Section 2 18. The EMPLOYEES table contains these columns: EMPLOYEE_ID NUMBER(9) LAST_NAME VARCHAR2 (25) FIRST_NAME VARCHAR2 (25) HIRE_DATE DATE You need to display HIRE_DATE values in this format:

This watermark does not appear in the registered version - http://www.clicktoconvert.com

January 28, 2000 Which SELECT statement could you use? Mark for Review (1) Points SELECT TO_CHAR(hire_date, Month DD, YYYY) FROM employees; SELECT TO_CHAR(hire_date, 'Month DD, YYYY') FROM employees; (*) SELECT hire_date(TO_CHAR 'Month DD', ' YYYY') FROM employees; SELECT TO_CHAR(hire_date, 'Month DD', ' YYYY') FROM employees;

Incorrect. Refer to Section 2 19. Which two statements concerning SQL functions are true? (Choose two.) Mark for Review (1) Points (Choose all correct answers) Character functions can accept numeric input. Not all date functions return date values. (*) Number functions can return number or character values. Conversion functions convert a value from one data type to another data type. (*) Single-row functions manipulate groups of rows to return one result per group of rows. Incorrect. Refer to Section 2 20. The EMPLOYEES table contains these columns:

This watermark does not appear in the registered version - http://www.clicktoconvert.com

EMPLOYEE_ID NUMBER(9) LAST_NAME VARCHAR2 (25) FIRST_NAME VARCHAR2 (25) SALARY NUMBER(6) You need to create a report to display the salaries of all employees. Which script should you use to display the salaries in format: "$45,000.00"? Mark for Review (1) Points SELECT TO_CHAR(salary, '$999,999') FROM employees; SELECT TO_NUM(salary, '$999,990.99') FROM employees; SELECT TO_NUM(salary, '$999,999.00') FROM employees; SELECT TO_CHAR(salary, '$999,999.00') FROM employees; (*)

Incorrect. Refer to Section 2 21. If you use the RR format when writing a query using the date 27-OCT-17 and the year is 2001, what year would be the result? Mark for Review (1) Points 2001 1901 2017 (*) 1917 Correct 22. Which of the following General Functions will return the first non-null expression in the expression list? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

NVL NVL2 NULLIF COALESCE (*) Correct 23. When executed, which statement displays a zero if the TUITION_BALANCE value is zero and the HOUSING_BALANCE value is null? Mark for Review (1) Points SELECT NVL (tuition_balance + housing_balance, 0) "Balance Due" FROM student_accounts; (*) SELECT NVL(tuition_balance, 0), NVL (housing_balance), tuition_balance + housing_balance "Balance Due" FROM student_accounts; SELECT tuition_balance + housing_balance FROM student_accounts; SELECT TO_NUMBER(tuition_balance, 0), TO_NUMBER (housing_balance, 0), tutition_balance + housing_balance "Balance Due" FROM student_accounts;

Incorrect. Refer to Section 2 24. Which statement about group functions is true? Mark for Review (1) Points NVL and NVL2, but not COALESCE, can be used with group functions to replace null values. NVL and COALESCE, but not NVL2, can be used with group functions to replace null values. NVL, NVL2, and COALESCE can be used with group functions to replace null values. (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

COALESCE, but not NVL and NVL2, can be used with group functions to replace null values. Correct 25. When joining 3 tables in a SELECT statement, how many join conditions are needed in the WHERE clause? Mark for Review (1) Points 0 1 2 (*) 3 Correct 26. You need to create a report that lists all employees in the Sales department who do not earn $25,000 per year. Which query should you issue to accomplish this task? Mark for Review (1) Points SELECT last_name, first_name, salary FROM employees WHERE salary > 25000 AND dept_id = 10; SELECT last_name, first_name, salary FROM employees WHERE salary = 25000 AND dept_id = 10; SELECT last_name, first_name, salary FROM employees WHERE salary <= 25000 AND dept_id = 10; SELECT last_name, first_name, salary FROM employees WHERE salary != 25000 AND dept_id = 10; (*)

Correct

This watermark does not appear in the registered version - http://www.clicktoconvert.com

27. The CUSTOMERS and SALES tables contain these columns: CUSTOMERS CUST_ID NUMBER(10) PRIMARY KEY COMPANY VARCHAR2(30) LOCATION VARCHAR2(20) SALES SALES_ID NUMBER(5) PRIMARY KEY CUST_ID NUMBER(10) FOREIGN KEY TOTAL_SALES NUMBER(30) Which SELECT statement will return the customer ID, the company and the total sales? Mark for Review (1) Points SELECT c.cust_id, c.company, s.total_sales FROM customers c, sales s WHERE c.cust_id = s.cust_id (+); SELECT cust_id, company, total_sales FROM customers, sales WHERE cust_id = cust_id; SELECT c.cust_id, c.company, s.total_sales FROM customers c, sales s WHERE c.cust_id = s.cust_id; (*) SELECT cust_id, company, total_sales FROM customers c, sales s WHERE c.cust_id = s.cust_id;

Correct 28. Your have two tables named EMPLOYEES and SALES. You want to identify the sales representatives who have generated at least $100,000 in revenue. Which query should you issue? Mark for Review (1) Points SELECT e.fname, e.lname, s.sales FROM employees e, sales s WHERE e.emp_id = s.emp_id AND revenue > 100000;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT e.fname, e.lname, s.sales FROM employees e, sales s WHERE e.emp_id = s.emp_id AND revenue >= 100000; (*) SELECT e.fname, e.lname, s.sales FROM employees, sales WHERE e.emp_id = s.emp_id AND revenue >= 100000; SELECT fname, lname, sales Q FROM employees e, sales s WHERE e.emp_id = s.emp_id AND revenue > 100000;

Correct 29. What happens when you create a Cartesian product? Mark for Review (1) Points All rows from one table are joined to all rows of another table (*) The table is joined to itself, one column to the next column, exhausting all possibilities The table is joined to another equal table All rows that do not match in the WHERE clause are displayed Incorrect. Refer to Section 30. Which statement about the join syntax of a SELECT statement is true? Mark for Review (1) Points The ON keyword must be included. The JOIN keyword must be included. The FROM clause represents the join criteria. The WHERE clause represents the join criteria. (*) Incorrect. Refer to Section 3

This watermark does not appear in the registered version - http://www.clicktoconvert.com

31. Which statement about outer joins is true? Mark for Review (1) Points The tables must be aliased. The FULL, RIGHT, or LEFT keyword must be included. The OR operator cannot be used to link outer join conditions. (*) Outer joins are always evaluated before other types of joins in the query. Correct 32. Evaluate this SELECT statement: SELECT p.player_id, m.last_name, m.first_name, t.team_name FROM player p LEFT OUTER JOIN player m ON (p.manager_id = m.player_id) LEFT OUTER JOIN team t ON (p.team_id = t.team_id); Which join is evaluated first? Mark for Review (1) Points the self-join of the player table (*) the join between the player table and the team table on TEAM_ID the join between the player table and the team table on MANAGER_ID the join between the player table and the team table on PLAYER_ID Correct 33. Which two operators can be used in an outer join condition using the outer join operator (+)? Mark for Review (1) Points AND and = (*) OR and = BETWEEN...AND... and IN IN and = Incorrect. Refer to Section 3

This watermark does not appear in the registered version - http://www.clicktoconvert.com

34. Which statement about a natural join is true? Mark for Review (1) Points Columns with the same names must have identical data types. Columns with the same names must have the same precision and datatype. (*) Columns with the same names must have compatible data types. Columns with the same names cannot be included in the SELECT list of the query. Incorrect. Refer to Section 4 35. You need to join all the rows in the EMPLOYEE table to all the rows in the EMP_REFERENCE table. Which type of join should you create? Mark for Review (1) Points An equijoin A cross join (*) An inner join A full outer join Incorrect. Refer to Section 4 36. Which of the following best describes a natural join? Mark for Review (1) Points A join between two tables that includes columns that share the same name, datatypes and lengths (*) A join that produces a Cartesian product A join between tables where matching fields do not exist A join that uses only one table Correct 37. Which SELECT clause creates an equijoin by specifying a column name common to both tables? Mark for Review (1) Points A HAVING clause

This watermark does not appear in the registered version - http://www.clicktoconvert.com

The FROM clause The SELECT clause A USING clause (*) Correct 38. Which of the following statements is the simplest description of a nonequijoin? Mark for Review (1) Points A join condition containing something other than an equality operator (*) A join condition that is not equal to other joins. A join condition that includes the (+) on the left hand side. A join that joins a table to itself Incorrect. Refer to Section 4 39. You created the CUSTOMERS and ORDERS tables by issuing these CREATE TABLE statements in sequence: CREATE TABLE customers (custid varchar2(5), companyname varchar2(30), contactname varchar2(30), address varchar2(30), city varchar2(20), state varchar2(30), phone varchar2(20), constraint pk_customers_01 primary key (custid)); CREATE TABLE orders (orderid varchar2(5) constraint pk_orders_01 primary key, orderdate date, total number(15), custid varchar2(5) references customers (custid)); You have been instructed to compile a report to present the information about orders placed by customers who reside in Nashville . Which query should you issue to achieve the desired results? Mark for Review (1) Points SELECT custid, companyname

This watermark does not appear in the registered version - http://www.clicktoconvert.com

FROM customers WHERE city = 'Nashville'; SELECT orderid, orderdate, total FROM orders o NATURAL JOIN customers c ON o.custid = c.custid WHERE city = 'Nashville'; SELECT orderid, orderdate, total FROM orders o JOIN customers c ON o.custid = c.custid WHERE city = 'Nashville'; (*) SELECT orderid, orderdate, total FROM orders WHERE city = 'Nashville';

Correct 40. Below find the structure of the CUSTOMERS and SALES_ORDER tables: CUSTOMERS CUSTOMER_ID NUMBER NOT NULL, Primary Key CUSTOMER_NAME VARCHAR2 (30) CONTACT_NAME VARCHAR2 (30) CONTACT_TITLE VARCHAR2 (20) ADDRESS VARCHAR2 (30) CITY VARCHAR2 (25) REGION VARCHAR2 (10) POSTAL_CODE VARCHAR2 (20) COUNTRY_ID NUMBER Foreign key to COUNTRY_ID column of the COUNTRY table PHONE VARCHAR2 (20) FAX VARCHAR2 (20) CREDIT_LIMIT NUMBER(7,2) SALES_ORDER ORDER_ID NUMBER NOT NULL, Primary Key CUSTOMER_ID NUMBER Foreign key to CUSTOMER_ID column of the CUSTOMER table ORDER_DT DATE ORDER_AMT NUMBER (7,2) SHIP_METHOD VARCHAR2 (5)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

You need to create a report that displays customers without a sales order. Which statement could you use? Mark for Review (1) Points SELECT c.customer_name FROM customers c WHERE c.customer_id not in (SELECT s.customer_id FROM sales_order s); (*) SELECT c.customer_name FROM customers c, sales_order s WHERE c.customer_id = s.customer_id(+); SELECT c.customer_name FROM customers c, sales_order s WHERE c.customer_id (+) = s.customer_id; SELECT c.customer_name FROM customers c RIGHT OUTER JOIN sales_order s ON (c.customer_id = s.customer_id);

Incorrect. Refer to Section 4 41. Which query will retrieve all the rows in the EMPLOYEES table, even if there is no match in the DEPARTMENTS table? Mark for Review (1) Points SELECT e.last_name, e.department_id, d.department_name FROM employees e RIGHT OUTER JOIN departments d ON (e.department_id = d.department_id); SELECT e.last_name, e.department_id, d.department_name FROM employees e NATURAL JOIN departments d; SELECT e.last_name, e.department_id, d.department_name FROM employees e LEFT OUTER JOIN departments d ON (e.department_id = d.department_id); (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT e.last_name, e.department_id, d.department_name FROM employees e JOIN departments d USING (e.department_id = d.department_id);

Incorrect. Refer to Section 4 42. Which two sets of join keywords create a join that will include unmatched rows from the first table specified in the SELECT statement? Mark for Review (1) Points LEFT OUTER JOIN and FULL OUTER JOIN (*) RIGHT OUTER JOIN and LEFT OUTER JOIN USING and HAVING OUTER JOIN and USING Incorrect. Refer to Section 4 43. What should be included in a SELECT statement to return NULL values from all tables? Mark for Review (1) Points natural joins left outer joins full outer joins (*) right outer joins Incorrect. Refer to Section 4 44. If a select list contains both a column as well as a group function then what clause is required? Mark for Review (1) Points having clause join clause order by clause group by clause (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Incorrect. Refer to Section 5 45. Evaluate this SELECT statement: SELECT MAX(salary), dept_id FROM employee GROUP BY dept_id; Which values are displayed? Mark for Review (1) Points The highest salary for all employees. The highest salary in each department. (*) The employees with the highest salaries. The employee with the highest salary for each department. Incorrect. Refer to Section 5 46. Which statement about group functions is true? Mark for Review (1) Points Group functions ignore null values. (*) Group functions can only be used in a SELECT list. Group functions can be used in a WHERE clause. A query that includes a group function in the SELECT list must include a GROUP BY clause. Incorrect. Refer to Section 5 47. What is the best explanation as to why this SQL statement will NOT execute? SELECT department_id "Department", AVG (salary)"Average" FROM employees GROUP BY Department; Mark for Review (1) Points Salaries cannot be averaged as not all the numbers will divide evenly. You cannot use a column alias in the GROUP BY clause. (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

The GROUP BY clause must have something to GROUP. The department id is not listed in the departments table. Incorrect. Refer to Section 5 48. The AVG, SUM, VARIANCE, and STDDEV functions can be used with which of the following? Mark for Review (1) Points Only numeric data types (*) Integers only Any data type All except numeric Correct 49. Examine the data in the PAYMENT table: PAYMENT_ID CUSTOMER_ID PAYMENT_DATE PAYMENT_TYPE PAYMENT_AMOUNT 86590586 8908090 10-JUN-03 BASIC 859.00 89453485 8549038 15-FEB-03 INTEREST 596.00 85490345 5489304 20-MAR-03 BASIC 568.00 You need to determine the average payment amount made by each customer in January, February and March of 2003. Which SELECT statement should you use? Mark for Review (1) Points SELECT AVG(payment_amount) FROM payment WHERE payment_date BETWEEN '01-JAN-2003' AND '31-MAR-2003'; (*) SELECT AVG(payment_amount) FROM payment; SELECT SUM(payment_amount) FROM payment WHERE payment_date BETWEEN '01-JAN-2003' and '31-MAR-2003';

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT AVG(payment_amount) FROM payment WHERE TO_CHAR(payment_date) IN (JAN, FEB, MAR);

Correct 50. You need to calculate the standard deviation for the cost of products produced in the Birmingham facility. Which group function will you use? Mark for Review (1) Points STDEV STDDEV (*) VAR_SAMP VARIANCE Incorrect. Refer to Section 5 51. The VENDORS table contains these columns: VENDOR_ID NUMBER Primary Key NAME VARCHAR2(30) LOCATION_ID NUMBER ORDER_DT DATE ORDER_AMOUNT NUMBER(8,2) Which two clauses represent valid uses of aggregate functions for this table? Mark for Review (1) Points (Choose all correct answers) FROM MAX(order_dt) SELECT SUM(order_dt) SELECT SUM(order_amount) (*) WHERE MAX(order_dt) = order_dt SELECT location_id, MIN(AVG(order_amount)) (*) Incorrect. Refer to Section 5

This watermark does not appear in the registered version - http://www.clicktoconvert.com

52. Which group function would you use to display the lowest value in the SALES_AMOUNT column? Mark for Review (1) Points AVG COUNT MAX MIN (*) Incorrect. Refer to Section 5 53. You need to calculate the average salary of employees in each department. Which group function will you use? Mark for Review (1) Points AVG (*) MEAN MEDIAN AVERAGE Correct 54. Which group functions below act on character, number and date data types? (Choose more than one answer) Mark for Review (1) Points (Choose all correct answers) SUM MAX (*) MIN (*) AVG COUNT (*) Correct

This watermark does not appear in the registered version - http://www.clicktoconvert.com

55. The PRODUCTS table contains these columns: PROD_ID NUMBER(4) PROD_NAME VARCHAR2(30) PROD_CAT VARCHAR2(30) PROD_PRICE NUMBER(3) PROD_QTY NUMBER(4) The following statement is issued: SELECT AVG(prod_price, prod_qty) FROM products; What happens when this statement is issued? Mark for Review (1) Points Both the average price and the average quantity of the products are returned. Only the average quantity of the products is returned. The values in the PROD_PRICE column and the PROD_QTY column are averaged together. An error occurs. (*) Incorrect. Refer to Section 5 56. The STYLES table contains this data: STYLE_ID STYLE_NAME CATEGORY COST 895840 SANDAL 85940 12.00 968950 SANDAL 85909 10.00 869506 SANDAL 89690 15.00 809090 LOAFER 89098 10.00 890890 LOAFER 89789 14.00 857689 HEEL 85940 11.00 758960 SANDAL 86979 You issue this SELECT statement: SELECT COUNT(category) FROM styles; Which value is displayed? Mark for Review (1) Points 0

This watermark does not appear in the registered version - http://www.clicktoconvert.com

6 7 (*) The statement will NOT execute successfully. Incorrect. Refer to Section 5 57. Examine the data from the LINE_ITEM table: LINE_ITEM_ID ORDER_ID PRODUCT_ID PRICE DISCOUNT 890898 847589 848399 8.99 0.10 768385 862459 849869 5.60 0.05 867950 985490 945809 5.60 954039 439203 438925 5.25 0.15 543949 349302 453235 4.50 You query the LINE_ITEM table and a value of 5 is returned. Which SQL statement did you execute? Mark for Review (1) Points SELECT COUNT(discount) FROM line_item; SELECT COUNT(*) FROM line_item; (*) SELECT SUM(discount) FROM line_item; SELECT AVG(discount) FROM line_item; Incorrect. Refer to Section 5 58. Group functions can avoid computations involving duplicate values by including which keyword? Mark for Review (1) Points NULL DISTINCT (*) SELECT UNLIKE Incorrect. Refer to Section 5

This watermark does not appear in the registered version - http://www.clicktoconvert.com

59. Evaluate this SELECT statement: SELECT COUNT(*) FROM products; Which statement is true? Mark for Review (1) Points The number of rows in the table is displayed. (*) The number of unique PRODUCT_IDs in the table is displayed. An error occurs due to an error in the SELECT clause. An error occurs because no WHERE clause is included in the SELECT statement. Incorrect. Refer to Section 5 60. The PLAYERS table contains these columns: PLAYER_ID NUMBER PK PLAYER_NAME VARCHAR2 (30) TEAM_ID NUMBER HIRE_DATE DATE SALARY NUMBER (8,2) Which two clauses represent valid uses of aggregate functions? (Choose three.) Mark for Review (1) Points (Choose all correct answers) ORDER BY AVG(salary) GROUP BY MAX(salary) (*) SELECT AVG(NVL(salary, 0)) (*) HAVING MAX(salary) > 10000 (*) WHERE hire_date > AVG(hire_date) Incorrect. Refer to Section 6 61. The MANUFACTURER table contains these columns: MANUFACTURER_ID NUMBER MANUFACTURER_NAME VARCHAR2(30) TYPE VARCHAR2(25) LOCATION_ID NUMBER

This watermark does not appear in the registered version - http://www.clicktoconvert.com

You need to display the number of unique types of manufacturers at each location. Which SELECT statement should you use? Mark for Review (1) Points SELECT location_id, COUNT(DISTINCT type) FROM manufacturer GROUP BY location_id; (*) SELECT location_id, COUNT(DISTINCT type) FROM manufacturer; SELECT location_id, COUNT(type) FROM manufacturer GROUP BY location_id; SELECT location_id, COUNT(DISTINCT type) FROM manufacturer GROUP BY type;

Correct 62. What is the correct order of clauses in a SELECT statement? Mark for Review (1) Points SELECT FROM WHERE ORDER BY HAVING SELECT FROM HAVING GROUP BY WHERE ORDER BY SELECT FROM WHERE

This watermark does not appear in the registered version - http://www.clicktoconvert.com

GROUP BY HAVING ORDER BY (*) SELECT FROM WHERE HAVING ORDER BY GROUP BY

Correct 63. The PRODUCTS table contains these columns: PROD_ID NUMBER(4) PROD_NAME VARCHAR(20) PROD_CAT VARCHAR2(15) PROD_PRICE NUMBER(5) PROD_QTY NUMBER(4) You need to identify the minimum product price in each product category. Which statement could you use to accomplish this task? Mark for Review (1) Points SELECT prod_cat, MIN (prod_price) FROM products GROUP BY prod_price; SELECT prod_cat, MIN (prod_price) FROM products GROUP BY prod_cat; (*) SELECT MIN (prod_price), prod_cat FROM products GROUP BY MIN (prod_price), prod_cat; SELECT prod_price, MIN (prod_cat) FROM products GROUP BY prod_cat;

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Correct 64. The EMPLOYEES table contains these columns: ID_NUMBER NUMBER Primary Key NAME VARCHAR2 (30) DEPARTMENT_ID NUMBER SALARY NUMBER (7,2) HIRE_DATE DATE Evaluate this SQL statement: SELECT id_number, name, department_id, SUM(salary) FROM employees WHERE salary > 25000 GROUP BY department_id, id_number, name ORDER BY hire_date; Why will this statement cause an error? Mark for Review (1) Points The HAVING clause is missing. The WHERE clause contains a syntax error. The SALARY column is NOT included in the GROUP BY clause. The HIRE_DATE column is NOT included in the GROUP BY clause. (*) Correct 65. Evaluate this SELECT statement: SELECT SUM(salary), dept_id, department_name FROM employee WHERE dept_id = 1 GROUP BY department; Which clause of the SELECT statement contains a syntax error? Mark for Review (1) Points SELECT FROM WHERE GROUP BY (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Incorrect. Refer to Section 66. The PLAYERS and TEAMS tables contain these columns: PLAYERS PLAYER_ID NUMBER NOT NULL, Primary Key LAST_NAME VARCHAR2 (30) NOT NULL FIRST_NAME VARCHAR2 (25) NOT NULL TEAM_ID NUMBER POSITION VARCHAR2 (25) TEAMS TEAM_ID NUMBER NOT NULL, Primary Key TEAM_NAME VARCHAR2 (25) You need to create a report that lists the names of each team with more than five pitchers. Which SELECT statement will produce the desired result? Mark for Review (1) Points SELECT t.team_name, COUNT(p.player_id) FROM players p, teams t ON (p.team_id = t.team_id) WHERE UPPER(p.position) = 'PITCHER' GROUP BY t.team_name; SELECT t.team_name, COUNT(p.player_id) FROM players JOIN teams t ON (p.team_id = t.team_id) WHERE UPPER(p.position) = 'PITCHER' HAVING COUNT(p.player_id) > 5; SELECT t.team_name, COUNT(p.player_id) FROM players p, teams t ON (p.team_id = t.team_id) WHERE UPPER(p.position) = 'PITCHER' GROUP BY t.team_name HAVING COUNT(p.player_id) > 5; SELECT t.team_name, COUNT(p.player_id) FROM players p JOIN teams t ON (p.team_id = t.team_id) WHERE UPPER(p.position) = 'PITCHER' GROUP BY t.team_name HAVING COUNT(p.player_id) > 5; (*)

Incorrect. Refer to Section 6 67. Which statement about the GROUP BY clause is true? Mark for Review

This watermark does not appear in the registered version - http://www.clicktoconvert.com

(1) Points To exclude rows before dividing them into groups using the GROUP BY clause, you use should a WHERE clause. (*) You can use a column alias in a GROUP BY clause. By default, rows are not sorted when a GROUP BY clause is used. You must use the HAVING clause with the GROUP BY clause. Incorrect. Refer to Section 6 68. Using a subquery in which clause will return a syntax error? Mark for Review (1) Points WHERE FROM HAVING There are no places you cannot place subqueries. (*) Incorrect. Refer to Section 6 69. Which of the following is TRUE regarding the order of subquery execution? Mark for Review (1) Points The outer query is executed first The subquery executes once after the main query The subquery executes once before the main query (*) The result of the main query is used with the subquery Correct 70. The TEACHERS and CLASS_ASSIGNMENTS tables contain these columns: TEACHERS TEACHER_ID NUMBER(5) Primary Key NAME VARCHAR2 (25) SUBJECT_ID NUMBER(5)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

CLASS_ASSIGNMENTS CLASS_ID NUMBER (5) Primary Key TEACHER_ID NUMBER (5) START_DATE DATE MAX_CAPACITY NUMBER (3) All MAX_CAPACITY values are greater than 10. Which two SQL statements correctly use subqueries? (Choose two.) Mark for Review (1) Points (Choose all correct answers) SELECT * FROM class_assignments WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments); (*) SELECT * FROM teachers WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE class_id = 45963); (*) SELECT * FROM teachers WHERE teacher_id = (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0); SELECT * FROM teachers WHERE teacher_id LIKE (SELECT teacher_id FROM class_assignments WHERE max_capacity > 0); SELECT * FROM class_assignments WHERE max_capacity = (SELECT AVG(max_capacity) FROM class_assignments GROUP BY teacher_id);

Incorrect. Refer to Section 6 71. The EMPLOYEES and ORDERS tables contain these columns: EMPLOYEES

This watermark does not appear in the registered version - http://www.clicktoconvert.com

EMP_ID NUMBER(10) NOT NULL PRIMARY KEY FNAME VARCHAR2(30) LNAME VARCHAR2(30) ADDRESS VARCHAR2(25) CITY VARCHAR2(20) STATE VARCHAR2(2) ZIP NUMBER(9) TELEPHONE NUMBER(10) ORDERS ORDER_ID NUMBER(10) NOT NULL PRIMARY KEY EMP_ID NUMBER(10) NOT NULL FOREIGN KEY ORDER_DATE DATE TOTAL NUMBER(10) Which SELECT statement will return all orders generated by a sales representative named Franklin during the year 2001? Mark for Review (1) Points SELECT order_id, total FROM ORDERS (SELECT emp_id FROM employees WHERE lname = 'Franklin') WHERE order_date BETWEEN '01-jan-01' AND '31-dec-01'; SELECT (SELECT emp_id FROM employees WHERE lname = 'Franklin') AND order_id, total FROM ORDERS WHERE order_date BETWEEN '01-jan-01' AND '31-dec-01'; SELECT order_id, emp_id, total FROM ORDERS WHERE order_date BETWEEN '01-jan-01' AND '31-dec-01' AND emp_id = 'Franklin'; SELECT order_id, total FROM ORDERS WHERE emp_id = (SELECT emp_id FROM employees WHERE lname = 'Franklin') AND order_date BETWEEN '01-jan-01' AND '31-dec-01'; (*)

Correct 72. Examine the structures of the CUSTOMER and ORDER_HISTORY tables: CUSTOMER CUSTOMER_ID NUMBER(5)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

NAME VARCHAR2(25) CREDIT_LIMIT NUMBER(8,2) OPEN_DATE DATE ORDER_HISTORY ORDER_ID NUMBER(5) CUSTOMER_ID NUMBER(5) ORDER_DATE DATE TOTAL NUMBER(8,2) Which of the following scenarios would require a subquery to return the desired results? Mark for Review (1) Points You need to display the date each customer account was opened. You need to display each date that a customer placed an order. You need to display all the orders that were placed on a certain date. You need to display all the orders that were placed on the same day as order number 25950. (*) Incorrect. Refer to Section 6 73. You need to produce a report that contains all employee-related information for those employees who have Brad Carter as a supervisor. However, you are not sure which supervisor ID belongs to Brad Carter. Which query should you issue to accomplish this task? Mark for Review (1) Points SELECT * FROM employees WHERE supervisor_id = (SELECT supervisor_id FROM employees WHERE last_name = 'Carter'); SELECT * FROM supervisors WHERE supervisor_id = (SELECT supervisor_id FROM employees WHERE last_name = 'Carter');

This watermark does not appear in the registered version - http://www.clicktoconvert.com

SELECT * FROM supervisors WHERE supervisor_id = (SELECT employee_id FROM supervisors WHERE last_name = 'Carter'); SELECT * FROM employees WHERE supervisor_id = (SELECT employee_id FROM employees WHERE last_name = 'Carter'); (*)

Incorrect. Refer to Section 6 74. If a single-row subquery returns a null value and uses the equality comparison operator, what will the outer query return? Mark for Review (1) Points no rows (*) all the rows in the table a null value an error Incorrect. Refer to Section 6 75. Which best describes a single-row subquery? Mark for Review (1) Points a query that returns only one row from the inner SELECT statement (*) a query that returns one or more rows from the inner SELECT statement a query that returns only one column value from the inner SELECT statement a query that returns one or more column values from the inner SELECT statement Incorrect. Refer to Section 6

This watermark does not appear in the registered version - http://www.clicktoconvert.com

76. Which best describes a multiple-row subquery? Mark for Review (1) Points A query that returns only one row from the inner SELECT statement A query that returns one or more rows from the inner SELECT statement (*) A query that returns only one column value from the inner SELECT statement A query that returns one or more column values from the inner SELECT statement Incorrect. Refer to Section 6 77. Which of the following statements contains a comparison operator that is used to restrict rows based on a list of values returned from an inner query? Mark for Review (1) Points SELECT description FROM d_types WHERE code IN (SELECT type_code FROM d_songs); SELECT description FROM d_types WHERE code = ANY (SELECT type_code FROM d_songs); SELECT description FROM d_types WHERE code <> ALL (SELECT type_code FROM d_songs); All of the above. (*) Incorrect. Refer to Section 6 78. Evaluate this SELECT statement: SELECT customer_id, name FROM customer WHERE customer_id IN (SELECT customer_id FROM customer WHERE state_id = 'GA' AND credit_limit > 500.00); What would happen if the inner query returned null? Mark for Review (1) Points

This watermark does not appear in the registered version - http://www.clicktoconvert.com

An error would be returned. No rows would be returned by the outer query. (*) All the rows in the table would be selected. Only the rows with CUSTOMER_ID values equal to null would be selected. Incorrect. Refer to Section 6 79. You need to create a SELECT statement that contains a multiple-row subquery, which comparison operator(s) can you use? Mark for Review (1) Points IN, ANY, and ALL (*) LIKE BETWEEN...AND... =, <, and > Incorrect. Refer to Section 6 80. Which of the following best describes the meaning of the ANY operator? Mark for Review (1) Points Equal to any member in the list Compare value to each value returned by the subquery (*) Compare value to every value returned by the subquery Equal to each value in the list Correct 81. Which operator or keyword cannot be used with a multiple-row subquery? Mark for Review (1) Points ALL ANY = (*)

This watermark does not appear in the registered version - http://www.clicktoconvert.com

> Incorrect. Refer 82. What would happen if you attempted to use a single-row operator with a multiple-row subquery? Mark for Review (1) Points An error would be returned. (*) No rows will be selected. All the rows will be selected. The data returned may or may not be correct. Incorrect. Refer to Section 6 83. Evaluate this SQL statement: SELECT employee_id, last_name, salary FROM employees WHERE department_id IN (SELECT department_id FROM employees WHERE salary > 30000 AND salary < 50000); Which values will be displayed? Mark for Review (1) Points Only employees who earn more than $30,000. Only employees who earn less than $50,000. All employees who work in a department with employees who earn more than $30,000 and more than $50,000. All employees who work in a department with employees who earn more than $30,000, but less than $50,000. (*) Correct 84. Examine the data in the PAYMENT table: PAYMENT_ID CUSTOMER_ID PAYMENT_DATE PAYMENT_TYPE PAYMENT_AMOUNT 86590586 8908090 10-JUN-03 BASIC 859.00

This watermark does not appear in the registered version - http://www.clicktoconvert.com

89453485 8549038 15-FEB-03 INTEREST 596.00 85490345 5489304 20-MAR-03 BASIC 568.00 This statement fails when executed: SELECT customer_id, payment_type FROM payment WHERE payment_id = (SELECT payment_id FROM payment WHERE payment_amount = 596.00 OR payment_date = '20-MAR-2003'); Which change could correct the problem? Mark for Review (1) Points Change the outer query WHERE clause to 'WHERE payment_id IN'. (*) Remove the quotes surrounding the date value in the OR clause. Remove the parentheses surrounding the nested SELECT statement. Change the comparison operator to a single-row operator. Incorrect. Refer to Section 6 85. What is wrong with the following query? SELECT employee_id, last_name FROM employees WHERE salary = (SELECT MIN(salary) FROM employees GROUP BY department_id); Mark for Review (1) Points Single rows contain multiple values and a logical operator is used. Subquery returns more than one row and single row comparison operator is used. (*) Subquery references the wrong table in the WHERE clause. Nothing, it will run without problems. Incorrect. Refer to Section 6

This watermark does not appear in the registered version - http://www.clicktoconvert.com

86. Examine the data in the PAYMENT table: PAYMENT_ID CUSTOMER_ID PAYMENT_DATE PAYMENT_TYPE PAYMENT_AMOUNT 86590586 8908090 10-JUN-03 BASIC 859.00 89453485 8549038 15-FEB-03 INTEREST 596.00 85490345 5489304 20-MAR-03 BASIC 568.00 This statement fails when executed: SELECT payment_date, customer_id, payment_amount FROM payment WHERE payment_id = (SELECT payment_id FROM payment WHERE payment_date >= '05-JAN-2002' OR payment_amount > 500.00); Which change could correct the problem? Mark for Review (1) Points Remove the subquery WHERE clause. Change the outer query WHERE clause to 'WHERE payment_id IN'. (*) Include the PAYMENT_ID column in the select list of the outer query. Remove the single quotes around the date value in the inner query WHERE clause. Incorrect. Refer to Section 6 87. Assume all the column names are correct. The following SQL statement will execute which of the following? INSERT INTO departments (department_id, department_name, manager_id, location_id) VALUES (70, 'Public Relations', 100, 1700); Mark for Review (1) Points 100 will be inserted into the department_id column 1700 will be inserted into the manager_id column 70 will be inserted into the department_id column (*) 'Public Relations' will be inserted into the manager_name column

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Incorrect. Refer to Section 7 88. You need to add a row to an existing table. Which DML statement should you use? Mark for Review (1) Points UPDATE INSERT (*) DELETE CREATE Incorrect. Refer 89. The PRODUCTS table contains these columns: PRODUCT_ID NUMBER NOT NULL PRODUCT_NAME VARCHAR2 (25) SUPPLIER_ID NUMBER NOT NULL LIST_PRICE NUMBER (7,2) COST NUMBER (5,2) QTY_IN_STOCK NUMBER(4) LAST_ORDER_DT DATE NOT NULL DEFAULT SYSDATE Which INSERT statement will execute successfully? Mark for Review (1) Points INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, 700); (*) INSERT INTO products VALUES (2958, 'Cable', 8690, 7.09, 4.04, SYSDATE); INSERT INTO products(product_id, product_name) VALUES (2958, 'Cable'); INSERT INTO products(product_id, product_name, supplier_id VALUES (2958, 'Cable', 8690, SYSDATE); Incorrect. Refer to Section 7 90. You need to copy rows from the EMPLOYEE table to the EMPLOYEE_HIST table. What could you use in the INSERT statement to accomplish this task? Mark for Review (1) Points an ON clause

This watermark does not appear in the registered version - http://www.clicktoconvert.com

a SET clause a subquery (*) a function Correct 91. One of the sales representatives, Janet Roper, has informed you that she was recently married, and she has requested that you update her name in the employee database. Her new last name is Cooper. Janet is the only person with the last name of Roper that is employed by the company. The EMPLOYEES table contains these columns and all data is stored in lowercase: EMP_ID NUMBER(10) PRIMARY KEY LNAME VARCHAR2(20) FNAME VARCHAR2(20) DEPT VARCHAR2 (20) HIRE_DATE DATE SALARY NUMBER(10) Which UPDATE statement will accomplish your objective? Mark for Review (1) Points UPDATE employees SET lname = 'cooper' WHERE lname = 'roper'; (*) UPDATE employees lname = 'cooper' WHERE lname = 'roper'; UPDATE employees SET lname = 'roper' WHERE lname = 'cooper'; UPDATE employees SET cooper = 'lname' WHERE lname = 'roper';

Incorrect. Refer to Section 7

This watermark does not appear in the registered version - http://www.clicktoconvert.com

92. You need to remove a row from the EMPLOYEE table. Which statement would you use? Mark for Review (1) Points UPDATE with a WHERE clause INSERT with a WHERE clause DELETE with a WHERE clause (*) MERGE with a WHERE clause Correct 93. Examine the structures of the PLAYERS, MANAGERS, and TEAMS tables: PLAYERS PLAYER_ID NUMBER Primary Key LAST_NAME VARCHAR2 (30) FIRST_NAME VARCHAR2 (25) TEAM_ID NUMBER MGR_ID NUMBER SIGNING_BONUS NUMBER(9,2) SALARY NUMBER(9,2) MANAGERS MANAGER_ID NUMBER Primary Key LAST_NAME VARCHAR2 (20) FIRST_NAME VARCHAR2 (20) TEAM_ID NUMBER TEAMS TEAM_ID NUMBER Primary Key TEAM_NAME VARCHAR2 (20) OWNER_LAST_NAME VARCHAR2 (20) OWNER_FIRST_NAME VARCHAR2 (20) Which situation would require a subquery to return the desired result? Mark for Review (1) Points To display the names each player on the Lions team To display the maximum and minimum player salary for each team To display the names of the managers for all the teams owned by a given owner (*) To display each player, their manager, and their team name for all teams with a id value greater than 5000

This watermark does not appear in the registered version - http://www.clicktoconvert.com

Correct 94. The EMPLOYEES table contains the following columns: EMP_ID NUMBER(10) PRIMARY KEY LNAME VARCHAR2(20) FNAME VARCHAR2(20) DEPT VARCHAR2(20) HIRE_DATE DATE SALARY NUMBER(9,2) BONUS NUMBER(9,2) You want to execute one DML statement to change the salary of all employees in department 10 to equal the new salary of employee number 89898. Currently, all employees in department 10 have the same salary value. Which statement should you execute? Mark for Review (1) Points UPDATE employee SET salary = SELECT salary FROM employee WHERE emp_id = 89898; UPDATE employee SET salary = (SELECT salary FROM employee WHERE emp_id = 89898); UPDATE employee SET salary = (SELECT salary FROM employee WHERE emp_id = 89898) WHERE dept = 10; (*) UPDATE employee SET salary = (SELECT salary FROM employee WHERE emp_id = 89898 AND dept = 10);

Incorrect. Refer to Section 7 95. Evaluate this statement: DELETE FROM customer; Which statement is true? Mark for Review (1) Points The statement deletes all the rows from the CUSTOMER table. (*) The statement deletes the CUSTOMER column.

This watermark does not appear in the registered version - http://www.clicktoconvert.com

The statement deletes the first row in the CUSTOMERS table. The statement removes the structure of the CUSTOMER table from the database. Incorrect. Refer to Section 7 96. When the WHERE clause is missing in a DELETE statement, what is the result? Mark for Review (1) Points All rows are deleted from the table. (*) The table is removed from the database. An error message is displayed indicating incorrect syntax. Nothing. The statement will not execute. Correct 97. The PLAYERS table contains these columns: PLAYER_ID NUMBER NOT NULL PLAYER_LNAME VARCHAR2(20) NOT NULL PLAYER_FNAME VARCHAR2(10) NOT NULL TEAM_ID NUMBER SALARY NUMBER(9,2) You need to increase the salary of each player for all players on the Tiger team by 12.5 percent. The TEAM_ID value for the Tiger team is 5960. Which statement should you use? Mark for Review (1) Points UPDATE players (salary) SET salary = salary * 1.125; UPDATE players SET salary = salary * .125 WHERE team_id = 5960; UPDATE players SET salary = salary * 1.125 WHERE team_id = 5960; (*) UPDATE players (salary) VALUES(salary * 1.125) WHERE team_id = 5960; Correct

This watermark does not appear in the registered version - http://www.clicktoconvert.com

98. You need to delete a record in the EMPLOYEES table for Tim Jones, whose unique employee identification number is 348. The EMPLOYEES table contains these columns: ID_NUM NUMBER(5) PRIMARY KEY LNAME VARCHAR2(20) FNAME VARCHAR2(20) ADDRESS VARCHAR2(30) PHONE NUMBER(10) Which DELETE statement will delete the appropriate record without deleting any additional records? Mark for Review (1) Points DELETE FROM employees WHERE id_num = 348; (*) DELETE FROM employees WHERE lname = jones; DELETE * FROM employees WHERE id_num = 348; DELETE 'jones' FROM employees; Correct 99. You need to update the expiration date of products manufactured before June 30th . In which clause of the UPDATE statement will you specify this condition? Mark for Review (1) Points the ON clause the WHERE clause (*) the SET clause the USING clause Correct 100. You need to update both the DEPARTMENT_ID and LOCATION_ID columns in the EMPLOYEE table using one UPDATE statement. Which clause should you include in the UPDATE statement to update multiple columns? Mark for Review (1) Points the USING clause the ON clause

This watermark does not appear in the registered version - http://www.clicktoconvert.com

the WHERE clause the SET clause (*) Correct

Related Documents