O o o O: 1. The TEACHER Table Contains These Columns

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 21

1.

The TEACHER table contains these columns: ID NUMBER(9) Primary Key LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25) SUBJECT_ID NUMBER(9) Which query should you use to display only the full name of each teacher along with the identification number of the subject they are responsible for teaching?

o o o o

SELECT * FROM teacher; SELECT last_name, subject_id FROM teacher; SELECT last_name, first_name, id FROM teacher; SELECT last_name, first_name, subject_id FROM teacher;

2. The EMPLOYEE_HIST table contains these columns: EMPLOYEE_ID NUMBER Primary Key LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25) DEPARTMENT_ID NUMBER(3) POSITION VARCHAR2(30) MANAGER_ID NUMBER SALARY NUMBER(6,2) Evaluate this statement: SELECT DISTINCT department_id, manager_id FROM employee_hist; Which statement is true?

o o o o

A particular DEPARTMENT_ID can only be displayed once. A particular MANAGER_ID can be displayed more than once. A unique combination of MANAGER_ID and DEPARTMENT_ID may displayed more than once. The query will fail because the DISTINCT keyword may only be used in a single column SELECT list.

3. The SERVICE table contains these columns: ID NUMBER PK SERVICE_DATE DATE TECHNICIAN_ID NUMBER DESCRIPTION VARCHAR2(50) Which SELECT statement could you use to display the number of times each technician performed a service between January 1, 2001 and June 30, 2001?

o o o o

SELECT COUNT(*) FROM service WHERE service_date BETWEEN '01-JAN-2001' AND '30-JUN-2001' GROUP BY service_date; SELECT COUNT(service_date) FROM service WHERE service_date BETWEEN '01-JAN-2001' AND '30-JUN-2001' GROUP BY service_date; SELECT technician_id, service_date, COUNT(*) FROM service WHERE service_date BETWEEN '01-JAN-2001' AND '30-JUN-2001' ORDER BY technician_id, service_date; SELECT technician_id, COUNT(technician_id) FROM service WHERE service_date BETWEEN '01-JAN-2001' AND '30-JUN-2001' GROUP BY technician_id;

4. Evaluate this SQL statement: SELECT manufacturer_id, COUNT(*), order_date FROM inventory WHERE price > 5.00 GROUP BY order_date, manufacturer_id HAVING COUNT(*) > 10 ORDER BY order_date DESC; Which clause specifies which rows will be returned from the INVENTORY table?

o o o o o

SELECT manufacturer_id, COUNT(*), order_date WHERE price > 5.00 GROUP BY order_date, manufacturer_id ORDER BY order_date DESC; HAVING COUNT(*) > 10

5. The LINE_ITEM table contains these columns LINE_ITEM_ID NUMBER(9) Primary Key ORDER_ID NUMBER(9) PRODUCT_ID VARCHAR2(9) QUANTITY NUMBER(5) Evaluate this SQL statement: SELECT quantity, product_id FROM line_item ORDER BY quantity, product_id Which statement is true concerning the results of executing this statement?

o o o o

The results are sorted numerically only. The results are sorted alphabetically only. The results are sorted numerically and then alphabetically. The results are sorted alphabetically and then numerically.

6. The ID column in the CUSTOMER table that corresponds to the CUSTOMER_ID column of the CURR_ORDER table contains null values for rows that need to be displayed. Which type of join should you use to display the data?

o o o o

equijoin self join outer join natural join

7. You query the database with this SQL statement to retrieve data from a table called LINE_ITEM having order_id, line_item_id, product_id and quantity as its columns: SELECT order_id||'-'||line_item_id||' '||product_id||' '||quantity "Purchase" FROM line_item; Which component of the SELECT statement is a literal?

o o o o

|| quantity Purchase

8. The STUDENT table contains these columns: LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25) EMAIL VARCHAR2(50) You are writing a SELECT statement to retrieve the names of students that do NOT have an email address. SELECT last_name||', '||first_name "Student Name" FROM student Which WHERE clause should you use to complete this statement?

o o o o

WHERE email = NULL; WHERE email != NULL; WHERE email IS NULL; WHERE email IS NOT NULL;

9. Evaluate this SQL statement: SELECT l.order_id, i.description, l.quantity WHERE i.id_number = l.product_id FROM inventory i, line_item l ORDER BY l.order_id, i.description; This statement fails when executed. Which change will correct the problem?

o o o o

Reorder the clauses in the statement. Remove the table aliases from the FROM clause. Use the table names instead of the table aliases in the ORDER BY clause. Remove the table alias from the ORDER BY clause, and use only the column name.

10. The INVENTORY table contains these columns: ID_NUMBER NUMBER PK CATEGORY VARCHAR2(10) LOCATION NUMBER DESCRIPTION VARCHAR2(30) PRICE NUMBER(7,2) QUANTITY NUMBER You want to return the total of the extended amounts for each item category and location, including only those inventory items that have a price greater than $100.00. The extended amount of each item equals the quantity multiplied by the price. Which SQL statement will return the desired result?

o o o o

SELECT category, SUM(price * quantity) TOTAL, location FROM inventory WHERE price > 100.00; SELECT category, location, SUM(price) FROM inventory WHERE price > 100.00 GROUP BY category, location; SELECT category, SUM(price * quantity) TOTAL, location FROM inventory WHERE price > 100.00 GROUP BY category; SELECT category, SUM(price * quantity) TOTAL, location FROM inventory WHERE price > 100.00 GROUP BY category, location;

11. You query the database with this SQL statement: SELECT CONCAT(LOWER(SUBSTR(description, 1, 3)), subject_id) "Subject Description" FROM subject; In which order are the functions evaluated?

o o o o

CONCAT, LOWER, SUBSTR SUBSTR, LOWER, CONCAT LOWER, SUBSTR, CONCAT LOWER, CONCAT, SUBSTR

12. Which SELECT statement should you use to limit the display of account information to those accounts whose finance charge is greater than $75.00?

o o o o

SELECT account_id, new_balance, finance_charge FROM account WHERE finance_charge > 75.00; SELECT account_id, new_balance, finance_charge FROM account HAVING finance_charge > 75.00; SELECT account_id, new_balance, finance_charge FROM account WHERE finance_charge > 75.00 GROUP BY finance_charge; SELECT account_id, new_balance, finance_charge FROM account GROUP BY finance_charge > 75.00;

13. The TRANSACTION table contains these columns: TRANSACTION_ID NUMBER(9) TRANS_CODE VARCHAR2(5) CUST_ACCOUNT VARCHAR2(12) A new standard was adopted in your department affecting reports produced by querying the TRANSACTION table. When creating reports, a dash (-) followed by the three characters 'ANI' must be appended to all transaction codes that contain only 3 characters when creating reports. Any leading 'W' on a transaction code must be removed from the resulting data display. Which query will return the desired results?

o o o o

SELECT TRIM('W' (RPAD(trans_code, 7, '-ANI'))) FROM transaction WHERE LENGTH(trans_code) = 3; SELECT TRIM('W' FROM (RPAD(trans_code, 3, '-ANI'))) FROM transaction WHERE LENGTH(trans_code) = 3; SELECT TRIM(LEADING 'W' FROM (RPAD(trans_code, 7, '-ANI'))) FROM transaction WHERE LENGTH(trans_code) = 3; SELECT TRIM(LEADING 'W' FROM (RPAD(trans_code, 3, '-ANI'))) FROM transaction WHERE LENGTH(trans_code) = 3;

14. Evaluate this SQL statement: SELECT id "Event", SUM(reg_amt) "Registration Amt" FROM event WHERE reg_amt > 1000.00 GROUP BY "Event" ORDER BY 2; Which clause will cause an error?

o o o o o o o o o

SELECT id "Event", SUM(reg_amt) "Registration Amt" FROM event WHERE reg_amt > 1000.00 GROUP BY "Event" ORDER BY 2;

15. Which arithmetic operation will return a numeric value? '14-FEB-2002' + 25 '03-JAN-2000' - 30 '17-JUN-1999' * (480/24) TO_DATE('01-JAN-2001') - TO_DATE('01-DEC-2000')

16. The SUPPLIER table contains these columns: S_ID NUMBER PK NAME VARCHAR2(30) LOCATION_ID NUMBER ORDER_DT DATE ORDER_AMOUNT NUMBER(8,2) Which clauses represent valid uses of aggregate functions? (Choose all that apply.)

o o o o o o

FROM MAX(order_dt) SELECT SUM(order_dt) SELECT SUM(order_amount) SELECT MAX(AVG(order_amount)) WHERE MIN(order_amount) = order_amount SELECT location_id, order_dt, MAX(order_amount)

17. The EVENT table contains these columns: EVENT_ID NUMBER EVENT_NAME VARCHAR2(30) EVENT_DESC VARCHAR2(100) EVENT_TYPE NUMBER LOCATION_ID NUMBER You have been asked to provide a report of the number of different event types at each location. Which SELECT statement will produce the desired result?

o o o o o

SELECT UNIQUE(location_id), COUNT(event_type) FROM event GROUP BY location_id; SELECT COUNT(*), DISTINCT(location_id) FROM event; SELECT DISTINCT (event_type) FROM event GROUP BY location_id; SELECT location_id, COUNT(DISTINCT event_type) FROM event GROUP BY location_id; SELECT location_id, MAX(DISTINCT event_type) FROM event GROUP BY location_id;

18. Which logical condition operator, used in a WHERE clause, returns TRUE only when both of the conditions are true?

o o o o o o o o

OR NOT AND LIKE

19. Which statement concerning SQL functions is true? All date functions return DATE data type values. Character functions can return character or number values. Single-row functions can only be used in SELECT and WHERE clauses. Conversion functions convert a column definition from one data type to another data type.

20. You must display the order number, line item number, product identification number, and quantity of each item (from a table called line_item) where the quantity ranges from 10 through 100. The order numbers must be in the range of 1500 through 1575. The results must be sorted by order number from lowest to highest and then further sorted by quantity from highest to lowest. Which statement should you use to display the desired result?

SELECT order_id, line_item_id, product_id, quantity FROM line_item WHERE quantity BETWEEN 9 AND 101 AND order_id BETWEEN 1500 AND 1575 ORDER BY order_id DESC, quantity DESC; SELECT order_id, line_item_id, product_id, quantity FROM line_item WHERE (quantity > 10 AND quantity < 100) AND order_id BETWEEN 1500 AND 1575 ORDER BY order_id ASC, quantity; SELECT order_id, line_item_id, product_id, quantity FROM line_item WHERE (quantity > 9 OR quantity < 101) AND order_id BETWEEN 1500 AND 1575 ORDER BY order_id, quantity; SELECT order_id, line_item_id, product_id, quantity FROM line_item WHERE quantity BETWEEN 10 AND 100 AND order_id BETWEEN 1500 AND 1575 ORDER BY order_id, quantity DESC;

21. The DESCRIBE command displays the column names, whether a column has a NOT NULL constraint, and the ______.

o o o o

table owner table name column data types column constraints

22. The INVENTORY table contains these columns: ID_NUMBER NUMBER PK DESCRIPTION VARCHAR2(30) SUPPLIER_ID NUMBER PRICE NUMBER(7,2) QUANTITY NUMBER Evaluate this SQL statement: SELECT id_number, description, SUM(price) FROM inventory WHERE price > 30.00 GROUP BY id_number ORDER BY supplier_id; Why will this statement cause an error?

o o o o o

The PRICE column must be included in the GROUP BY clause. The ORDER BY clause should immediately follow the WHERE clause. The SUPPLIER_ID column is NOT included in the SELECT clause. The ORDER BY clause CANNOT be used in a SELECT statement with a GROUP BY clause. The DESCRIPTION and SUPPLIER_ID columns are NOT included in the GROUP BY clause.

23. The ACCOUNT table contains these columns: ACCOUNT_ID NUMBER(12) NEW_BALANCE NUMBER(7,2) PREV_BALANCE NUMBER(7,2) FINANCE_CHARGE NUMBER(7,2) With the least amount of effort, you want to display all of the ACCOUNT table records. Which query should you use?

o o o o

SELECT * FROM account; SELECT all FROM account; SELECT any FROM account; SELECT account_id, new_balance, prev_balance, finance_charge FROM account;

24. Which SELECT statement should you use if you want to display unique combinations of the POSITION and MANAGER values from the EMPLOYEE table?

o o o o

SELECT position, manager DISTINCT FROM employee; SELECT position, manager FROM employee; SELECT DISTINCT position, manager FROM employee; SELECT position, DISTINCT manager FROM employee;

25. Tables EMPLOYEE and TASK are logically related through employee_id which is a primary key in EMPLOYEE and a foreign key in TASK. You need to produce a report containing all employees and all tasks. An employee must be included on the report even if he has no tasks assigned. And all tasks, whether assigned to an employee or not, must also be included on the report. Which SELECT statement should you use?

o o o o o

SELECT e.emp_lname, e.emp_fname, t.task_description, t.est_compl_date FROM employee e, task t WHERE e.employee_id = t.employee_id; SELECT e.emp_lname, e.emp_fname, t.task_description, t.est_compl_date FROM employee e, task t WHERE e.employee_id (+) = t.employee_id; SELECT e.emp_lname, e.emp_fname, t.task_description, t.est_compl_date FROM employee e, task t WHERE e.employee_id = t.employee_id (+); SELECT e.emp_lname, e.emp_fname, t.task_description, t.est_compl_date FROM employee e, task t WHERE e.employee_id (+) = t.employee_id (+); None of the options will produce the desired result.

26. Evaluate this SQL statement: SELECT c.customer_id, o.order_id, o.order_date, p.product_name FROM customer c, curr_order o, product p WHERE customer.customer_id = curr_order.customer_id AND o.product_id = p.product_id ORDER BY o.order_amount; This statement fails when executed. Which change will correct the problem?

o o o o o o o o o o o o

Use the table name in the ORDER BY clause. Remove the table aliases from the WHERE clause. Include the ORDER_AMOUNT column in the SELECT list. Use the table aliases instead of the table names in the WHERE clause. Remove the table alias from the ORDER BY clause and use only the column name.

27. Which three statements concerning explicit data type conversions are true. (Choose three.) A number value may be converted to a date value using the TO_DATE function. A date value may be converted to a number value using the TO_NUMBER function. A character value may be converted to a date value using the TO_DATE function. A date value may be converted to a character value using the TO_DATE function. A date value may be converted to a character string using the TO_CHAR function. A number value may be converted to a character string using the TO_CHAR function. A number value may be converted to a character value using the TO_NUMBER function.

28. You query the database with this SQL statement: SELECT bonus FROM salary WHERE bonus BETWEEN 1 AND 250 OR (bonus IN(190, 500, 600) AND bonus BETWEEN 250 AND 500); Which value could the statement return?

o o o o o o o o o o

100 260 400 600

29. Which statement about joining tables with a non-equijoin is true? The columns being joined must have compatible data types. No more than three tables can be joined using a non-equijoin. The tables being joined must have primary and foreign keys defined. The tables being joined must NOT have any columns with the same name. The number of join conditions required is always one less than the number of tables being joined. A WHERE clause must specify a column in one table that directly corresponds to a column in the second table.

30. The STUDENT table contains these columns: ID NUMBER(9) LAST_NAME VARCHAR2(25) FIRST_NAME VARCHAR2(25) ENROLL_DATE DATE You need to display the ENROLL_DATE values in this format: 25th of February 2002 Which SELECT statement could you use?

o o o

SELECT enroll_date('DDspth "of" Month YYYY') FROM student; SELECT TO_CHAR(enroll_date, 'ddth "of" Month YYYY') FROM student; SELECT TO_CHAR(enroll_date, 'DDTH "of" Month YYYY') FROM student;

SELECT TO_CHAR(enroll_date, 'DDspth 'of' Month YYYY') FROM student;

You might also like