SQL-MCQ

Chapter 07: Using Set Operator

Question: 1

View the Exhibit and examine the structure of the EMPLOYEES and DEPARTMENTS tables.

Which SET operator would you use in the blank space in the following SQL statement to list the departments where all the employees have managers?

SELECT department_id

FROM departments

____

SELECT department_id

FROM employees

WHERE manager_id IS NULL;

A. UNION

B. MINUS

C. INTERSECT

D. UNION ALL

Answer: B

Question: 2

View the Exhibit and examine the structure of the LOCATIONS and DEPARTMENTS tables.

Which SET operator should be used in the blank space in the following SQL statement to display the cities that have departments located in them?

SELECT location_id, city

FROM locations

SELECT location_id, city

FROM locations JOIN departments

USING(location_id);

A. UNION

B. MINUS

C. INTERSECT

D. UNION ALL

Answer: C

Question: 3

View the Exhibit and examine the data in the EMPLOYEES tables.

Evaluate the following SQL statement: SELECT employee_id, department_id FROM employees

WHERE department_id= 50 ORDER BY department_id

UNION

SELECT employee_id, department_id

FROM employees

WHERE department_id= 90

UNION

SELECT employee_id, department_id

FROM employees

WHERE department_id= 10;

What would be the outcome of the above SQL statement?

A. The statement would execute successfully and display all the rows in the ascending order of

DEPARTMENT_ID.

B. The statement would execute successfully but it will ignore the ORDER BY clause and display the rows in random order.

C. The statement would not execute because the positional notation instead of the column name should be used with the ORDER BY clause.

D. The statement would not execute because the ORDER BY clause should appear only at the end of the SQL statement, that is, in the last SELECT statement.

Answer: D

Question: 4

View the Exhibit and examine the structure of the EMPLOYEES and JOB_HISTORY tables.

The query should display the employee IDs of all the employees who have held the job SA_MAN

at any time during their tenure.

Choose the correct SET operator to fill in the blank space and complete the following query. SELECT employee_id

FROM employees

WHERE job_id = ‘SA_MAN’

____________ SELECT employee_id FROM job_history

WHERE job_id=’SA_MAN’;

A. UNION

B. MINUS

C. INTERSECT

D. UNION ALL

Answer: A

Question: 5

Evaluate the following SQL statement: SELECT 2 col1,’y’ col2

FROM dual UNION SELECT 1,’x’ FROM dual UNION

SELECT 3,NULL

FROM dual

ORDER BY 2;

Which statement is true regarding the output of the SQL statement?

A. It would execute and the order of the values in the first column would be 3, 2, 1.

B. It would execute and the order of the values in the first column would be 1, 2, 3.

C. It would not execute because the column alias name has not been used in the ORDER BY

clause.

D. It would not execute because the number 2 in the ORDER BY clause would conflict with the value 2 in the first SELECT statement.

Answer: B

 

Chapter 08: Manipulating Data

Question: 6

View the Exhibit and examine the structure of the CUST table.

Evaluate the following SQL statements executed in the given order: ALTER TABLE cust

ADD CONSTRAINT cust_id_pk PRIMARY KEY(cust_id) DEFERRABLE INITIALLY DEFERRED; INSERT INTO cust VALUES (1,’RAJ’); –row 1

INSERT INTO cust VALUES (1,’SAM’); –row 2

COMMIT;

SET CONSTRAINT cust_id_pk IMMEDIATE; INSERT INTO cust VALUES (1,’LATA’); –row 3

INSERT INTO cust VALUES (2,’KING’); –row 4

COMMIT;

Which rows would be made permanent in the CUST table?

A. row 4 only

B. rows 2 and 4

C. rows 3 and 4

D. rows 1 and 4

Answer: C

 

Question: 7

Given below are the SQL statements executed in a user session:

CREATE TABLE product

(pcode NUMBER(2), pname VARCHAR2(10));

INSERT INTO product VALUES(1, ‘pen’); INSERT INTO product VALUES (2,’pencil’); SAVEPOINT a;

UPDATE product SET pcode = 10 WHERE pcode = 1; SAVEPOINT b;

DELETE FROM product WHERE pcode = 2; COMMIT;

DELETE FROM product WHERE pcode=10; ROLLBACK TO SAVEPOINT a;

Which statement describes the consequences?

A. No SQL statement would be rolled back.

B. Both the DELETE statements would be rolled back.

C. Only the second DELETE statement would be rolled back.

D. Both the DELETE statements and the UPDATE statement would be rolled back.

Answer: A

Question: 8

View the Exhibit and examine the structure of the ORDERS table.

The ORDERS table belongs to the user OE. HR is another user in the database. Evaluate the commands issued by users OE and HR in the following order: Statement 1 by user OE: GRANT SELECT,

UPDATE(customer_id, order_total) ON orders

TO hr;

Statement 1 by user HR: SELECT * FROM oe.orders; Statement 2 by user HR: UPDATE oe.orders

SET order_total= 10000;

Which statement is true regarding the above commands?

A. Statement 1 by user OE would not work because the statement has to be issued by the DBA.

B. Statement 2 by user HR would not work because the grant is only for SELECT in a subquery

of update.

C. There are no errors in the statements issued by OE and HR; all the statements would execute successfully.

D. Statement 1 by user HR would not work because SELECT and UPDATE privileges have been granted only on CUSTOMER_ID and ORDER_TOTAL columns.

Answer: C

Question: 9

View the Exhibit and examine the structure of the ORDERS table.

NEW_ORDERS is a new table with the columns ORD_ID, ORD_DATE, CUST_ID, and ORD_TOTAL that have the same data types and size as the corresponding columns in the ORDERS table.

Evaluate the following INSERT statement:

INSERT INTO new_orders (ord_id, ord_date, cust_id, ord_total) VALUES(SELECT order_id,order_date,customer_id,order_total FROM orders

WHERE order_date > ’31-dec-1999′); Why would the INSERT statement fail?

A. because column names in NEW_ORDERS and ORDERS tables do not match

B. because the VALUES clause cannot be used in an INSERT with a subquery

C. because the WHERE clause cannot be used in a subquery embedded in an INSERT

statement

D. because the total number of columns in the NEW_ORDERS table does not match the total number of columns in the ORDERS table

Answer: B

Question: 10

View the Exhibit and examine the structure of the ORDERS table.

Which UPDATE statement is valid?

A. UPDATE orders

SET order_date = ’12-mar-2007′, order_total IS NULL

WHERE order_id = 2455;

B. UPDATE orders

SET order_date = ’12-mar-2007′, order_total = NULL

WHERE order_id = 2455;

C. UPDATE orders

SET order_date = ’12-mar-2007′

AND order_total = TO_NUMBER(NULL) WHERE order_id = 2455;

D. UPDATE orders

SET order_date = TO_DATE(’12-mar-2007′,’dd-mon-yyyy’), SET order_total = TO_NUMBER(NULL)

WHERE order_id = 2455;

Answer: B

Question: 11

Which three statements indicate the end of a transaction? (Choose three.)

A. after a COMMIT is issued

B. after a ROLLBACK is issued

C. after a SAVEPOINT is issued

D. after a SELECT statement is issued

E. after a CREATE statement is issued

Answer: A, B, E

Question: 12

View the Exhibit and examine the descriptions of the DEPT and LOCATIONS tables.

You want to update the CITY column of the DEPT table for all the rows with the corresponding value in the CITY column of the LOCATIONS table for each department.

Which SQL statement would you execute to accomplish the task?

A. UPDATE dept d

SET city = ANY (SELECT city

FROM locations l); B. UPDATE dept d

SET city = (SELECT city

FROM locations l)

WHERE d.location_id = l.location_id; C. UPDATE dept d

SET city = (SELECT city

FROM locations l

WHERE d.location_id = l.location_id); D. UPDATE dept d

SET city = ALL (SELECT city

FROM locations l

WHERE d.location_id = l.location_id);

Answer: C

Question: 13

Evaluate the following DELETE statement: DELETE FROM orders;

There are no other uncommitted transactions on the ORDERS table. Which statement is true about the DELETE statement?

A. It removes all the rows in the table and allows ROLLBACK.

B. It would not remove the rows if the table has a primary key.

C. It removes all the rows as well as the structure of the table.

D. It removes all the rows in the table and does not allow ROLLBACK.

Answer: A

Question: 14

View the Exhibit and examine the structure of ORDERS and ORDER_ITEMS tables.

ORDER_ID is the primary key in the ORDERS table.

It is also the foreign key in the ORDER_ITEMS table wherein it is created with the ON DELETE CASCADE option.

Which DELETE statement would execute successfully?

A. DELETE order_id

FROM orders

WHERE order_total < 1000;

B. DELETE orders

WHERE order_total < 1000; C. DELETE

FROM orders

WHERE (SELECT order_id

FROM order_items);

D. DELETE orders o, order_items i

WHERE o.order_id = i.order_id;

Answer: B

Question: 15

View the Exhibit and examine the structure of EMPLOYEES and JOB_HISTORY tables.

The EMPLOYEES table maintains the most recent information regarding salary, department, and job for all the employees. The JOB_HISTORY table maintains the record for all the job changes for the employees. You want to delete all the records from the JOB_HISTORY table that are repeated in the EMPLOYEES table.

Which two SQL statements can you execute to accomplish the task? (Choose two.)

A. DELETE

FROM job_history j

WHERE employee_id =

(SELECT employee_id

FROM employees e

WHERE j.employee_id = e.employee_id) AND job_id = (SELECT job_id

FROM employees e

WHERE j.job_id = e.job_id);

B. DELETE

FROM job_history j

WHERE (employee_id, job_id) = ALL

(SELECT employee_id, job_

FROM employees e

WHERE j.employee_id = e.employee_id and j.job_id = e.job_id )

C. DELETE

FROM job_history j

WHERE employee_id =

(SELECT employee_id

FROM employees e

WHERE j.employee_id = e.employee_id and j.job_id = e.job_id )

D. DELETE

FROM job_history j

WHERE (employee_id, job_id) =

(SELECT employee_id, job_id

FROM employees e

WHERE j.employee_id = e.employee_id and j.job_id = e.job_id )

Answer: C, D

Question: 16

View the Exhibit and examine the structure of ORDERS and CUSTOMERS tables.

Evaluate the following UPDATE statement: UPDATE

(SELECT order_date, order_total, customer_id

FROM orders)

SET order_date = ’22-mar-2007′ WHERE customer_id =

(SELECT customer_id

FROM customers

WHERE cust_last_name = ‘Roberts’ AND

credit_limit = 600);

Which statement is true regarding the execution of the above UPDATE statement?

A. It would not execute because two tables cannot be used in a single UPDATE statement.

B. It would execute and restrict modifications to only the columns specified in the SELECT statement.

C. It would not execute because a subquery cannot be used in the WHERE clause of an UPDATE statement.

D. It would not execute because the SELECT statement cannot be used in place of the table name.

Answer: B

Question: 17

View the Exhibit and examine the structure of ORDERS and CUSTOMERS tables.

Which INSERT statement should be used to add a row into the ORDERS table for the customer whose CUST_LAST_NAME is Roberts and CREDIT_LIMIT is 600?

A. INSERT INTO orders

VALUES (1,’10-mar-2007′, ‘direct’,

(SELECT customer_id

FROM customers

WHERE cust_last_name=’Roberts’ AND

credit_limit=600), 1000);

B. INSERT INTO orders (order_id,order_date,order_mode,

(SELECT customer_id

FROM customers

WHERE cust_last_name=’Roberts’ AND

credit_limit=600),order_total)

VALUES(1,’10-mar-2007′, ‘direct’, &&customer_id, 1000); C. INSERT INTO orders (order_id,order_date,order_mode,

(SELECT customer_id

FROM customers

WHERE cust_last_name=’Roberts’ AND

credit_limit=600),order_total)

VALUES(1,’10-mar-2007′, ‘direct’, &customer_id, 1000);

D. INSERT INTO(SELECT o.order_id, o.order_date,o.order_mode,c.customer_id, o.order_total

FROM orders o, customers c

WHERE o.customer_id = c.customer_id

AND c.cust_last_name=’Roberts’ ANDc.credit_limit=600 ) VALUES (1,’10-mar-2007′, ‘direct’,(SELECT customer_id FROM customers

WHERE cust_last_name=’Roberts’ AND

credit_limit=600), 1000);

Answer: A

Question: 18

View the Exhibit and examine the data in EMPLOYEES and DEPARTMENTS tables.

In the EMPLOYEES table EMPLOYEE_ID is the PRIMARY KEY and DEPARTMENT_ID is the FOREIGN KEY. In the DEPARTMENTS table DEPARTMENT_ID is the PRIMARY KEY. Evaluate the following UPDATE statement:

UPDATE employees a

SET department_id =

(SELECT department_id

FROM departments

WHERE location_id = ‘2100’),

(salary, commission_pct) =

(SELECT 1.1*AVG(salary), 1.5*AVG(commission_pct) FROM employees b

WHERE a.department_id = b.department_id) WHERE first_name||’ ‘||last_name = ‘Amit Banda’; What would be the outcome of the above statement?

A. It would execute successfully and update the relevant data.

B. It would not execute successfully because there is no LOCATION_ID 2100 in the

DEPARTMENTS table.

C. It would not execute successfully because the condition specified with the concatenation operator is not valid.

D. It would not execute successfully because multiple columns

(SALARY,COMMISSION_PCT)cannot be used in an UPDATE statement.

Answer: A

Question: 19

You executed the following SQL statements in the given order: CREATE TABLE orders

(order_id NUMBER(3) PRIMARY KEY, order_date DATE,

customer_id number(3));

INSERT INTO orders VALUES (100,’10-mar-2007′,222); ALTER TABLE orders MODIFY order_date NOT NULL; UPDATE orders SET customer_id=333;

DELETE FROM order;

The DELETE statement results in the following error: ERROR at line 1:

ORA-00942: table or view does not exist

What would be the outcome?

A. All the statements before the DELETE statement would be rolled back.

B. All the statements before the DELETE statement would be implicitly committed within the session.

C. All the statements up to the ALTER TABLE statement would be committed and the outcome of

UPDATE statement would be rolled back.

D. All the statements up to the ALTER TABLE statement would be committed and the outcome of the UPDATE statement is retained uncommitted within the session.

Answer: D

Question: 20

View the Exhibit and examine the structure of ORDER_ITEMS and ORDERS tables.

You need to remove from the ORDER_ITEMS table those rows that have an order status of 0 or

1 in the ORDERS table.

Which DELETE statements are valid? (Choose all that apply.)

A. DELETE

FROM order_items

WHERE order_id IN (SELECT order_id

FROM orders

WHERE order_status in (0,1));

B. DELETE *

FROM order_items

WHERE order_id IN (SELECT order_id

FROM orders

WHERE order_status IN (0,1));

C. DELETE FROM order_items i

WHERE order_id = (SELECT order_id FROM orders o

WHERE i.order_id = o.order_id AND

order_status IN (0,1));

D. DELETE

FROM (SELECT * FROM order_items i,orders o

WHERE i.order_id = o.order_id AND order_status IN (0,1));

Answer: A, C, D

Chapter 09:Using DDL Statements to Create and Manage Tables

Question: 21

Evaluate the CREATE TABLE statement: CREATE TABLE products

(product_id NUMBER(6) CONSTRAINT prod_id_pk PRIMARY KEY, product_name VARCHAR2(15));

Which statement is true regarding the PROD_ID_PK constraint?

A. It would be created only if a unique index is manually created first.

B. It would be created and would use an automatically created unique index.

C. It would be created and would use an automatically created no unique index.

D. It would be created and remains in a disabled state because no index is specified in the command.

Answer: B

Question: 22

Which CREATE TABLE statement is valid?

A. CREATE TABLE ord_details

(ord_no NUMBER(2) PRIMARY KEY, item_no NUMBER(3) PRIMARY KEY, ord_date date NOT NULL);

B. CREATE TABLE ord_details

(ord_no NUMBER(2) UNIQUE, NOT NULL, item_no NUMBER(3),

ord_date date DEFAULT SYSDATE NOT NULL); C. CREATE TABLE ord_details

(ord_no NUMBER(2) ,

item_no NUMBER(3),

ord_date date DEFAULT NOT NULL, CONSTRAINT ord_uq UNIQUE (ord_no), CONSTRAINT ord_pk PRIMARY KEY (ord_no));

D. CREATE TABLE ord_details

(ord_no NUMBER(2), item_no NUMBER(3),

ord_date date DEFAULT SYSDATE NOT NULL, CONSTRAINT ord_pk PRIMARY KEY (ord_no, item_no));

Answer: D

Question: 23

You need to create a table with the following column specifications:

1. Employee ID (numeric data type) for each employee

2. Employee Name, (character data type) which stores the employee name

3. Hire date, to store the date when the employee joined the organization

4. Status (character data type). It should contain the value if no data is entered.

5. Resume (character large object [CLOB] data type), which would contain the resume submitted by the employee

Which is the correct syntax to create this table?

A. CREATE TABLE EMP_1

(emp_id NUMBER(4), emp_name VARCHAR2(25), start_date DATE,

e_status VARCHAR2(10) DEFAULT ‘ACTIVE’, resume CLOB(200));

B. CREATE TABLE 1_EMP

(emp_id NUMBER(4), emp_name VARCHAR2(25), start_date DATE,

emp_status VARCHAR2(10) DEFAULT ‘ACTIVE’, resume CLOB);

C. CREATE TABLE 1_EMP

(emp_id NUMBER(4), emp_name VARCHAR2(25), start_date DATE,

emp_status VARCHAR2(10) DEFAULT “ACTIVE”, resume CLOB);

D. CREATE TABLE EMP_1

(emp_id NUMBER, emp_name VARCHAR2(25), start_date DATE,

emp_status VARCHAR2(10) DEFAULT ‘ACTIVE’, resume CLOB);

Answer: D

Question: 24

View the Exhibit and examine the structure of the ORDERS table.

The ORDER_ID column is the PRIMARY KEY in the ORDERS table. Evaluate the following CREATE TABLE command:

CREATE TABLE new_orders(ord_id, ord_date DEFAULT SYSDATE, cust_id) AS SELECT order_id,order_date,customer_id

FROM orders;

Which statement is true regarding the above command?

A. The NEW_ORDERS table would not get created because the DEFAULT value cannot be specified in the column definition.

B. The NEW_ORDERS table would get created and only the NOT NULL constraint defined on the specified columns would be passed to the new table.

C. The NEW_ORDERS table would not get created because the column names in the CREATE TABLE command and the SELECT clause do not match.

D. The NEW_ORDERS table would get created and all the constraints defined on the specified columns in the ORDERS table would be passed to the new table.

Answer: B

Question: 25

Evaluate the following command: CREATE TABLE employees

(employee_id NUMBER(2) PRIMARY KEY, last_name VARCHAR2(25) NOT NULL, department_id NUMBER(2),

job_id VARCHAR2(8), salary NUMBER(10,2));

You issue the following command to create a view that displays the IDs and last names of the sales staff in the organization:

CREATE OR REPLACE VIEW sales_staff_vu AS SELECT employee_id, last_name,job_id

FROM employees

WHERE job_id LIKE ‘SA_%’ WITH CHECK OPTION;

Which statements are true regarding the above view? (Choose all that apply.)

A. It allows you to insert details of all new staff into the EMPLOYEES table.

B. It allows you to delete the details of the existing sales staff from the EMPLOYEES table.

C. It allows you to update the job ids of the existing sales staff to any other job id in the

EMPLOYEES table.

D. It allows you to insert the IDs, last names and job ids of the sales staff from the view if it is used in multitable INSERT statements.

Answer: B, D

Question: 26

Evaluate the SQL statements: CREATE TABLE new_order

(orderno NUMBER(4),

booking_date TIMESTAMP WITH LOCAL TIME ZONE);

The database is located in San Francisco where the time zone is -8:00. The user is located in New York where the time zone is -5:00.

A New York user inserts the following record: INSERT INTO new_order

VALUES(1, TIMESTAMP ?007-05-10 6:00:00 -5:00?); Which statement is true?

A. When the New York user selects the row, booking_date is displayed as ‘007-05-10

3.00.00.000000’

B. When the New York user selects the row, booking_date is displayed as ‘2007-05-10

6.00.00.000000 -5:00’.

C. When the San Francisco user selects the row, booking_date is displayed as ‘007-05-10

3.00.00.000000’

D. When the San Francisco user selects the row, booking_date is displayed as ‘007-05-10

3.00.00.000000 -8:00’

Answer: C

Question: 27

Which two statements are true regarding constraints? (Choose two.)

A. A foreign key cannot contain NULL values.

B. A column with the UNIQUE constraint can contain NULL.

C. A constraint is enforced only for the INSERT operation on a table.

D. A constraint can be disabled even if the constraint column contains data.

E. All the constraints can be defined at the column level as well as the table level.

Answer: B, D

Chapter 10: Creating Other Schema Objects

Question: 28

Which two statements are true? (Choose two.)

A. The USER_SYNONYMS view can provide information about private synonyms.

B. The user SYSTEM owns all the base tables and user-accessible views of the data dictionary. C. All the dynamic performance views prefixed with V$ are accessible to all the database users. D. The USER_OBJECTS view can provide information about the tables and views created by the

user only.

E. DICTIONARY is a view that contains the names of all the data dictionary views that the user can access.

Answer: A, E

Question: 29

Evaluate the following CREATE SEQUENCE statement: CREATE SEQUENCE seq1

START WITH 100

INCREMENT BY 10

MAXVALUE 200

CYCLE NOCACHE;

The sequence SEQ1 has generated numbers up to the maximum limit of 200. You issue the following SQL statement:

SELECT seq1.nextval FROM dual;

What is displayed by the SELECT statement?

A. 1

B. 10

C. 100

D. an error

Answer: A

Question: 30

EMPDET is an external table containing the columns EMPNO and ENAME. Which command would work in relation to the EMPDET table?

A. UPDATE empdet

SET ename = ‘Amit’ WHERE empno = 1234;

B. DELETE FROM empdet

WHERE ename LIKE ‘J%’;

C. CREATE VIEW empvu

AS

SELECT * FROM empdept;

D. CREATE INDEX empdet_idx

ON empdet(empno);

Answer: C

Question: 31

View the Exhibit and examine the data in ORDERS and ORDER_ITEMS tables.

You need to create a view that displays the ORDER ID, ORDER_DATE, and the total number of items in each order.

Which CREATE VIEW statement would create the view successfully?

A. CREATE OR REPLACE VIEW ord_vu (order_id,order_date) AS SELECT o.order_id, o.order_date, COUNT(i.line_item_id)

“NO OF ITEMS”

FROM orders o JOIN order_items i

ON (o.order_id = i.order_id)

GROUP BY o.order_id,o.order_date; B. CREATE OR REPLACE VIEW ord_vu

AS SELECT o.order_id, o.order_date, COUNT(i.line_item_id)

“NO OF ITEMS”

FROM orders o JOIN order_items i

ON (o.order_id = i.order_id)

GROUP BY o.order_id,o.order_date; C. CREATE OR REPLACE VIEW ord_vu

AS SELECT o.order_id, o.order_date, COUNT(i.line_item_id) FROM orders o JOIN order_items i

ON (o.order_id = i.order_id)

GROUP BY o.order_id,o.order_date; D. CREATE OR REPLACE VIEW ord_vu

AS SELECT o.order_id, o.order_date, COUNT(i.line_item_id)||’ NO OF ITEMS’ FROM orders o JOIN order_items i

ON (o.order_id = i.order_id)

GROUP BY o.order_id,o.order_date

WITH CHECK OPTION;

Answer: B

Question: 32

You need to create a table for a banking application with the following considerations:

1) You want a column in the table to store the duration of the credit period.

2) The data in the column should be stored in a format such that it can be easily added and subtracted with

3) date type data without using the conversion functions.

4) The maximum period of the credit provision in the application is 30 days.

5) The interest has to be calculated for the number of days an individual has taken a credit for.

Which data type would you use for such a column in the table?

A. INTERVAL YEAR TO MONTH

B. INTERVAL DAY TO SECOND

C. TIMESTAMP WITH TIME ZONE

D. TIMESTAMP WITH LOCAL TIME ZONE

Answer: B

Question: 33

Which two statements are true regarding views? (Choose two.)

A. A simple view in which column aliases have been used cannot be updated.

B. A subquery used in a complex view definition cannot contain group functions or joins.

C. Rows cannot be deleted through a view if the view definition contains the DISTINCT keyword. D. Rows added through a view are deleted from the table automatically when the view is

dropped.

E. The OR REPLACE option is used to change the definition of an existing view without dropping and re-creating it.

F. The WITH CHECK OPTION constraint can be used in a view definition to restrict the columns displayed through the view.

Answer: C, E

Question: 34

Which two statements are true about sequences created in a single instance database? (Choose two.)

A. The numbers generated by a sequence can be used only for one table.

B. DELETE <sequencename> would remove a sequence from the database.

C. CURRVAL is used to refer to the last sequence number that has been generated.

D. When the MAXVALUE limit for a sequence is reached, you can increase the MAXVALUE limit by using the ALTER SEQUENCE statement.

E. When a database instance shuts down abnormally, the sequence numbers that have been cached but not used would be available once again when the database instance is restarted.

Answer: C, D

Question: 35

Which statements are correct regarding indexes? (Choose all that apply.)

A. When a table is dropped, the corresponding indexes are automatically dropped.

B. For each DML operation performed, the corresponding indexes are automatically updated.

C. Indexes should be created on columns that are frequently referenced as part of an expression.

D. A non-deferrable PRIMARY KEY or UNIQUE KEY constraint in a table automatically creates a

unique index.

 

Answer: A, B, D

 

Question: 36

The ORDERS table belongs to the user OE. OE has granted the SELECT privilege on the

ORDERS table to the user HR.

Which statement would create a synonym ORD so that HR can execute the following query successfully?

SELECT * FROM ord;

A. CREATE SYNONYM ord FOR orders; This command is issued by OE.

B. CREATE PUBLIC SYNONYM ord FOR orders; This command is issued by OE.

C. CREATE SYNONYM ord FOR oe.orders; This command is issued by the database administrator.

D. CREATE PUBLIC SYNONYM ord FOR oe.orders; This command is issued by the database administrator.

Answer: D

Question: 37

Which statement is true regarding synonyms?

A. Synonyms can be created for tables but not views.

B. Synonyms are used to reference only those tables that are owned by another user.

C. A public synonym and a private synonym can exist with the same name for the same table.

D. The DROP SYNONYM statement removes the synonym, and the status of the table on which the synonym has been created becomes invalid.

Answer: C

Question: 38

View the Exhibit and examine the structure of the ORD table.

Evaluate the following SQL statements that are executed in a user session in the specified order: CREATE SEQUENCE ord_seq;

SELECT ord_seq.nextval

FROM dual;

INSERT INTO ord

VALUES (ord_seq.CURRVAL, ’25-jan-2007′,101); UPDATE ord

SET ord_no= ord_seq.NEXTVAL WHERE cust_id =101;

What would be the outcome of the above statements?

A. All the statements would execute successfully and the ORD_NO column would contain the value 2 for the CUST_ID 101.

B. The CREATE SEQUENCE command would not execute because the minimum value and maximum value for the sequence have not been specified.

C. The CREATE SEQUENCE command would not execute because the starting value of the sequence and the increment value have not been specified.

D. All the statements would execute successfully and the ORD_NO column would have the value

20 for the CUST_ID 101 because the default CACHE value is 20.

Answer: A

Question: 39

ORD is a private synonym for the OE.ORDERS table. The user OE issues the following command:

DROP SYNONYM ord;

Which statement is true regarding the above SQL statement?

A. Only the synonym would be dropped.

B. The synonym would be dropped and the corresponding table would become invalid. C. The synonym would be dropped and the packages referring to the synonym would be

dropped.

D. The synonym would be dropped and any PUBLIC synonym with the same name becomes invalid.

Answer: A

Question: 40

View the Exhibit button and examine the structures of ORDERS and ORDER_ITEMS tables.

In the ORDERS table, ORDER_ID is the PRIMARY KEY and in the ORDER_ITEMS table, ORDER_ID and LINE_ITEM_ID form the composite primary key.

Which view can have all the DML operations performed on it?

A. CREATE VIEW V1

AS SELECT order_id, product_id

FROM order_items;

B. CREATE VIEW V4(or_no, or_date, cust_id)

AS SELECT order_id, order_date, customer_id

FROM orders

WHERE order_date < ’30-mar-2007′ WITH CHECK OPTION;

C. CREATE VIEW V3

AS SELECT o.order_id, o.customer_id, i.product_id

FROM orders o, order_items i

WHERE o.order_id=i.order_id; D. CREATE VIEW V2

AS SELECT order_id, line_item_id, unit_price*quantity total

FROM order_items;

Answer: B

Chapter 11: Managing Objects with Data Dictionary Views

Question: 42

Evaluate the following SELECT statement and view the Exhibit to examine its output:

SELECT constraint_name, constraint_type, search_condition, r_constraint_name, delete_rule, status FROM user_constraints

WHERE table_name = ORDERS

Which two statements are true about the output? (Choose two.)

A. In the second column, indicates a check constraint.

B. The STATUS column indicates whether the table is currently in use.

C. The R_CONSTRAINT_NAME column gives the alternative name for the constraint.

D. The column DELETE_RULE decides the state of the related rows in the child table when the corresponding row is deleted from the parent table.

Answer: A, D

Question: 43

Which statement is true regarding the SESSION_PRIVS dictionary view?

A. It contains the current object privileges available in the user session.

B. It contains the current system privileges available in the user session.

C. It contains the object privileges granted to other users by the current user session.

D. It contains the system privileges granted to other users by the current user session.

Answer: B

Question: 44

Which statements are true? (Choose all that apply.)

A. The data dictionary is created and maintained by the database administrator.

B. The data dictionary views can consist of joins of dictionary base tables and user-defined tables.

C. The usernames of all the users including the database administrators are stored in the data dictionary.

D. The USER_CONS_COLUMNS view should be queried to find the names of the columns to which a constraint applies.

E. Both USER_OBJECTS and CAT views provide the same information about all the objects that are owned by the user.

F. Views with the same name but different prefixes, such as DBA, ALL and USER, use the same base tables from the data dictionary

Answer: C, D, F

Question: 45

Which view would you use to display the column names and DEFAULT values for a table?

A. DBA_TABLES

B. DBA_COLUMNS

C. USER_COLUMNS

D. USER_TAB_COLUMNS

Answer: D

Oracle Database 10g SQL Fundamentals II

Chapter 01: Controlling User Access

Question: 46

OE and SCOTT are the users in the database. The ORDERS table is owned by OE. Evaluate the statements issued by the DBA in the following sequence:

CREATE ROLE r1;

GRANT SELECT, INSERT ON oe.orders TO r1; GRANT r1 TO scott;

GRANT SELECT ON oe.orders TO scott; REVOKE SELECT ON oe.orders FROM scott;

What would be the outcome after executing the statements?

A. SCOTT would be able to query the OE.ORDERS table.

B. SCOTT would not be able to query the OE.ORDERS table.

C. The REVOKE statement would remove the SELECT privilege from SCOTT as well as from the role R1.

D. The REVOKE statement would give an error because the SELECT privilege has been granted to the role R1.

Answer: A

Question: 47

Which statement correctly grants a system privilege?

A. GRANT EXECUTE ON proc1

TO PUBLIC;

B. GRANT CREATE VIEW ON table1 TO

user1;

C. GRANT CREATE TABLE TO user1,user2;

D. GRANT CREATE SESSION TO ALL;

Answer: C

Question: 48

User OE, the owner of the ORDERS table, issues the following command: GRANT SELECT ,INSERT

ON orders

TO hr

WITH GRANT OPTION;

The user HR issues the following command: GRANT SELECT

ON oe.orders

TO scott;

Then, OE issues the following command: REVOKE ALL

ON orders

FROM hr;

Which statement is correct?

A. The user SCOTT loses the privilege to select rows from OE.ORDERS. B. The user SCOTT retains the privilege to select rows from OE.ORDERS.

C. The REVOKE statement generates an error because OE has to first revoke the SELECT

privilege from SCOTT.

D. The REVOKE statement generates an error because the ALL keyword cannot be used for privileges that have been granted using WITH GRANT OPTION.

Answer: A

Question: 49

SCOTT is a user in the database.

Evaluate the commands issued by the DBA:

1 – CREATE ROLE mgr;

2 – GRANT CREATE TABLE, SELECT ON oe.orders

TO mgr;

3 – GRANT mgr, create table TO SCOTT;

Which statement is true regarding the execution of the above commands?

A. Statement 1 would not execute because the WITH GRANT option is missing.

B. Statement 1 would not execute because the IDENTIFIED BY <password> clause is missing.

C. Statement 3 would not execute because role and system privileges cannot be granted together in a single GRANT statement.

D. Statement 2 would not execute because system privileges and object privileges cannot be granted together in a single GRANT command.

Answer: D

Question: 50

The user SCOTT who is the owner of ORDERS and ORDER_ITEMS tables issues the following

GRANT command: GRANT ALL

ON orders, order_items

TO PUBLIC;

What correction needs to be done to the above statement?

A. PUBLIC should be replaced with specific usernames.

B. ALL should be replaced with a list of specific privileges.

C. WITH GRANT OPTION should be added to the statement.

D. Separate GRANT statements are required for ORDERS and ORDER_ITEMS tables.

Answer: D

Question: 51

Which two statements are true regarding roles? (Choose two.)

A. A role can be granted to itself.

B. A role can be granted to PUBLIC.

C. A user can be granted only one role at any point of time.

D. The REVOKE command can be used to remove privileges but not roles from other users. E. Roles are named groups of related privileges that can be granted to users or other roles.

Answer: B, E

Question: 52

Which statement correctly differentiates a system privilege from an object privilege?

A. System privileges can be granted only by the DBA whereas object privileges can be granted by DBAs or the owner of the object.

B. System privileges give the rights to only create user schemas whereas object privileges give rights to manipulate objects in a schema.

C. Users require system privileges to gain access to the database whereas they require object privileges to create objects in the database.

D. A system privilege is the right to perform specific activities in a database whereas an object privilege is a right to perform activities on a specific object in the database.

Answer: D

Chapter 02: Managing Schema Objects

Question: 53

View the Exhibit and examine the description of the CUSTOMERS table.

You want to add a constraint on the CUST_FIRST_NAME column of the CUSTOMERS table so that the value inserted in the column does not have numbers.

Which SQL statement would you use to accomplish the task?

A. ALTER TABLE CUSTOMERS ADD CONSTRAINT cust_f_name CHECK(REGEXP_LIKE(cust_first_name,’^A-Z’))NOVALIDATE ;

B. ALTER TABLE CUSTOMERS ADD CONSTRAINT cust_f_name CHECK(REGEXP_LIKE(cust_first_name,’^[0-9]’))NOVALIDATE

C. ALTER TABLE CUSTOMERS ADD CONSTRAINT cust_f_name

CHECK(REGEXP_LIKE(cust_first_name,'[[:alpha:]]’))NOVALIDATE ; D. ALTER TABLE CUSTOMERS ADD CONSTRAINT cust_f_name

CHECK(REGEXP_LIKE(cust_first_name,'[[:digit:]]’))NOVALIDATE ; 

Answer: C

Question: 54

View the Exhibit and examine the structure of the EMP table which is not partitioned and not an index-organized table.

Evaluate the following SQL statement: ALTER TABLE emp

DROP COLUMN first_name;

Which two statements is true regarding the above command? (Choose two.)

A. The FIRST_NAME column would be dropped provided it does not contain any data.

B. The FIRST_NAME column would be dropped provided at least one or more columns remain in the table.

C. The FIRST_NAME column can be rolled back provided the SET UNUSED option is added to the above SQL statement.

D. The FIRST_NAME column can be dropped even if it is part of a composite PRIMARY KEY

provided the CASCADE option is used.

Answer: B, D

Question: 55

Evaluate the following SQL statement:

ALTER TABLE hr.emp

SET UNUSED (mgr_id);

Which statement is true regarding the effect of the above SQL statement?

A. Any synonym existing on the EMP table would have to be re-created.

B. Any constraints defined on the MGR_ID column would be removed by the above command. C. Any views created on the EMP table that include the MGR_ID column would have to be

dropped and re-created.

D. Any index created on the MGR_ID column would continue to exist until the DROP UNUSED COLUMNS command is executed.

Answer: B

 Question: 56

Which statement is true regarding external tables?

A. The default REJECT LIMIT for external tables is UNLIMITED.

B. The data and metadata for an external table are stored outside the database.

C. ORACLE_LOADER and ORACLE_DATAPUMP have exactly the same functionality when used with an external table.

D. The CREATE TABLE AS SELECT statement can be used to unload data into regular table in the database from an external table.

Answer: D

Question: 57

View the Exhibit and examine the structure of the EMP table.

You executed the following command to add a primary key to the EMP table: ALTER TABLE emp

ADD CONSTRAINT emp_id_pk PRIMARY KEY (emp_id) USING INDEX emp_id_idx;

Which statement is true regarding the effect of the command?

A. The PRIMARY KEY is created along with a new index.

B. The PRIMARY KEY is created and it would use an existing unique index.

C. The PRIMARY KEY would be created in a disabled state because it is using an existing index.

D. The statement produces an error because the USING clause is permitted only in the CREATE TABLE command.

Answer: B

Question: 58

View the Exhibit and examine the structure of  ORD and  ORD_ITEMS tables.

In the ORD table, the PRIMARY KEY is ORD_NO and in the ORD_ITEMS tables the composite

PRIMARY KEY is (ORD_NO, ITEM_NO).

Which two CREATE INDEX statements are valid? (Choose two.)

A. CREATE INDEX ord_idx

ON ord(ord_no);

B. CREATE INDEX ord_idx

ON ord_items(ord_no); C. CREATE INDEX ord_idx

ON ord_items(item_no); D. CREATE INDEX ord_idx

ON ord,ord_items(ord_no, ord_date,qty);

Answer: B, C

Question: 59

Evaluate the following CREATE TABLE command: CREATE TABLE order_item

(order_id NUMBER(3), item_id NUMBER(2), qty NUMBER(4),

CONSTRAINT ord_itm_id_pk PRIMARY KEY (order_id,item_id) USING INDEX

(CREATE INDEX ord_itm_idx

ON order_item(order_id,item_id)));

Which statement is true regarding the above SQL statement?

A. It would execute successfully and only ORD_ITM_IDX index would be created.

B. It would give an error because the USING INDEX clause cannot be used on a composite primary key.

C. It would execute successfully and two indexes ORD_ITM_IDX and ORD_ITM_ID_PK would be created.

D. It would give an error because the USING INDEX clause is not permitted in the CREATE TABLE command.

Answer: A

Question: 60

Which mandatory clause has to be added to the following statement to successfully create an external table called EMPDET?

CREATE TABLE empdet

(empno CHAR(2), ename CHAR(5), deptno NUMBER(4)) ORGANIZATION EXTERNAL

(LOCATION (’emp.dat’));

A. TYPE

B. REJECT LIMIT

C. DEFAULT DIRECTORY

D. ACCESS PARAMETERS

Answer: C

Question: 61

Evaluate the following SQL statements that are issued in the given order:

CREATE TABLE emp

(emp_no NUMBER(2) CONSTRAINT emp_emp_no_pk PRIMARY KEY, ename VARCHAR2(15),

salary NUMBER(8,2),

mgr_no NUMBER(2) CONSTRAINT emp_mgr_fk REFERENCES emp); ALTER TABLE emp

DISABLE CONSTRAINT emp_emp_no_pk CASCADE; ALTER TABLE emp

ENABLE CONSTRAINT emp_emp_no_pk;

What would be the status of the foreign key EMP_MGR_FK?

A. It would be automatically enabled and deferred. B. It would be automatically enabled and immediate.

C. It would remain disabled and has to be enabled manually using the ALTER TABLE command.

D. It would remain disabled and can be enabled only by dropping the foreign key constraint and re-creating it.

Answer: C

Question: 62

Evaluate the following ALTER TABLE statement: ALTER TABLE orders

SET UNUSED order_date; Which statement is true?

A. The DESCRIBE command would still display the ORDER_DATE column.

B. ROLLBACK can be used to get back the ORDER_DATE column in the ORDERS table.

C. The ORDER_DATE column should be empty for the ALTER TABLE command to execute successfully.

D. After executing the ALTER TABLE command, you can add a new column called

ORDER_DATE to the ORDERS table.

Answer: D

Question: 63

View the Exhibit and examine the ORDERS table.

The ORDERS table contains data and all orders have been assigned a customer ID. Which statement would add a NOT NULL constraint to the CUSTOMER_ID column?

A. ALTER TABLE orders

ADD CONSTRAINT orders_cust_id_nn NOT NULL (customer_id);

B. ALTER TABLE orders

MODIFY customer_id CONSTRAINT orders_cust_id_nn NOT NULL;

C. ALTER TABLE orders

MODIFY CONSTRAINT orders_cust_id_nn NOT NULL (customer_id);

D. ALTER TABLE orders

ADD customer_id NUMBER(6)CONSTRAINT orders_cust_id_nn NOT NULL;

Answer: B

Question: 64

View the Exhibit and examine the data in EMP and DEPT tables.

In the DEPT table, DEPTNO is the PRIMARY KEY.

In the EMP table, EMPNO is the PRIMARY KEY and DEPTNO is the FOREIGN KEY referencing the DEPTNO column in the DEPT table.

What would be the outcome of the following statements executed in the given sequence? DROP TABLE emp;

FLASHBACK TABLE emp TO BEFORE DROP; INSERT INTO emp VALUES (2,COTT 10); INSERT INTO emp VALUES (3,ING 55);

A. Both the INSERT statements would fail because all constraints are automatically retrieved when the table is flashed back.

B. Both the INSERT statements would succeed because none of the constraints on the table are automatically retrieved when the table is flashed back.

C. Only the first INSERT statement would succeed because all the constraints except the primary key constraint are automatically retrieved after a table is flashed back.

D. Only the second INSERT statement would succeed because all the constraints except referential integrity constraints that reference other tables are retrieved automatically after the table is flashed back.

Answer: D

Question: 65

Which two statements best describe the benefits of using the WITH clause? (Choose two.)

A. It enables users to store the results of a query permanently.

B. It enables users to store the query block permanently in the memory and use it to create complex queries.

C. It enables users to reuse the same query block in a SELECT statement, if it occurs more than once in a complex query.

D. It can improve the performance of a large query by storing the result of a query block having the WITH clause in the user’s temporary tablespace.

Answer: C, D

Question: 66

View the Exhibit and examine the structure of the ORDERS and ORDER_ITEMS tables.

In the ORDERS table, ORDER_ID is the PRIMARY KEY and ORDER_DATE has the DEFAULT

value as SYSDATE.

Evaluate the following statement: UPDATE orders

SET order_date=DEFAULT

WHERE order_id IN (SELECT order_id FROM order_items

WHERE qty IS NULL);

What would be the outcome of the above statement?

A. The UPDATE statement would not work because the main query and the subquery use different tables.

B. The UPDATE statement would not work because the DEFAULT value can be used only in

INSERT statements.

C. The UPDATE statement would change all ORDER_DATE values to SYSDATE provided the current ORDER_DATE is NOT NULL and QTY is NULL.

D. The UPDATE statement would change all the ORDER_DATE values to SYSDATE irrespective of what the current ORDER_DATE value is for all orders where QTY is NULL.

Answer: D

Question: 67

The first DROP operation is performed on PRODUCTS table using the following command: DROP TABLE products PURGE;

Then you performed the FLASHBACK operation by using the following command: FLASHBACK TABLE products TO BEFORE DROP;

Which statement describes the outcome of the FLASHBACK command?

A. It recovers only the table structure.

B. It recovers the table structure, data, and the indexes.

C. It recovers the table structure and data but not the related indexes.

D. It is not possible to recover the table structure, data, or the related indexes.

Answer: D

Question: 68

Evaluate the following SQL statement: CREATE INDEX upper_name_idx

ON product_information(UPPER(product_name)); Which query would use the UPPER_NAME_IDX index?

A. SELECT UPPER(product_name) FROM product_information WHERE product_id = 2254;

B. SELECT UPPER(product_name) FROM product_information;

C. SELECT product_id

FROM product_information

WHERE UPPER(product_name) IN (‘LASERPRO’, ‘Cable’); D. SELECT product_id, UPPER(product_name)

FROM product_information

WHERE UPPER(product_name)=’LASERPRO’ OR list_price > 1000;

Answer: C

Question: 69

View the Exhibit and examine the data in the PRODUCTS table.

Which statement would add a column called PRICE, which cannot contain NULL?

A. ALTER TABLE products

ADD price NUMBER(8,2) NOT NULL; B. ALTER TABLE products

ADD price NUMBER(8,2) DEFAULT NOT NULL; C. ALTER TABLE products

ADD price NUMBER(8,2) DEFAULT 0 NOT NULL; D. ALTER TABLE products

ADD price NUMBER(8,2) DEFAULT CONSTRAINT p_nn NOT NULL;

Answer: C

Question: 70

Evaluate the following CREATE TABLE commands: CREATE TABLE orders

(ord_no NUMBER(2) CONSTRAINT ord_pk PRIMARY KEY, ord_date DATE,

cust_id NUMBER(4)); CREATE TABLE ord_items

(ord_no NUMBER(2), item_no NUMBER(3),

qty NUMBER(3) CHECK (qty BETWEEN 100 AND 200), expiry_date date CHECK (expiry_date > SYSDATE), CONSTRAINT it_pk PRIMARY KEY (ord_no,item_no),

CONSTRAINT ord_fk FOREIGN KEY(ord_no) REFERENCES orders(ord_no)); Why would the ORD_ITEMS table not get created?

A. SYSDATE cannot be used with the CHECK constraint.

B. The CHECK constraint cannot be used twice for the same table. C. The BETWEEN clause cannot be used for the CHECK constraint.

D. ORD_NO and ITEM_NO cannot be used as a composite primary key because ORD_NO is also the FOREIGN KEY.

Answer: A

apter 03: Manipulating Large Data Set

Question: 71

You need to load information about new customers from the NEW_CUST table into the tables CUST and CUST_SPECIAL. If a new customer has a credit limit greater than 10,000, then the details have to be inserted into CUST_SPECIAL. All new customer details have to be inserted into the CUST table. Which technique should be used to load the data most efficiently?

A. external table

B. the MERGE command

C. the multitable INSERT command

D. INSERT using WITH CHECK OPTION 

Answer: C

Question: 72

View the Exhibit and examine the structure of the MARKS_DETAILS and MARKStables.

Which is the best method to load data from the MARKS_DETAILStable to the MARKStable?

A. Pivoting INSERT

B. Unconditional INSERT

C. Conditional ALL INSERT

D. Conditional FIRST INSERT

Answer: A

Question: 73

View the Exhibit and examine the structure of the ORDERS table:

The ORDER_ID column has the PRIMARY KEY constraint and CUSTOMER_ID has the NOT NULL constraint.

Evaluate the following statement:

INSERT INTO (SELECT order_id,order_date,customer_id

FROM ORDERS

WHERE order_total = 1000

WITH CHECK OPTION) VALUES (13, SYSDATE, 101);

What would be the outcome of the above INSERT statement?

A. It would execute successfully and the new row would be inserted into a new temporary table created by the subquery.

B. It would execute successfully and the ORDER_TOTAL column would have the value 1000

inserted automatically in the new row.

C. It would not execute successfully because the ORDER_TOTAL column is not specified in the

SELECT list and no value is provided for it.

D. It would not execute successfully because all the columns from the ORDERS table should have been included in the SELECT list and values should have been provided for all the columns.

Answer: C

Question: 74

Evaluate the following statements:

CREATE TABLE digits

(id NUMBER(2),

description VARCHAR2(15));

INSERT INTO digits VALUES (1,’ONE’);

UPDATE digits SET description =’TWO’ WHERE id=1; INSERT INTO digits VALUES (2,’TWO’);

COMMIT;

DELETE FROM digits;

SELECT description FROM digits

VERSIONS BETWEEN TIMESTAMP MINVALUE AND MAXVALUE;

What would be the outcome of the above query?

A. It would not display any values.

B. It would display the value TWO once. C. It would display the value TWO twice.

D. It would display the values ONE, TWO, and TWO.

Answer: C

Question: 75

View the Exhibit and examine the structure of the CUSTOMERS table.

CUSTOMER_VU is a view based on CUSTOMERS_BR1 table which has the same structure as CUSTOMERS table. CUSTOMERS needs to be updated to reflect the latest information about the customers.

What is the error in the following MERGE statement?

MERGE INTO customers c

USING customer_vu cv

ON (c.customer_id = cv.customer_id)

WHEN MATCHED THEN UPDATE SET

c.customer_id = cv.customer_id, c.cust_name = cv.cust_name, c.cust_email = cv.cust_email, c.income_level = cv.income_level WHEN NOT MATCHED THEN

INSERT VALUES(cv.customer_id,cv.cust_name,cv.cust_email,cv,income_level)

WHERE cv.income_level >100000;

A. The CUSTOMER_ID column cannot be updated. B. The INTO clause is misplaced in the command.

C. The WHERE clause cannot be used with INSERT. D. CUSTOMER_VU cannot be used as a data source.

Answer: A

 Question: 76

Evaluate the following statement:

CREATE TABLE bonuses(employee_id NUMBER, bonus NUMBER DEFAULT 100);

The details of all employees who have made sales need to be inserted into the BONUSES table. You can obtain the list of employees who have made sales based on the SALES_REP_ID column of the ORDERS table.

The human resources manager now decides that employees with a salary of $8,000 or less should receive a bonus. Those who have not made sales get a bonus of 1% of their salary. Those who have made sales get a bonus of 1% of their salary and also a salary increase of 1%. The salary of each employee can be obtained from the EMPLOYEES table.

Which option should be used to perform this task most efficiently?

A. MERGE

B. Unconditional INSERT

C. Conditional ALL INSERT

D. Conditional FIRST INSERT

Answer: A

Question: 77

Which statement is true regarding Flashback Version Query?

A. It returns versions of rows only within a transaction.

B. It can be used in subqueries contained only in a SELECT statement.

C. It will return an error if the undo retention time is less than the lower bound time or SCN

specified.

D. It retrieves all versions including the deleted as well as subsequently reinserted versions of the rows.

Answer: D

Question: 78

View the Exhibit and examine the structure of the ORDERS table.

The columns ORDER_MODE and ORDER_TOTAL have the default values ‘direct’ and 0

respectively.

Which two INSERT statements are valid? (Choose two.)

A. INSERT INTO orders

VALUES (1, ’09-mar-2007′, ‘online’,”,1000); B. INSERT INTO orders

(order_id,order_date,order_mode, customer_id,order_total) VALUES(1,TO_DATE(NULL), ‘online’, 101, NULL);

C. INSERT INTO

(SELECT order_id,order_date,customer_id

FROM orders)

VALUES (1,’09-mar-2007′, 101); D. INSERT INTO orders

VALUES (1,’09-mar-2007′, DEFAULT, 101, DEFAULT); E. INSERT INTO orders

(order_id,order_date,order_mode,order_total) VALUES (1,’10-mar-2007′,’online’,1000);

Answer: C, D

Question: 79

The details of the order ID, order date, order total, and customer ID are obtained from the ORDERS table. If the order value is more than 30000, the details have to be added to the LARGE_ORDERS table. The order ID, order date, and order total should be added to the ORDER_HISTORY table, and order ID and customer ID should be added to the CUST_HISTORY table. Which multitable INSERT statement would you use?

A. Pivoting INSERT

B. Unconditional INSERT

C. Conditional ALL INSERT

D. Conditional FIRST INSERT

Answer: C

Question: 80

View the Exhibit and examine the data in the CUST_DET table.

You executed the following multitable INSERT statement: INSERT FIRST

WHEN credit_limit >= 5000 THEN

INTO cust_1 VALUES(cust_id, credit_limit, grade, gender) WHEN grade = THEN

INTO cust_2 VALUES(cust_id, credit_limit, grade, gender) WHEN grade = THEN

INTO cust_3 VALUES(cust_id, credit_limit, grade, gender) INTO cust_4 VALUES(cust_id, credit_limit, grade, gender) ELSE

INTO cust_5 VALUES(cust_id, credit_limit, grade, gender) SELECT * FROM cust_det;

The row will be inserted in _______.

A. CUST_1 table only because CREDIT_LIMIT condition is satisfied

B. CUST_1 and CUST_2 tables because CREDIT_LIMIT and GRADE conditions are satisfied

C. CUST_1,CUST_2 and CUST_5 tables because CREDIT_LIMIT and GRADE conditions are satisfied but GENDER condition is not satisfied

D. CUST_1, CUST_2 and CUST_4 tables because CREDIT_LIMIT and GRADE conditions are satisfied for CUST_1 and CUST_2, and CUST_4 has no condition on it

Answer: A

Question: 81

Evaluate the following statement:

INSERT ALL

WHEN order_total < 10000 THEN INTO small_orders

WHEN order_total > 10000 AND order_total < 20000 THEN INTO medium_orders

WHEN order_total > 2000000 THEN INTO large_orders

SELECT order_id, order_total, customer_id

FROM orders;

Which statement is true regarding the evaluation of rows returned by the subquery in the INSERT

statement?

A. They are evaluated by all the three WHEN clauses regardless of the results of the evaluation of any other WHEN clause.

B. They are evaluated by the first WHEN clause. If the condition is true, then the row would be evaluated by the subsequent WHEN clauses.

C. They are evaluated by the first WHEN clause. If the condition is false, then the row would be evaluated by the subsequent WHEN clauses.

D. The INSERT statement would give an error because the ELSE clause is not present for support in case none of the WHEN clauses are true.

Answer: A

Chapter 04: Generating Reports by Grouping Related Data

Question: 82

View the Exhibit and examine the descriptions of ORDER_ITEMS and ORDERS tables.

You want to display the CUSTOMER_ID, PRODUCT_ID, and total (UNIT_PRICE multiplied by QUANTITY) for the order placed. You also want to display the subtotals for a CUSTOMER_ID as well as for a PRODUCT_ID for the last six months.

Which SQL statement would you execute to get the desired output?

A. SELECT o.customer_id, oi.product_id, SUM(oi.unit_price*oi.quantity) “Total” FROM

order_items oi JOIN orders o

ON oi.order_id=o.order_id

GROUP BY ROLLUP (o.customer_id,oi.product_id)

WHERE MONTHS_BETWEEN(order_date, SYSDATE) <= 6;

B. SELECT o.customer_id, oi.product_id, SUM(oi.unit_price*oi.quantity) “Total” FROM order_items oi JOIN orders o

ON oi.order_id=o.order_id

GROUP BY ROLLUP (o.customer_id,oi.product_id)

HAVING MONTHS_BETWEEN(order_date, SYSDATE) <= 6;

C. SELECT o.customer_id, oi.product_id, SUM(oi.unit_price*oi.quantity) “Total” FROM order_items oi JOIN orders o

ON oi.order_id=o.order_id

GROUP BY ROLLUP (o.customer_id, oi.product_id)

WHERE MONTHS_BETWEEN(order_date, SYSDATE) >= 6;

D. SELECT o.customer_id, oi.product_id, SUM(oi.unit_price*oi.quantity) “Total” FROM order_items oi JOIN orders o

ON oi.order_id=o.order_id

WHERE MONTHS_BETWEEN(order_date, SYSDATE) <= 6

GROUP BY ROLLUP (o.customer_id, oi.product_id) ;

Answer: D

Question: 83

In which scenario would you use the ROLLUP operator for expression or columns within a

GROUP BY clause?

A. to find the groups forming the subtotal in a row

B. to create group-wise grand totals for the groups specified within a GROUP BY clause

C. to create a grouping for expressions or columns specified within a GROUP BY clause in one direction, from right to left for calculating the subtotals

D. to create a grouping for expressions or columns specified within a GROUP BY clause in all possible directions, which is cross-tabular report for calculating the subtotals

Answer: C

Question: 84

Which statement best describes the GROUPING function?

A. It is used to set the order for the groups to be used for calculating the grand totals and subtotals.

B. It is used to form various groups to calculate total and subtotals created using ROLLUP and

CUBE operators.

C. It is used to identify if the NULL value in an expression is a stored NULL value or created by

ROLLUP or CUBE.

D. It is used to specify the concatenated group expressions to be used for calculating the grand totals and subtotals.

Answer: C

Question: 85

Which statement is true regarding the ROLLUP operator specified in the GROUP BY clause of a

SQL statement?

A. It produces only the subtotals for the groups specified in the GROUP BY clause.

B. It produces only the grand totals for the groups specified in the GROUP BY clause.

C. It produces higher-level subtotals, moving from right to left through the list of grouping columns specified in the GROUP BY clause.

D. It produces higher-level subtotals, moving in all the directions through the list of grouping columns specified in the GROUP BY clause.

Answer: C

Question: 86

Which two statements are true about the GROUPING function? (Choose two.)

A. It is used to find the groups forming the subtotal in a row.

B. It is used to identify the NULL value in the aggregate functions.

C. It is used to form the group sets involved in generating the totals and subtotals.

D. It can only be used with ROLLUP and CUBE operators specified in the GROUP BY clause.

Answer: A, D

Question: 87

View the Exhibit and examine the descriptions for ORDERS and ORDER_ITEMS tables.

Evaluate the following SQL statement:

SELECT o.customer_id, oi.product_id, SUM(oi.unit_price*oi.quantity) “Order Amount” FROM order_items oi JOIN orders o

ON oi.order_id = o.order_id

GROUP BY CUBE (o.customer_id, oi.product_id);

Which three statements are true regarding the output of this SQL statement? (Choose three.)

A. It would return the subtotals for the Order Amount of every CUSTOMER_ID. B. It would return the subtotals for the Order Amount for every PRODUCT_ID.

C. It would return the subtotals for the Order Amount of every PRODUCT_ID and

CUSTOMER_ID as one group.

D. It would return the subtotals for the Order Amount of every CUSTOMER_ID and

PRODUCT_ID as one group.

E. It would return only the grand total for the Order Amount of every CUSTOMER_ID and

PRODUCT_ID as one group.

Answer: A, B, D

Question: 88

View the Exhibit1 and examine the descriptions of the EMPLOYEES and DEPARTMENTS tables.

The following SQL statement was executed:

SELECT e.department_id, e.job_id, d.location_id, sum(e.salary) total, GROUPING(e.department_id) GRP_DEPT,

GROUPING(e.job_id) GRP_JOB, GROUPING(d.location_id) GRP_LOC FROM employees e JOIN departments d ON e.department_id = d.department_id

GROUP BY ROLLUP (e.department_id, e.job_id, d.location_id); View the Exhibit2 and examine the output of the command.

Which two statements are true regarding the output? (Choose two.)

A. The value 1 in GRP_LOC means that the LOCATION_ID column is taken into account to generate the subtotal.

B. The value 1 in GRP_JOB and GRP_LOC means that JOB_ID and LOCATION_ID columns are not taken into account to generate the subtotal.

C. The value 1 in GRP_JOB and GRP_LOC means that the NULL value in JOB_ID and

LOCATION_ID columns are taken into account to generate the subtotal.

D. The value 0 in GRP_DEPT, GRP_JOB, and GRP_LOC means that DEPARTMENT_ID, JOB_ID, and LOCATION_ID columns are taken into account to generate the subtotal.

Answer: B, D

Question: 89

View the Exhibit and examine the description for EMPLOYEES and DEPARTMENTS tables.

Evaluate the following SQL statement:

SELECT e.department_id, e.job_id, d.location_id, sum(e.salary) total

FROM employees e JOIN departments d

ON e.department_id = d.department_id

GROUP BY CUBE (e.department_id, e.job_id, d.location_id);

Which two statements are true regarding the output of this command? (Choose two.)

A. The output would display the total salary for all the departments.

B. The output would display the total salary for all the JOB_IDs in a department.

C. The output would display only the grand total of the salary for all JOB_IDs in a LOCATION_ID.

D. The output would display the grand total of the salary for only the groups specified in the GROUP BY clause.

 Answer: A, B 

Question: 90

Exam Name

Which statement is true regarding the CUBE operator in the GROUP BY clause of a SQL statement?

A. It produces only aggregates for the groups specified in the GROUP BY clause.

B. It finds all the NULL values in the superaggregates for the groups specified in the GROUP BY clause.

C. It produces 2 n possible superaggregate combinations, if the n columns and expressions are specified in the GROUP BY clause.

D. It produces n+1 possible superaggregate combinations, if the n columns and expressions are specified in the GROUP BY clause.

Answer: C 

Chapter 05: Managing Data in Different Time Zones

Question: 91

Evaluate the following SQL statements in the given order:

DROP TABLE dept; CREATE TABLE dept

(deptno NUMBER(3) PRIMARY KEY, deptname VARCHAR2(10));

DROP TABLE dept;

FLASHBACK TABLE dept TO BEFORE DROP;

Which statement is true regarding the above FLASHBACK operation?

A. It recovers only the first DEPT table.

B. It recovers only the second DEPT table.

C. It does not recover any of the tables because FLASHBACK is not possible in this case. D. It recovers both the tables but the names would be changed to the ones assigned in the

RECYCLEBIN.

Answer: B

Question: 92

Which three statements are true? (Choose three.)

A. Only one LONG column can be used per table.

B. A TIMESTAMP data type column stores only time values with fractional seconds.

C. The BLOB data type column is used to store binary data in an operating system file.

D. The minimum column width that can be specified for a varchar2 data type column is one.

E. The value for a CHAR data type column is blank-padded to the maximum defined column

width.

Answer: A, D, E 

Question: 93

Given below is a list of datetime data types and examples of values stored in them in a random order:

Datatype Example

1)INTERVAL YEAR TO MONTH a) ‘2003-04-15 8:00:00 -8:00’

2)TIMESTAMP WITH LOCAL TIME ZONE b) ‘+06 03:30:16.000000′

3)TIMESTAMP WITH TIME ZONE c) ’17-JUN-03 12.00.00.000000 AM’

4)INTERVAL DAY TO SECOND d) ‘+02-00’

Identify the option that correctly matches the data types with the values.

A. 1-d, 2-c, 3-a, 4-b

B. 1-b, 2-a, 3-c, 4-d

C. 1-b, 2-a, 3-d, 4-c

D. 1-d, 2-c, 3-b, 4-a

Answer: A

Question: 94

Evaluate the following query: SELECT INTERVAL ‘300’ MONTH, INTERVAL ’54-2′ YEAR TO MONTH,

INTERVAL ’11:12:10.1234567′ HOUR TO SECOND FROM dual;

What is the correct output of the above query?

A. +25-00 , +54-02, +00 11:12:10.123457

B. +00-300, +54-02, +00 11:12:10.123457

C. +25-00 , +00-650, +00 11:12:10.123457

D. +00-300 , +00-650, +00 11:12:10.123457

Answer: A

Chapter 06: Retrieving Data Using Subqueries

Question: 95

Which two statements is true regarding the execution of the correlated subqueries? (Choose two.)

A. The nested query executes after the outer query returns the row.

B. The nested query executes first and then the outer query executes.

C. The outer query executes only once for the result returned by the inner query.

D. Each row returned by the outer query is evaluated for the results returned by the inner query.

Answer: A, D

Question: 96

Which two statements are true regarding the EXISTS operator used in the correlated subqueries?

(Choose two.)

A. The outer query stops evaluating the result set of the inner query when the first value is found. B. It is used to test whether the values retrieved by the inner query exist in the result of the outer

query.

C. It is used to test whether the values retrieved by the outer query exist in the result set of the inner query.

D. The outer query continues evaluating the result set of the inner query until all the values in the result set are processed.

Answer: A, C

Question: 97

A non-correlated subquery can be defined as ____.

A. a set of sequential queries, all of which must always return a single value

B. a set of sequential queries, all of which must return values from the same table

C. a SELECT statement that can be embedded in a clause of another SELECT statement only

D. a set of one or more sequential queries in which generally the result of the inner query is used as the search value in the outer query

Answer: D

Question: 98

View the Exhibit and examine the description of EMPLOYEES and DEPARTMENTS tables.

You want to display the EMPLOYEE_ID, LAST_NAME, and SALARY for the employees who get the maximum salary in their respective departments. The following SQL statement was written:

WITH SELECT employee_id, last_name, salary

FROM employees

WHERE (department_id, salary) = ANY (SELECT * FROM dept_max)

dept_max as ( SELECT d.department_id, max(salary) FROM departments d JOIN employees j

ON (d.department_id = j.department_id) GROUP BY d.department_id);

Which statement is true regarding the execution and the output of this statement?

A. The statement would execute and give the desired results.

B. The statement would not execute because the = ANY comparison operator is used instead of

=.

C. The statement would not execute because the main query block uses the query name before it is even created.

D. The statement would not execute because the comma is missing between the main query block and the query name.

Answer: C

Question: 99

The following are the steps for a correlated subquery, listed in random order:

1) The WHERE clause of the outer query is evaluated.

2) The candidate row is fetched from the table specified in the outer query.

3) The procedure is repeated for the subsequent rows of the table, till all the rows are processed.

4) Rows are returned by the inner query, after being evaluated with the value from the candidate row in the outer query.

Identify the option that contains the steps in the correct sequence in which the Oracle server evaluates a correlated subquery.

A. 4, 2, 1, 3

B. 4, 1, 2, 3

C. 2, 4, 1, 3

D. 2, 1, 4, 3

Answer: C

Question: 100

Which statements are true regarding the usage of the WITH clause in complex correlated subqueries? (Choose all that apply.)

A. It can be used only with the SELECT clause.

B. The WITH clause can hold more than one query.

C. If the query block name and the table name were the same, then the table name would take precedence.

D. The query name in the WITH clause is visible to other query blocks in the WITH clause as well as to the main query block.

Answer: A, B, D

Chapter 07: Hierarchical Retrieval

 Question: 100

View the Exhibit and examine the structure of the EMPLOYEES table.

You want to retrieve hierarchical data of the employees using the top-down hierarchy. Which SQL

clause would let you choose the direction to walk through the hierarchy tree?

A. WHERE

B. HAVING

C. GROUP BY

D. START WITH

E. CONNECT BY PRIOR

Answer: E

Question: 101

Which statements are true regarding the hierarchical query in Oracle Database 10g? (Choose all that apply.)

A. It is possible to retrieve data only in top-down hierarchy.

B. It is possible to retrieve data in top-down or bottom-up hierarchy.

C. It is possible to remove an entire branch from the output of the hierarchical query. D. You cannot specify conditions when you retrieve data by using a hierarchical query.

Answer: B, C

Question: 102

View the Exhibit and examine the structure of the EMPLOYEES table.

Evaluate the following SQL statement:

SELECT employee_id, last_name, job_id, manager_id

FROM employees

START WITH employee_id = 101

CONNECT BY PRIOR employee_id=manager_id;

Which statement is true regarding the output for this command?

A. It would return a hierarchical output starting with the employee whose EMPLOYEE_ID is 101, followed by his or her peers.

B. It would return a hierarchical output starting with the employee whose EMPLOYEE_ID is 101, followed by the employee to whom he or she reports.

C. It would return a hierarchical output starting with the employee whose EMPLOYEE_ID is 101, followed by employees below him or her in the hierarchy.

D. It would return a hierarchical output starting with the employee whose EMPLOYEE_ID is101, followed by employees up to one level below him or her in the hierarchy.

Answer: C

Question: 103

View the Exhibit and examine the details of the EMPLOYEES table.

You want to generate a hierarchical report for all the employees who report to the employee whose EMPLOYEE_ID is 100.

Which SQL clauses would you require to accomplish the task? (Choose all that apply.)

A. WHERE

B. HAVING

C. GROUP BY

D. START WITH

E. CONNECT BY

 Answer: A, D, E

 Question: 104

View the Exhibit and examine the description of the EMPLOYEES table.

Evaluate the following SQL statement:

SELECT employee_id, last_name, job_id, manager_id, LEVEL FROM employees

START WITH employee_id = 101

CONNECT BY PRIOR employee_id=manager_id ;

Which two statements are true regarding the output of this command? (Choose two.)

A. The output would be in top-down hierarchy starting with EMPLOYEE_ID having value 101. B. The output would be in bottom-up hierarchy starting with EMPLOYEE_ID having value 101. C. The LEVEL column displays the number of employees in the hierarchy under the employee

having the EMPLOYEE_ID 101.

D. The LEVEL column displays the level in the hierarchy at which the employee is placed under the employee having the EMPLOYEE_ID 101.

Answer: A, D

Question: 105

View the Exhibit and examine the details of the EMPLOYEES table.

Evaluate the following SQL statements: Statement 1:

SELECT employee_id, last_name, job_id, manager_id FROM employees

START WITH employee_id = 101

CONNECT BY PRIOR employee_id = manager_id AND manager_id != 108 ; Statement 2:

SELECT employee_id, last_name, job_id, manager_id

FROM employees

WHERE manager_id != 108

START WITH employee_id = 101

CONNECT BY PRIOR employee_id = manager_id;

Which two statements are true regarding the above SQL statements? (Choose two.)

A. Statement 2 would not execute because the WHERE clause condition is not allowed in a statement that has the START WITH clause.

B. The output for statement 1 would display the employee with MANAGER_ID 108 and all the employees below him or her in the hierarchy.

C. The output of statement 1 would neither display the employee with MANAGER_ID 108 nor any employee below him or her in the hierarchy.

D. The output for statement 2 would not display the employee with MANAGER_ID 108 but it would display all the employees below him or her in the hierarchy.

Answer: C, D

Chapter 08: Regular Expression Support

 Question: 106

Which three tasks can be performed using regular expression support in Oracle Database 10g?

(Choose three.)

A. It can be used to concatenate two strings.

B. It can be used to find out the total length of the string.

C. It can be used for string manipulation and searching operations.

D. It can be used to format the output for a column or expression having string data.

E. It can be used to find and replace operations for a column or expression having string data.

Answer: C, D, E

Question: 107

View the Exhibit and examine the details of the EMPLOYEES table.

Evaluate the following SQL statement: SELECT phone_number,

REGEXP_REPLACE(phone_number,'([[:digit:]]{3})\.([[:digit:]]{3})\.([[:digit:]]{4})’, ‘(\1) \2-\3’)

“PHONE NUMBER” FROM employees;

The query was written to format the PHONE_NUMBER for the employees. Which option would be the correct format in the output?

A. xxx-xxx-xxxx B. (xxx) xxxxxxx C. (xxx) xxx-xxxx D. xxx-(xxx)-xxxx

Answer: C

Question: 108

View the Exhibit and examine the data in the LOCATIONS table.

Evaluate the following SQL statement: SELECT street_address

FROM locations

WHERE REGEXP_INSTR(street_address,'[^[:alpha:]]’) = 1;

Which statement is true regarding the output of this SQL statement?

A. It would display all the street addresses that do not have a substring ‘alpha’.

B. It would display all the street addresses where the first character is a special character.

C. It would display all the street addresses where the first character is a letter of the alphabet.

D. It would display all the street addresses where the first character is not a letter of the alphabet.

Answer: D

Question: 109

Evaluate the following expression using meta character for regular expression:

‘[^Ale|ax.r$]’

Which two matches would be returned by this expression? (Choose two.)

A. Alex

B. Alax

C. Alxer

D. Alaxendar

E. Alexender

Answer: D, E

 Question: 110

View the Exhibit and examine the details for the CATEGORIES_TAB table.

Evaluate the following incomplete SQL statement: SELECT category_name,category_

FROM categories_tab

You want to display only the rows that have ‘harddisks’ as part of the string in the

CATEGORY_DESCRIPTION column.

Which two WHERE clause options can give you the desired result? (Choose two.)

A. WHERE REGEXP_LIKE (category_description, ‘hard+.s’);

B. WHERE REGEXP_LIKE (category_description, ‘^H|hard+.s’);

C. WHERE REGEXP_LIKE (category_description, ‘^H|hard+.s$’);

D. WHERE REGEXP_LIKE (category_description, ‘[^H|hard+.s]’);

Answer: A, B

Question: 111

Given below is the list of meta character syntaxes and their descriptions in random order:

Meta character syntax Description

1) ^ a) Matches character not in the list

2) [^…] b) Matches character when it occurs at the beginning of a line

3) | c) Treats the subsequent meta character as a literal

4) \ d) Matches one of the characters such as the OR operator

Identify the option that correctly matches the meta character syntaxes with their descriptions.

A. 1-b, 2-a, 3-d, 4-c

B. 1-a, 2-b, 3-d, 4-c

C. 1-d, 2-b, 3-a, 4-c

D. 1-b, 2-c, 3-d, 2-a

Answer: A

                                                                                                                                                                                                                                                             EXCLUSIVE MCQ FOR SQL

Question: 1

You need to load information about new customers from the NEW_CUST table into the tables

CUST and CUST_SPECIAL. If a new customer has a credit limit greater than 10,000, then the

details have to be inserted into CUST_SPECIAL. All new customer details have to be inserted
into the CUST table. Which technique should be used to load the data most efficiently?

A. external table

B. the MERGE command

C. the multitable INSERT command

D. INSERT using WITH CHECK OPTION

Answer: C

Question: 2

View the Exhibit and examine the description of the CUSTOMERS table.

You want to add a constraint on the CUST_FIRST_NAME column of the CUSTOMERS table so that the value inserted in the column does not have numbers.

Which SQL statement would you use to accomplish the task?

A. ALTER TABLE CUSTOMERS ADD CONSTRAINT cust_f_name
CHECK(REGEXP_LIKE(cust_first_name,’^A-Z’))NOVALIDATE ;

B. ALTER TABLE CUSTOMERS ADD CONSTRAINT cust_f_name
CHECK(REGEXP_LIKE(cust_first_name,’^[0-9]’))NOVALIDATE ;

C. ALTER TABLE CUSTOMERS ADD CONSTRAINT cust_f_name

CHECK(REGEXP_LIKE(cust_first_name,'[[:alpha:]]’))NOVALIDATE ;

D. ALTER TABLE CUSTOMERS ADD CONSTRAINT cust_f_name

CHECK(REGEXP_LIKE(cust_first_name,'[[:digit:]]’))NOVALIDATE ;

Answer: C

Question: 3

Which three tasks can be performed using regular expression support in Oracle Database 10g? (Choose three.)

A. It can be used to concatenate two strings.

B. It can be used to find out the total length of the string.

C. It can be used for string manipulation and searching operations.

D. It can be used to format the output for a column or expression having string data.

E. It can be used to find and replace operations for a column or expression having string data.

Answer: C, D, E

Question: 4

View the Exhibit and examine the structure of the EMP table which is not partitioned and not an index-organized table.

Evaluate the following SQL statement: ALTER TABLE emp

DROP COLUMN first_name;

Which two statements is true regarding the above command? (Choose two.)

A. The FIRST_NAME column would be dropped provided it does not contain any data.

B. The FIRST_NAME column would be dropped provided at least one or more columns remain in
the table.

C. The FIRST_NAME column can be rolled back provided the SET UNUSED option is added to
the above SQL statement.

D. The FIRST_NAME column can be dropped even if it is part of a composite PRIMARY KEY
provided the CASCADE option is used.

Answer: B, D

Question: 5

Evaluate the CREATE TABLE statement: CREATE TABLE products

(product_id NUMBER(6) CONSTRAINT prod_id_pk PRIMARY KEY, product_name VARCHAR2(15));

Which statement is true regarding the PROD_ID_PK constraint?

A. It would be created only if a unique index is manually created first.

B. It would be created and would use an automatically created unique index.

C. It would be created and would use an automatically created no unique index.

D. It would be created and remains in a disabled state because no index is specified in the
command.

Answer: B

Question: 6

Which two statements are true? (Choose two.)

A. The USER_SYNONYMS view can provide information about private synonyms.

B. The user SYSTEM owns all the base tables and user-accessible views of the data dictionary.

C. All the dynamic performance views prefixed with V$ are accessible to all the database users.

D. The USER_OBJECTS view can provide information about the tables and views created by the
user only.

E. DICTIONARY is a view that contains the names of all the data dictionary views that the user
can access.

Answer: A, E

Question: 7

View the Exhibit and examine the description of the ORDERS table.

Which two WHERE clause conditions demonstrate the correct usage of conversion functions? (Choose two.)

A. WHERE order_date > TO_DATE(‘JUL 10 2006′,’MON DD YYYY’)

B. WHERE TO_CHAR(order_date,’MON DD YYYY’) = ‘JAN 20 2003′

C. WHERE order_date > TO_CHAR(ADD_MONTHS(SYSDATE,6),’MON DD YYYY’)

D. WHERE order_date IN ( TO_DATE(‘Oct 21 2003′,’Mon DD YYYY’), TO_CHAR(‘NOV 21
2003′,’Mon DD YYYY’) )

Answer: A, B

Question: 8

View the Exhibit and examine the description of the EMPLOYEES table.

Your company decided to give a monthly bonus of $50 to all the employees who have completed five years in the company. The following statement is written to display the LAST_NAME,
DEPARTMENT_ID, and the total annual salary:

SELECT last_name, department_id, salary+50*12 “Annual Compensation” FROM employees

WHERE MONTHS_BETWEEN(SYSDATE, hire_date)/12 >= 5;

When you execute the statement, the “Annual Compensation” is not computed correctly. What changes would you make to the query to calculate the annual compensation correctly?

A. Change the SELECT clause to SELECT last_name, department_id, salary*12+50 “Annual
Compensation”.

B. Change the SELECT clause to SELECT last_name, department_id, salary+(50*12) “Annual
Compensation”.

C. Change the SELECT clause to SELECT last_name, department_id, (salary+50)*12 “Annual
Compensation”.

D. Change the SELECT clause to SELECT last_name, department_id, (salary*12)+50 “Annual
Compensation”.

Answer: C

Question: 9

Evaluate the following CREATE SEQUENCE statement: CREATE SEQUENCE seq1

START WITH 100

INCREMENT BY 10
MAXVALUE 200
CYCLE

NOCACHE;

The sequence SEQ1 has generated numbers up to the maximum limit of 200. You issue the following SQL statement:

SELECT seq1.nextval FROM dual;

What is displayed by the SELECT statement?

A. 1

B. 10

C. 100

D. an error

Answer: A

Question: 10

View the Exhibit and examine the description of the EMPLOYEES table.

You want to display the EMPLOYEE_ID, FIRST_NAME, and DEPARTMENT_ID for all the

employees who work in the same department and have the same manager as that of the

employee having EMPLOYEE_ID 104. To accomplish the task, you execute the following SQL statement:

SELECT employee_id, first_name, department_id FROM employees

WHERE (manager_id, department_id) =(SELECT department_id, manager_id

FROM employees

WHERE employee_id = 104)
AND employee_id <> 104;

When you execute the statement it does not produce the desired output. What is the reason for
this?

A. The WHERE clause condition in the main query is using the = comparison operator, instead of
EXISTS.

B. The WHERE clause condition in the main query is using the = comparison operator, instead of
the IN operator.

C. The WHERE clause condition in the main query is using the = comparison operator, instead of
the = ANY operator.

D. The columns in the WHERE clause condition of the main query and the columns selected in
the subquery should be in the same order.

Answer: D

Question: 11

View the Exhibit and examine the descriptions of ORDER_ITEMS and ORDERS tables.

You want to display the CUSTOMER_ID, PRODUCT_ID, and total (UNIT_PRICE multiplied by

QUANTITY) for the order placed. You also want to display the subtotals for a CUSTOMER_ID as well as for a PRODUCT_ID for the last six months.

Which SQL statement would you execute to get the desired output?

A. SELECT o.customer_id, oi.product_id, SUM(oi.unit_price*oi.quantity) “Total” FROM
order_items oi JOIN orders o

ON oi.order_id=o.order_id

GROUP BY ROLLUP (o.customer_id,oi.product_id)

WHERE MONTHS_BETWEEN(order_date, SYSDATE) <= 6;

B. SELECT o.customer_id, oi.product_id, SUM(oi.unit_price*oi.quantity) “Total”
FROM order_items oi JOIN orders o

ON oi.order_id=o.order_id

GROUP BY ROLLUP (o.customer_id,oi.product_id)

HAVING MONTHS_BETWEEN(order_date, SYSDATE) <= 6;

C. SELECT o.customer_id, oi.product_id, SUM(oi.unit_price*oi.quantity) “Total”
FROM order_items oi JOIN orders o

ON oi.order_id=o.order_id

GROUP BY ROLLUP (o.customer_id, oi.product_id)

WHERE MONTHS_BETWEEN(order_date, SYSDATE) >= 6;

D. SELECT o.customer_id, oi.product_id, SUM(oi.unit_price*oi.quantity) “Total”
FROM order_items oi JOIN orders o

ON oi.order_id=o.order_id

WHERE MONTHS_BETWEEN(order_date, SYSDATE) <= 6

GROUP BY ROLLUP (o.customer_id, oi.product_id) ;

Answer: D

Question: 12

View the Exhibit and examine the structure of the EMPLOYEES table.

You want to retrieve hierarchical data of the employees using the top-down hierarchy. Which SQL clause would let you choose the direction to walk through the hierarchy tree?

A. WHERE

B. HAVING

C. GROUP BY

D. START WITH

E. CONNECT BY PRIOR

Answer: E

Question: 13

Which two statements is true regarding the execution of the correlated subqueries? (Choose
two.)

A. The nested query executes after the outer query returns the row.

B. The nested query executes first and then the outer query executes.

C. The outer query executes only once for the result returned by the inner query.

D. Each row returned by the outer query is evaluated for the results returned by the inner query.

Answer: A, D

Question: 14

OE and SCOTT are the users in the database. The ORDERS table is owned by OE. Evaluate the statements issued by the DBA in the following sequence:

CREATE ROLE r1;

GRANT SELECT, INSERT ON oe.orders TO r1; GRANT r1 TO scott;

GRANT SELECT ON oe.orders TO scott;

REVOKE SELECT ON oe.orders FROM scott;

What would be the outcome after executing the statements?

A. SCOTT would be able to query the OE.ORDERS table.

B. SCOTT would not be able to query the OE.ORDERS table.

C. The REVOKE statement would remove the SELECT privilege from SCOTT as well as from the
role R1.

D. The REVOKE statement would give an error because the SELECT privilege has been granted
to the role R1.

Answer: A

Question: 15

Evaluate the following SQL statement:

ALTER TABLE hr.emp

SET UNUSED (mgr_id);

Which statement is true regarding the effect of the above SQL statement?

A. Any synonym existing on the EMP table would have to be re-created.

B. Any constraints defined on the MGR_ID column would be removed by the above command.

C. Any views created on the EMP table that include the MGR_ID column would have to be
dropped and re-created.

D. Any index created on the MGR_ID column would continue to exist until the DROP UNUSED
COLUMNS command is executed.

Answer: B

Question: 16

EMPDET is an external table containing the columns EMPNO and ENAME. Which command would work in relation to the EMPDET table?

A. UPDATE empdet

SET ename = ‘Amit’

WHERE empno = 1234;

B. DELETE FROM empdet

WHERE ename LIKE ‘J%’;

C. CREATE VIEW empvu
AS

SELECT * FROM empdept;

D. CREATE INDEX empdet_idx
ON empdet(empno);

Answer: C

Question: 17

View the Exhibit and examine the structure of the MARKS_DETAILS and MARKStables.

Which is the best method to load data from the MARKS_DETAILStable to the MARKStable?

A. Pivoting INSERT

B. Unconditional INSERT

C. Conditional ALL INSERT

D. Conditional FIRST INSERT

Answer: A

Question: 18

View the Exhibit and examine the data in ORDERS and ORDER_ITEMS tables.

You need to create a view that displays the ORDER ID, ORDER_DATE, and the total number of items in each order.

Which CREATE VIEW statement would create the view successfully?

A. CREATE OR REPLACE VIEW ord_vu (order_id,order_date)
AS SELECT o.order_id, o.order_date, COUNT(i.line_item_id)
“NO OF ITEMS”

FROM orders o JOIN order_items i
ON (o.order_id = i.order_id)
GROUP BY o.order_id,o.order_date;

B. CREATE OR REPLACE VIEW ord_vu

AS SELECT o.order_id, o.order_date, COUNT(i.line_item_id) “NO OF ITEMS”

FROM orders o JOIN order_items i
ON (o.order_id = i.order_id)
GROUP BY o.order_id,o.order_date;

C. CREATE OR REPLACE VIEW ord_vu

AS SELECT o.order_id, o.order_date, COUNT(i.line_item_id) FROM orders o JOIN order_items i

ON (o.order_id = i.order_id)

GROUP BY o.order_id,o.order_date;

D. CREATE OR REPLACE VIEW ord_vu

AS SELECT o.order_id, o.order_date, COUNT(i.line_item_id)||’ NO OF ITEMS’ FROM orders o JOIN order_items i

ON (o.order_id = i.order_id)

GROUP BY o.order_id,o.order_date WITH CHECK OPTION;

Answer: B

Question: 19

View the Exhibit and examine PRODUCTS and ORDER_ITEMS tables.

You executed the following query to display PRODUCT_NAME and the number of times the product has been ordered:

SELECT p.product_name, i.item_cnt

FROM (SELECT product_id, COUNT (*) item_cnt FROM order_items

GROUP BY product_id) i RIGHT OUTER JOIN products p ON i.product_id = p.product_id;

What would happen when the above statement is executed?

A. The statement would execute successfully to produce the required output.

B. The statement would not execute because inline views and outer joins cannot be used
together.

C. The statement would not execute because the ITEM_CNT alias cannot be displayed in the
outer query.

D. The statement would not execute because the GROUP BY clause cannot be used in the inline

view.

Answer: A

Question: 20

In which scenario would you use the ROLLUP operator for expression or columns within a GROUP BY clause?

A. to find the groups forming the subtotal in a row

B. to create group-wise grand totals for the groups specified within a GROUP BY clause

C. to create a grouping for expressions or columns specified within a GROUP BY clause in one
direction, from right to left for calculating the subtotals

D. to create a grouping for expressions or columns specified within a GROUP BY clause in all
possible directions, which is cross-tabular report for calculating the subtotals

Answer: C

Question: 21

View the Exhibit and examine the details of the EMPLOYEES table.

Evaluate the following SQL statement: SELECT phone_number,

REGEXP_REPLACE(phone_number,'([[:digit:]]{3})\.([[:digit:]]{3})\.([[:digit:]]{4})’, ‘(\1) \2-\3′) “PHONE NUMBER”

FROM employees;

The query was written to format the PHONE_NUMBER for the employees. Which option would be the correct format in the output?

A. xxx-xxx-xxxx

B. (xxx) xxxxxxx

C. (xxx) xxx-xxxx

D. xxx-(xxx)-xxxx

Answer: C

Question: 22

Which statement correctly grants a system privilege?

A. GRANT EXECUTE

ON proc1

TO PUBLIC;

B. GRANT CREATE VIEW
ON table1 TO

user1;

C. GRANT CREATE TABLE
TO user1,user2;

D. GRANT CREATE SESSION
TO ALL;

Answer: C

Question: 23

View the Exhibit and examine the structure of the CUST table.

Evaluate the following SQL statements executed in the given order: ALTER TABLE cust

ADD CONSTRAINT cust_id_pk PRIMARY KEY(cust_id) DEFERRABLE INITIALLY DEFERRED; INSERT INTO cust VALUES (1,’RAJ’); –row 1

INSERT INTO cust VALUES (1,’SAM’); –row 2 COMMIT;

SET CONSTRAINT cust_id_pk IMMEDIATE;

INSERT INTO cust VALUES (1,’LATA’); –row 3
INSERT INTO cust VALUES (2,’KING’); –row 4
COMMIT;

Which rows would be made permanent in the CUST table?

A. row 4 only

B. rows 2 and 4

C. rows 3 and 4

D. rows 1 and 4

Answer: C

Question: 24

View the Exhibit and examine the structure of the ORDERS table:

The ORDER_ID column has the PRIMARY KEY constraint and CUSTOMER_ID has the NOT NULL constraint.

Evaluate the following statement:

INSERT INTO (SELECT order_id,order_date,customer_id FROM ORDERS

WHERE order_total = 1000

WITH CHECK OPTION)

VALUES (13, SYSDATE, 101);

What would be the outcome of the above INSERT statement?

A. It would execute successfully and the new row would be inserted into a new temporary table

created by the subquery.

B. It would execute successfully and the ORDER_TOTAL column would have the value 1000
inserted automatically in the new row.

C. It would not execute successfully because the ORDER_TOTAL column is not specified in the
SELECT list and no value is provided for it.

D. It would not execute successfully because all the columns from the ORDERS table should
have been included in the SELECT list and values should have been provided for all the
columns.

Answer: C

Question: 25

View the Exhibit and examine the description of the EMPLOYEES table.

Your company wants to give 5% bonus to all the employees on their annual salary. The SALARY column stores the monthly salary for an employee. To check the total for annual salary and bonus amount for each employee, you issued the following SQL statement:

SELECT first_name, salary, salary*12+salary*12*.05 “ANNUAL SALARY + BONUS” FROM employees;

Which statement is true regarding the above query?

A. It would execute and give you the desired output.

B. It would not execute because the AS keyword is missing between the column name and the
alias.

C. It would not execute because double quotation marks are used instead of single quotation
marks for assigning alias for the third column.

D. It would execute but the result for the third column would be inaccurate because the
parentheses for overriding the precedence of the operator are missing.

Answer: A

Question: 26

Which statement is true regarding external tables?

A. The default REJECT LIMIT for external tables is UNLIMITED.

B. The data and metadata for an external table are stored outside the database.

C. ORACLE_LOADER and ORACLE_DATAPUMP have exactly the same functionality when
used with an external table.

D. The CREATE TABLE AS SELECT statement can be used to unload data into regular table in
the database from an external table.

Answer: D

Question: 27 View the Exhibit and examine the structure of the PRODUCT_INFORMATION table. You want to see the product names and the date of expiration of warranty for all the products, if the product is purchased today. The products that have no warranty should be displayed at the top and the products with maximum warranty period should be displayed at the bottom.
Which SQL statement would you execute to fulfill this requirement?

A. SELECT product_name, category_id, SYSDATE+warranty_period AS “Warranty expire date”

FROM product_information ORDER BY SYSDATE-warranty_period;

B. SELECT product_name, category_id, SYSDATE+warranty_period AS “Warranty expire date”
FROM product_information ORDER BY SYSDATE+warranty_period;

C. SELECT product_name, category_id, SYSDATE+warranty_period AS “Warranty expire date”
FROM product_information ORDER BY SYSDATE;

D. SELECT product_name, category_id, SYSDATE+warranty_period “Warranty expire date”
FROM product_information WHERE warranty_period >SYSDATE;

Answer: B

Question: 28

Which two statements are true regarding the EXISTS operator used in the correlated subqueries? (Choose two.)

A. The outer query stops evaluating the result set of the inner query when the first value is found.

B. It is used to test whether the values retrieved by the inner query exist in the result of the outer
query.

C. It is used to test whether the values retrieved by the outer query exist in the result set of the
inner query.

D. The outer query continues evaluating the result set of the inner query until all the values in the
result set are processed.

Answer: A, C

Question: 29 A non-correlated subquery can be defined as ____.

A. a set of sequential queries, all of which must always return a single value

B. a set of sequential queries, all of which must return values from the same table

C. a SELECT statement that can be embedded in a clause of another SELECT statement only

D. a set of one or more sequential queries in which generally the result of the inner query is used
as the search value in the outer query

Answer: D

Question: 30

You need to create a table for a banking application with the following considerations:

1) You want a column in the table to store the duration of the credit period.

2) The data in the column should be stored in a format such that it can be easily added and
subtracted with

3) date type data without using the conversion functions.

4) The maximum period of the credit provision in the application is 30 days.

5) The interest has to be calculated for the number of days an individual has taken a credit for.

Which data type would you use for such a column in the table?

A. INTERVAL YEAR TO MONTH

B. INTERVAL DAY TO SECOND

C. TIMESTAMP WITH TIME ZONE

D. TIMESTAMP WITH LOCAL TIME ZONE

Answer: B

Question: 31

Which statements are true regarding the hierarchical query in Oracle Database 10g? (Choose all that apply.)

A. It is possible to retrieve data only in top-down hierarchy.

B. It is possible to retrieve data in top-down or bottom-up hierarchy.

C. It is possible to remove an entire branch from the output of the hierarchical query.

D. You cannot specify conditions when you retrieve data by using a hierarchical query.

Answer: B, C

Question: 32

Which two statements are true regarding views? (Choose two.)

A. A simple view in which column aliases have been used cannot be updated.

B. A subquery used in a complex view definition cannot contain group functions or joins.

C. Rows cannot be deleted through a view if the view definition contains the DISTINCT keyword.

D. Rows added through a view are deleted from the table automatically when the view is
dropped.

E. The OR REPLACE option is used to change the definition of an existing view without dropping
and re-creating it.

F. The WITH CHECK OPTION constraint can be used in a view definition to restrict the columns
displayed through the view.

Answer: C, E

Question: 33

View the Exhibit and examine the details of the ORDER_ITEMS table.

Evaluate the following SQL statements:

Statement 1:

SELECT MAX(unit_price*quantity) “Maximum Order” FROM order_items;

Statement 2:

SELECT MAX(unit_price*quantity) “Maximum Order” FROM order_items

GROUP BY order_id;

Which statements are true regarding the output of these SQL statements? (Choose all that
apply.)

A. Statement 1 would return only one row of output.

B. Both the statements would give the same output.

C. Statement 2 would return multiple rows of output.

D. Statement 1 would not return any row because the GROUP BY clause is missing.

E. Both statements would ignore NULL values for the UNIT_PRICE and QUANTITY columns.

Answer: A, C, E

Question: 34

View the Exhibit and examine the structure of the ORDERS and ORDER_ITEMS tables.

Evaluate the following SQL statement:

SELECT oi.order_id, product_id, order_date FROM order_items oi JOIN orders o
USING(order_id);

Which statement is true regarding the execution of this SQL statement?

A. The statement would not execute because table aliases are not allowed in the JOIN clause.

B. The statement would not execute because the table alias prefix is not used in the USING
clause.

C. The statement would not execute because all the columns in the SELECT clause are not
prefixed with table aliases.

D. The statement would not execute because the column part of the USING clause cannot have a

qualifier in the SELECT list.

Answer: D

Question: 35

Evaluate the following SQL statements in the given order:

DROP TABLE dept;

CREATE TABLE dept

(deptno NUMBER(3) PRIMARY KEY, deptname VARCHAR2(10));
DROP TABLE dept;

FLASHBACK TABLE dept TO BEFORE DROP;

Which statement is true regarding the above FLASHBACK operation?

A. It recovers only the first DEPT table.

B. It recovers only the second DEPT table.

C. It does not recover any of the tables because FLASHBACK is not possible in this case.

D. It recovers both the tables but the names would be changed to the ones assigned in the
RECYCLEBIN.

Answer: B

Question: 36

Evaluate the following statements:

CREATE TABLE digits

(id NUMBER(2),

description VARCHAR2(15));

INSERT INTO digits VALUES (1,’ONE’);

UPDATE digits SET description =’TWO’ WHERE id=1; INSERT INTO digits VALUES (2,’TWO’);

COMMIT;

DELETE FROM digits;

SELECT description FROM digits

VERSIONS BETWEEN TIMESTAMP MINVALUE AND MAXVALUE;

What would be the outcome of the above query?

A. It would not display any values.

B. It would display the value TWO once.

C. It would display the value TWO twice.

D. It would display the values ONE, TWO, and TWO.

Answer: C

Question: 37

View the Exhibit and examine the description of the ORDERS table.

Evaluate the following SQL statement:

SELECT order_id, customer_id FROM orders

WHERE order_date > ‘June 30 2001’;

Which statement is true regarding the execution of this SQL statement?

A. It would not execute because ‘June 30 2001’ in the WHERE condition is not enclosed within
double quotation marks.

B. It would execute and would return ORDER_ID and CUSTOMER_ID for all records having
ORDER_DATE greater than ‘June 30 2001’.

C. It would not execute because ‘June 30 2001’ in the WHERE condition cannot be converted
implicitly and needs the use of the TO_DATE conversion function for proper execution.

D. It would not execute because ‘June 30 2001’ in the WHERE condition cannot be converted

implicitly and needs the use of the TO_CHAR conversion function for proper execution.

Answer: C

Question: 38

Which statements are correct regarding indexes? (Choose all that apply.)

A. When a table is dropped, the corresponding indexes are automatically dropped.

B. For each DML operation performed, the corresponding indexes are automatically updated.

C. Indexes should be created on columns that are frequently referenced as part of an expression.

D. A non-deferrable PRIMARY KEY or UNIQUE KEY constraint in a table automatically creates a
unique index.

Answer: A, B, D

Question: 39

View the Exhibit and examine the description of the PRODUCT_INFORMATION table.

Which SQL statement would retrieve from the table the number of products having LIST_PRICE as NULL?

A. SELECT COUNT(list_price)
FROM product_information
WHERE list_price IS NULL;

B. SELECT COUNT(list_price)
FROM product_information

WHERE list_price = NULL;

C. SELECT COUNT(NVL(list_price, 0))
FROM product_information

WHERE list_price IS NULL;

D. SELECT COUNT(DISTINCT list_price)
FROM product_information

WHERE list_price IS NULL;

Answer: C

Question: 40

User OE, the owner of the ORDERS table, issues the following command: GRANT SELECT ,INSERT

ON orders

TO hr

WITH GRANT OPTION;

The user HR issues the following command: GRANT SELECT

ON oe.orders
TO scott;

Then, OE issues the following command: REVOKE ALL

ON orders

FROM hr;

Which statement is correct?

A. The user SCOTT loses the privilege to select rows from OE.ORDERS.

B. The user SCOTT retains the privilege to select rows from OE.ORDERS.

C. The REVOKE statement generates an error because OE has to first revoke the SELECT
privilege from SCOTT.

D. The REVOKE statement generates an error because the ALL keyword cannot be used for
privileges that have been granted using WITH GRANT OPTION.

Answer: A

Question: 41

View the Exhibit and examine the structure of the EMP table.

You executed the following command to add a primary key to the EMP table: ALTER TABLE emp

ADD CONSTRAINT emp_id_pk PRIMARY KEY (emp_id) USING INDEX emp_id_idx;

Which statement is true regarding the effect of the command?

A. The PRIMARY KEY is created along with a new index.

B. The PRIMARY KEY is created and it would use an existing unique index.

C. The PRIMARY KEY would be created in a disabled state because it is using an existing index.

D. The statement produces an error because the USING clause is permitted only in the CREATE
TABLE command.

Answer: B

Question: 42

SCOTT is a user in the database.

Evaluate the commands issued by the DBA:

1 – CREATE ROLE mgr;

2 – GRANT CREATE TABLE, SELECT
ON oe.orders

TO mgr;

3 – GRANT mgr, create table TO SCOTT;

Which statement is true regarding the execution of the above commands?

A. Statement 1 would not execute because the WITH GRANT option is missing.

B. Statement 1 would not execute because the IDENTIFIED BY <password> clause is missing.

C. Statement 3 would not execute because role and system privileges cannot be granted together
in a single GRANT statement.

D. Statement 2 would not execute because system privileges and object privileges cannot be
granted together in a single GRANT command.

Answer: D

Question: 43

Which statement best describes the GROUPING function?

A. It is used to set the order for the groups to be used for calculating the grand totals and   subtotals.

B. It is used to form various groups to calculate total and subtotals created using ROLLUP and   CUBE operators.

C. It is used to identify if the NULL value in an expression is a stored NULL value or created by  ROLLUP or CUBE.

D. It is used to specify the concatenated group expressions to be used for calculating the grand  totals and subtotals.

Answer: C

Question: 44

View the Exhibit and examine the structure of ORD and ORD_ITEMS tables.

In the ORD table, the PRIMARY KEY is ORD_NO and in the ORD_ITEMS tables the composite PRIMARY KEY is (ORD_NO, ITEM_NO).

Which two CREATE INDEX statements are valid? (Choose two.)

A. CREATE INDEX ord_idx

ON ord(ord_no);

B. CREATE INDEX ord_idx
ON ord_items(ord_no);

C. CREATE INDEX ord_idx
ON ord_items(item_no);

D. CREATE INDEX ord_idx

ON ord,ord_items(ord_no, ord_date,qty);

Answer: B, C

Question: 45

View the Exhibit and examine the structure of the CUSTOMERS table.

CUSTOMER_VU is a view based on CUSTOMERS_BR1 table which has the same structure as CUSTOMERS table. CUSTOMERS needs to be updated to reflect the latest information about the customers.

What is the error in the following MERGE statement?

MERGE INTO customers c

USING customer_vu cv

ON (c.customer_id = cv.customer_id)

WHEN MATCHED THEN UPDATE SET

c.customer_id = cv.customer_id,
c.cust_name = cv.cust_name,
c.cust_email = cv.cust_email,
c.income_level = cv.income_level
WHEN NOT MATCHED THEN

INSERT VALUES(cv.customer_id,cv.cust_name,cv.cust_email,cv,income_level)

WHERE cv.income_level >100000;

A. The CUSTOMER_ID column cannot be updated.

B. The INTO clause is misplaced in the command.

C. The WHERE clause cannot be used with INSERT.

D. CUSTOMER_VU cannot be used as a data source.

Answer: A

Question: 46

Which two statements are true regarding operators used with subqueries? (Choose two.)

A. The NOT IN operator is equivalent to IS NULL.

B. The <ANY operator means less than the maximum.

C. =ANY and =ALL operators have the same functionality.

D. The IN operator cannot be used in single-row subqueries.

E. The NOT operator can be used with IN, ANY and ALL operators.

Answer: B, E

Question: 47

Given below are the SQL statements executed in a user session:

CREATE TABLE product

(pcode NUMBER(2),

pname VARCHAR2(10));

INSERT INTO product VALUES(1, ‘pen’); INSERT INTO product VALUES (2,’pencil’); SAVEPOINT a;

UPDATE product SET pcode = 10 WHERE pcode = 1; SAVEPOINT b;

DELETE FROM product WHERE pcode = 2; COMMIT;

DELETE FROM product WHERE pcode=10; ROLLBACK TO SAVEPOINT a;

Which statement describes the consequences?

A. No SQL statement would be rolled back.

B. Both the DELETE statements would be rolled back.

C. Only the second DELETE statement would be rolled back.

D. Both the DELETE statements and the UPDATE statement would be rolled back.

Answer: A

Question: 48

Evaluate the following CREATE TABLE command: CREATE TABLE order_item

(order_id NUMBER(3),
item_id NUMBER(2),
qty NUMBER(4),

CONSTRAINT ord_itm_id_pk

PRIMARY KEY (order_id,item_id) USING INDEX

(CREATE INDEX ord_itm_idx

ON order_item(order_id,item_id)));

Which statement is true regarding the above SQL statement?

A. It would execute successfully and only ORD_ITM_IDX index would be created.

B. It would give an error because the USING INDEX clause cannot be used on a composite
primary key.

C. It would execute successfully and two indexes ORD_ITM_IDX and ORD_ITM_ID_PK would be
created.

D. It would give an error because the USING INDEX clause is not permitted in the CREATE

TABLE command.

Answer: A

Question: 49

View the Exhibit and examine the description of EMPLOYEES and DEPARTMENTS tables.

You want to display the EMPLOYEE_ID, LAST_NAME, and SALARY for the employees who get
the maximum salary in their respective departments. The following SQL statement was written:

WITH SELECT employee_id, last_name, salary

FROM employees

WHERE (department_id, salary) = ANY (SELECT * FROM dept_max)

dept_max as ( SELECT d.department_id, max(salary) FROM departments d JOIN employees j

ON (d.department_id = j.department_id)

GROUP BY d.department_id);

Which statement is true regarding the execution and the output of this statement?

A. The statement would execute and give the desired results.

B. The statement would not execute because the = ANY comparison operator is used instead of
=.

C. The statement would not execute because the main query block uses the query name before it
is even created.

D. The statement would not execute because the comma is missing between the main query

block and the query name.

Answer: C

Question: 50

View the Exhibit and examine the data in the DEPARTMENTS tables.

Evaluate the following SQL statement:

SELECT department_id “DEPT_ID”, department_name , ‘b’ FROM departments

WHERE department_id=90
UNION

SELECT department_id, department_name DEPT_NAME, ‘a’ FROM departments

WHERE department_id=10

Which two ORDER BY clauses can be used to sort the output of the above statement? (Choose
two.)

A. ORDER BY 3;

B. ORDER BY ‘b’;

C. ORDER BY DEPT_ID;

D. ORDER BY DEPT_NAME;

Answer: A, C

Question: 51

View the Exhibit and examine the description of the EMPLOYEES table.You want to know the EMPLOYEE_ID and FIRST_NAME of all the records in the EMPLOYEES table wherein the JOB_ID column has ST_CLERK or ST_MAN values, the DEPARTMENT_ID column has value 30, and the SALARY column has a value greater than 3,000.

Which SQL statement would get you the desired result?

A. SELECT employee_id, first_name

FROM employees

WHERE job_id like ‘MAN%’ OR job_id like ‘CLERK%’ AND department_id = 30 AND salary > 3000;

B. SELECT employee_id, first_name
FROM employees

WHERE job_id like ‘%MAN’ OR job_id like ‘%CLERK’ AND (department_id = 30 OR salary > 3000);

C. SELECT employee_id, first_name
FROM employees

WHERE (job_id like ‘%MAN’ AND job_id like ‘%CLERK’) AND department_id = 30 OR salary > 3000;

D. SELECT employee_id, first_name
FROM employees

WHERE (job_id like ‘%MAN’ OR job_id like ‘%CLERK’ ) AND department_id = 30 AND salary > 3000;

Answer: D

Question: 52

View the Exhibit and examine the structure of the ORDERS table.

The ORDERS table belongs to the user OE. HR is another user in the database. Evaluate the commands issued by users OE and HR in the following order:
Statement 1 by user OE: GRANT SELECT,

UPDATE(customer_id, order_total) ON orders

TO hr;

Statement 1 by user HR: SELECT * FROM oe.orders; Statement 2 by user HR: UPDATE oe.orders
SET order_total= 10000;

Which statement is true regarding the above commands?

A. Statement 1 by user OE would not work because the statement has to be issued by the DBA.

B. Statement 2 by user HR would not work because the grant is only for SELECT in a subquery
of update.

C. There are no errors in the statements issued by OE and HR; all the statements would execute
successfully.

D. Statement 1 by user HR would not work because SELECT and UPDATE privileges have been
granted only on CUSTOMER_ID and ORDER_TOTAL columns.

Answer: C

Question: 53

View the Exhibit and examine the structure of the ORDER_ITEMS table.

You need to display the ORDER_ID of the order that has the highest total value among all the orders in the ORDER_ITEMS table.

Which query would produce the desired output?

WHERE(unit_price*quantity) = MAX(unit_price*quantity) GROUP BY order_id;

B. SELECT order_id
FROM order_items

WHERE(unit_price*quantity) = (SELECT MAX(unit_price*quantity) FROM order_items)

GROUP BY order_id;

C. SELECT order_id
FROM order_items

WHERE (unit_price*quantity) = (SELECT MAX(unit_price*quantity) FROM order_items

GROUP BY order_id);

D. SELECT order_id
FROM order_items
GROUP BY order_id

HAVING SUM(unit_price*quantity) =(SELECT MAX(SUM(unit_price*quantity)) FROM order_items GROUP BY order_id);

Answer: D

Question: 54

Which two statements are true about sequences created in a single instance database? (Choose
two.)

A. The numbers generated by a sequence can be used only for one table.

B. DELETE <sequencename> would remove a sequence from the database.

C. CURRVAL is used to refer to the last sequence number that has been generated.

D. When the MAXVALUE limit for a sequence is reached, you can increase the MAXVALUE limit
by using the ALTER SEQUENCE statement.

E. When a database instance shuts down abnormally, the sequence numbers that have been

cached but not used would be available once again when the database instance is restarted.

Answer: C, D

Question: 55

View the Exhibit and examine the structure of the EMPLOYEES and DEPARTMENTS tables.

Which SET operator would you use in the blank space in the following SQL statement to list the departments where all the employees have managers?

SELECT department_id
FROM departments
____

SELECT department_id FROM employees

WHERE manager_id IS NULL;

A. UNION

B. MINUS

C. INTERSECT

D. UNION ALL

Answer: B

Question: 56

Which mandatory clause has to be added to the following statement to successfully create an external table called EMPDET?

CREATE TABLE empdet

(empno CHAR(2), ename CHAR(5), deptno NUMBER(4)) ORGANIZATION EXTERNAL

(LOCATION (’emp.dat’));

A. TYPE

B. REJECT LIMIT

C. DEFAULT DIRECTORY

D. ACCESS PARAMETERS

Answer: C

Question: 57

View the Exhibit and examine the description of the ORDER_ITEMS and PRODUCT_INFORMATION tables.

The ORDER_ITEM table has records pertaining to details for each product in an order. The PRODUCT_INFORMATION table has records for all the products available for ordering. Evaluate the following SQL statement:

SELECT oi.order_id, pi.product_id

FROM order_items oi RIGHT OUTER JOIN product_information pi ON (oi.product_id=pi.product_id);

Which statement is true regarding the output of this SQL statement?

A. The query would return the ORDER_ID and PRODUCT_ID for only those products that are
ordered.

B. The query would return the ORDER_ID and PRODUCT_ID for the products that are ordered
as well as for the products that have never been ordered.

C. The query would return the ORDER_ID and PRODUCT_ID for the products that are ordered
but not listed in the PRODUCT_INFORMATION table.

D. The query would return the ORDER_ID and PRODUCT_ID for those products that are ordered

as well as for the products that have never been ordered, and for the products that are not listed in the PRODUCT_INFORMATION table.

Answer: B

Question: 58

Evaluate the following statement:

CREATE TABLE bonuses(employee_id NUMBER, bonus NUMBER DEFAULT 100);

The details of all employees who have made sales need to be inserted into the BONUSES table. You can obtain the list of employees who have made sales based on the SALES_REP_ID
column of the ORDERS table.

The human resources manager now decides that employees with a salary of $8,000 or less

should receive a bonus. Those who have not made sales get a bonus of 1% of their salary. Those who have made sales get a bonus of 1% of their salary and also a salary increase of 1%. The salary of each employee can be obtained from the EMPLOYEES table.
Which option should be used to perform this task most efficiently?

A. MERGE

B. Unconditional INSERT

C. Conditional ALL INSERT

D. Conditional FIRST INSERT

Answer: A

Question: 59

Which statement is true regarding the ROLLUP operator specified in the GROUP BY clause of a SQL statement?

A. It produces only the subtotals for the groups specified in the GROUP BY clause.

B. It produces only the grand totals for the groups specified in the GROUP BY clause.

C. It produces higher-level subtotals, moving from right to left through the list of grouping columns
specified in the GROUP BY clause.

D. It produces higher-level subtotals, moving in all the directions through the list of grouping
columns specified in the GROUP BY clause.

Answer: C

Question: 60

View the Exhibit and examine DEPARTMENTS and the LOCATIONS tables.

Evaluate the following SQL statement: SELECT location_id, city

FROM locations

l WHERE NOT EXISTS (SELECT location_id FROM departments

WHERE location_id <> l.location_id);

This statement was written to display LOCATION_ID and CITY where there are no departments located. Which statement is true regarding the execution and output of the command?

A. The statement would execute and would return the desired results.

B. The statement would not execute because the = comparison operator is missing in the
WHERE clause of the outer query.

C. The statement would execute but it will return zero rows because the WHERE clause in the
inner query should have the = operator instead of <>.

D. The statement would not execute because the WHERE clause in the outer query is missing
the column name for comparison with the inner query result.

Answer: C

Question: 61

Evaluate the following SQL statements that are issued in the given order:

CREATE TABLE emp

(emp_no NUMBER(2) CONSTRAINT emp_emp_no_pk PRIMARY KEY, ename VARCHAR2(15),

salary NUMBER(8,2),

mgr_no NUMBER(2) CONSTRAINT emp_mgr_fk REFERENCES emp); ALTER TABLE emp

DISABLE CONSTRAINT emp_emp_no_pk CASCADE; ALTER TABLE emp

ENABLE CONSTRAINT emp_emp_no_pk;

What would be the status of the foreign key EMP_MGR_FK?

A. It would be automatically enabled and deferred.

B. It would be automatically enabled and immediate.

C. It would remain disabled and has to be enabled manually using the ALTER TABLE command.

D. It would remain disabled and can be enabled only by dropping the foreign key constraint and
re-creating it.

Answer: C

Question: 62

View the Exhibit and examine the structure of the LOCATIONS and DEPARTMENTS tables.

Which SET operator should be used in the blank space in the following SQL statement to display the cities that have departments located in them?

SELECT location_id, city

FROM locations

____

SELECT location_id, city

FROM locations JOIN departments USING(location_id);

A. UNION

B. MINUS

C. INTERSECT

D. UNION ALL

Answer: C

Question: 63

Which CREATE TABLE statement is valid?

A. CREATE TABLE ord_details

(ord_no NUMBER(2) PRIMARY KEY, item_no NUMBER(3) PRIMARY KEY, ord_date date NOT NULL);

B. CREATE TABLE ord_details

(ord_no NUMBER(2) UNIQUE, NOT NULL, item_no NUMBER(3),

ord_date date DEFAULT SYSDATE NOT NULL);

C. CREATE TABLE ord_details

(ord_no NUMBER(2) ,

item_no NUMBER(3),

ord_date date DEFAULT NOT NULL,

CONSTRAINT ord_uq UNIQUE (ord_no),

CONSTRAINT ord_pk PRIMARY KEY (ord_no));

D. CREATE TABLE ord_details

(ord_no NUMBER(2),

item_no NUMBER(3),

ord_date date DEFAULT SYSDATE NOT NULL,

CONSTRAINT ord_pk PRIMARY KEY (ord_no, item_no));

Answer: D

Question: 64

Evaluate the following SELECT statement and view the Exhibit to examine its output:

SELECT constraint_name, constraint_type, search_condition, r_constraint_name, delete_rule, status FROM user_constraints

WHERE table_name = ORDERS

Which two statements are true about the output? (Choose two.)

A. In the second column, indicates a check constraint.

B. The STATUS column indicates whether the table is currently in use.

C. The R_CONSTRAINT_NAME column gives the alternative name for the constraint.

D. The column DELETE_RULE decides the state of the related rows in the child table when the
corresponding row is deleted from the parent table.

Answer: A, D

Question: 65

Which statement is true regarding Flashback Version Query?

A. It returns versions of rows only within a transaction.

B. It can be used in subqueries contained only in a SELECT statement.

C. It will return an error if the undo retention time is less than the lower bound time or SCN
specified.

D. It retrieves all versions including the deleted as well as subsequently reinserted versions of the
rows.

Answer: D

Question: 66

Which two statements are true regarding multiple-row subqueries? (Choose two.)

A. They can contain group functions.

B. They always contain a subquery within a subquery.

C. They use the < ALL operator to imply less than the maximum.

D. They can be used to retrieve multiple rows from a single table only.

E. They should not be used with the NOT IN operator in the main query if NULL is likely to be a
part of the result of the subquery.

Answer: A, E

Question: 67

View the Exhibit and examine the structure of the ORDERS table.

The columns ORDER_MODE and ORDER_TOTAL have the default values ‘direct’ and 0 respectively.

Which two INSERT statements are valid? (Choose two.)

A. INSERT INTO orders

VALUES (1, ’09-mar-2007′, ‘online’,”,1000);

B. INSERT INTO orders

(order_id,order_date,order_mode, customer_id,order_total)

VALUES(1,TO_DATE(NULL), ‘online’, 101, NULL);

C. INSERT INTO

(SELECT order_id,order_date,customer_id FROM orders)

VALUES (1,’09-mar-2007′, 101);

D. INSERT INTO orders

VALUES (1,’09-mar-2007′, DEFAULT, 101, DEFAULT);

E. INSERT INTO orders

(order_id,order_date,order_mode,order_total)
VALUES (1,’10-mar-2007′,’online’,1000);

Answer: C, D

Question: 68

The following are the steps for a correlated subquery, listed in random order:

1) The WHERE clause of the outer query is evaluated.

2) The candidate row is fetched from the table specified in the outer query.

3) The procedure is repeated for the subsequent rows of the table, till all the rows are processed.

4) Rows are returned by the inner query, after being evaluated with the value from the candidate
row in the outer query.

Identify the option that contains the steps in the correct sequence in which the Oracle server evaluates a correlated subquery.

A. 4, 2, 1, 3

B. 4, 1, 2, 3

C. 2, 4, 1, 3

D. 2, 1, 4, 3

Answer: C

Question: 69

View the Exhibit and examine the structure of the EMPLOYEES table.

Evaluate the following SQL statement:

SELECT employee_id, last_name, job_id, manager_id FROM employees

START WITH employee_id = 101

CONNECT BY PRIOR employee_id=manager_id;

Which statement is true regarding the output for this command?

A. It would return a hierarchical output starting with the employee whose EMPLOYEE_ID is 101,
followed by his or her peers.

B. It would return a hierarchical output starting with the employee whose EMPLOYEE_ID is 101,
followed by the employee to whom he or she reports.

C. It would return a hierarchical output starting with the employee whose EMPLOYEE_ID is 101,
followed by employees below him or her in the hierarchy.

D. It would return a hierarchical output starting with the employee whose EMPLOYEE_ID is101,

followed by employees up to one level below him or her in the hierarchy.

Answer: C

Question: 70

Which two statements are true about the GROUPING function? (Choose two.)

A. It is used to find the groups forming the subtotal in a row.

B. It is used to identify the NULL value in the aggregate functions.

C. It is used to form the group sets involved in generating the totals and subtotals.

D. It can only be used with ROLLUP and CUBE operators specified in the GROUP BY clause.

Answer: A, D

Question: 71

Given below is a list of datetime data types and examples of values stored in them in a random
order:

Datatype Example

1)INTERVAL YEAR TO MONTH a) ‘2003-04-15 8:00:00 -8:00’

2)TIMESTAMP WITH LOCAL TIME ZONE b) ‘+06 03:30:16.000000′

3)TIMESTAMP WITH TIME ZONE c) ’17-JUN-03 12.00.00.000000 AM’

4)INTERVAL DAY TO SECOND d) ‘+02-00′

Identify the option that correctly matches the data types with the values.

A. 1-d, 2-c, 3-a, 4-b

B. 1-b, 2-a, 3-c, 4-d

C. 1-b, 2-a, 3-d, 4-c

D. 1-d, 2-c, 3-b, 4-a

Answer: A

Question: 72

View the Exhibit and examine the description of the PRODUCT_INFORMATION table.

You want to display the expiration date of the warranty for a product. Which SQL statement would you execute?

A. SELECT product_id, SYSDATE + warranty_period
FROM product_information;

B. SELECT product_id, TO_YMINTERVAL(warranty_period)
FROM product_information;

C. SELECT product_id, TO_YMINTERVAL(SYSDATE) + warranty_period
FROM product_information;

D. SELECT product_id, TO_YMINTERVAL(SYSDATE + warranty_period)
FROM product_information;

Question: 73

View the Exhibit and examine the structure of the ORDERS table.

NEW_ORDERS is a new table with the columns ORD_ID, ORD_DATE, CUST_ID, and

ORD_TOTAL that have the same data types and size as the corresponding columns in the ORDERS table.

Evaluate the following INSERT statement:

INSERT INTO new_orders (ord_id, ord_date, cust_id, ord_total) VALUES(SELECT order_id,order_date,customer_id,order_total FROM orders

WHERE order_date > ’31-dec-1999’);
Why would the INSERT statement fail?

A. because column names in NEW_ORDERS and ORDERS tables do not match

B. because the VALUES clause cannot be used in an INSERT with a subquery

C. because the WHERE clause cannot be used in a subquery embedded in an INSERT
statement

D. because the total number of columns in the NEW_ORDERS table does not match the total
number of columns in the ORDERS table

Answer: B

Question: 74

View the Exhibit and examine the structure of the ORDER_ITEMS and ORDERS tables.

You are asked to retrieve the ORDER_ID, PRODUCT_ID, and total price (UNIT_PRICE multiplied by QUANTITY), where the total price is greater than 50,000.
You executed the following SQL statement:

SELECT order_id, product_id, unit_price*quantity “Total Price” FROM order_items

WHERE unit_price*quantity > 50000 NATURAL JOIN orders;

Which statement is true regarding the execution of the statement?

A. The statement would execute and provide the desired result.

B. The statement would not execute because the ON keyword is missing in the NATURAL JOIN
clause.

C. The statement would not execute because the WHERE clause is before the NATURAL JOIN
clause.

D. The statement would not execute because the USING keyword is missing in the NATURAL
JOIN clause.

Answer: C

Question: 75

View the Exhibit and examine the structure of the EMPLOYEES table.

You want to know the FIRST_NAME and SALARY for all employees who have the same

manager as that of the employee with the first name ‘Neena’ and have salary equal to or greater than that of ‘Neena’.

Which SQL statement would give you the desired result?

A. SELECT first_name, salary

FROM employees

WHERE (manager_id, salary) >= ALL (SELECT manager_id, salary FROM employees

WHERE first_name = ‘Neena’ )
AND first_name <> ‘Neena’;

B. SELECT first_name, salary
FROM employees

WHERE (manager_id, salary) >= (SELECT manager_id, salary FROM employees

WHERE first_name = ‘Neena’ )
AND first_name <> ‘Neena’;

C. SELECT first_name, salary
FROM employees

WHERE (manager_id, salary) >= ANY (SELECT manager_id, salary FROM employees

WHERE first_name = ‘Neena’ )
AND first_name <> ‘Neena’;

D. SELECT first_name, salary
FROM employees

WHERE ( manager_id = (SELECT manager_id FROM employees

WHERE first_name = ‘Neena’ ) AND salary >= ( SELECT salary FROM employees

WHERE first_name = ‘Neena’ ) )
AND first_name <> ‘Neena’;

Answer: D

Question: 76

View the Exhibit and examine the structure of the ORDERS table.

Which UPDATE statement is valid?

A. UPDATE orders

SET order_date = ’12-mar-2007′, order_total IS NULL

WHERE order_id = 2455;

B. UPDATE orders

SET order_date = ’12-mar-2007′, order_total = NULL

WHERE order_id = 2455;

C. UPDATE orders

SET order_date = ’12-mar-2007′

AND order_total = TO_NUMBER(NULL) WHERE order_id = 2455;

D. UPDATE orders

SET order_date = TO_DATE(’12-mar-2007′,’dd-mon-yyyy’), SET order_total = TO_NUMBER(NULL)

WHERE order_id = 2455;

Answer: B

Question: 77

View the Exhibit and examine the descriptions for ORDERS and ORDER_ITEMS tables.

Evaluate the following SQL statement:

SELECT o.customer_id, oi.product_id, SUM(oi.unit_price*oi.quantity) “Order Amount” FROM order_items oi JOIN orders o

ON oi.order_id = o.order_id

GROUP BY CUBE (o.customer_id, oi.product_id);

Which three statements are true regarding the output of this SQL statement? (Choose three.)

A. It would return the subtotals for the Order Amount of every CUSTOMER_ID.

B. It would return the subtotals for the Order Amount for every PRODUCT_ID.

C. It would return the subtotals for the Order Amount of every PRODUCT_ID and
CUSTOMER_ID as one group.

D. It would return the subtotals for the Order Amount of every CUSTOMER_ID and
PRODUCT_ID as one group.

E. It would return only the grand total for the Order Amount of every CUSTOMER_ID and

PRODUCT_ID as one group.

Answer: A, B, D

Question: 78

View the Exhibit and examine the details of the EMPLOYEES table.

You want to generate a hierarchical report for all the employees who report to the employee whose EMPLOYEE_ID is 100.

Which SQL clauses would you require to accomplish the task? (Choose all that apply.)

A. WHERE

B. HAVING

C. GROUP BY

D. START WITH

E. CONNECT BY

Answer: A, D, E

Question: 79

View the Exhibit and examine the data in ORDERS_MASTER and MONTHLY_ORDERS tables.

Evaluate the following MERGE statement:

MERGE INTO orders_master o

USING monthly_orders m

ON (o.order_id = m.order_id)

WHEN MATCHED THEN

UPDATE SET o.order_total = m.order_total DELETE WHERE (m.order_total IS NULL) WHEN NOT MATCHED THEN

INSERT VALUES (m.order_id, m.order_total);

What would be the outcome of the above statement?

A. The ORDERS_MASTER table would contain the ORDER_IDs 1 and 2.

B. The ORDERS_MASTER table would contain the ORDER_IDs 1, 2 and 3.

C. The ORDERS_MASTER table would contain the ORDER_IDs 1, 2 and 4.

D. The ORDERS_MASTER table would contain the ORDER_IDs 1, 2, 3 and 4.

Answer: C

Question: 80

Evaluate the following ALTER TABLE statement: ALTER TABLE orders

SET UNUSED order_date;
Which statement is true?

A. The DESCRIBE command would still display the ORDER_DATE column.

B. ROLLBACK can be used to get back the ORDER_DATE column in the ORDERS table.

C. The ORDER_DATE column should be empty for the ALTER TABLE command to execute
successfully.

D. After executing the ALTER TABLE command, you can add a new column called
ORDER_DATE to the ORDERS table.

Answer: D

Question: 81

View the Exhibit and examine the ORDERS table.

The ORDERS table contains data and all orders have been assigned a customer ID. Which statement would add a NOT NULL constraint to the CUSTOMER_ID column?

A. ALTER TABLE orders

ADD CONSTRAINT orders_cust_id_nn NOT NULL (customer_id);

B. ALTER TABLE orders

MODIFY customer_id CONSTRAINT orders_cust_id_nn NOT NULL;

C. ALTER TABLE orders

MODIFY CONSTRAINT orders_cust_id_nn NOT NULL (customer_id);

D. ALTER TABLE orders

ADD customer_id NUMBER(6)CONSTRAINT orders_cust_id_nn NOT NULL;

Answer: B

Question: 82

Which three statements indicate the end of a transaction? (Choose three.)

A. after a COMMIT is issued

B. after a ROLLBACK is issued

C. after a SAVEPOINT is issued

D. after a SELECT statement is issued

E. after a CREATE statement is issued

Answer: A, B, E

Question: 83

View the Exhibit and examine the structure of the ORDERS table.

You have to display ORDER_ID, ORDER_DATE, and CUSTOMER_ID for all those orders that were placed after the last order placed by the customer whose CUSTOMER_ID is 101.
Which query would give you the desired output?

A. SELECT order_id, order_date FROM orders

WHERE order_date > ALL (SELECT MAX(order_date) FROM orders ) AND

customer_id = 101;

B. SELECT order_id, order_date FROM orders

WHERE order_date > ANY (SELECT order_date FROM orders

WHERE customer_id = 101);

C. SELECT order_id, order_date FROM orders

WHERE order_date > ALL (SELECT order_date FROM orders

WHERE customer_id = 101);

D. SELECT order_id, order_date FROM orders

WHERE order_date IN (SELECT order_date FROM orders

WHERE customer_id = 101);

Answer: C

Question: 84

You need to create a table with the following column specifications:

1. Employee ID (numeric data type) for each employee

2. Employee Name, (character data type) which stores the employee name

3. Hire date, to store the date when the employee joined the organization

4. Status (character data type). It should contain the value if no data is entered.

5. Resume (character large object [CLOB] data type), which would contain the resume submitted
by the employee

Which is the correct syntax to create this table?

A. CREATE TABLE EMP_1

(emp_id NUMBER(4),

emp_name VARCHAR2(25), start_date DATE,

e_status VARCHAR2(10) DEFAULT ‘ACTIVE’, resume CLOB(200));

B. CREATE TABLE 1_EMP

(emp_id NUMBER(4),

emp_name VARCHAR2(25), start_date DATE,

emp_status VARCHAR2(10) DEFAULT ‘ACTIVE’, resume CLOB);

C. CREATE TABLE 1_EMP

(emp_id NUMBER(4),

emp_name VARCHAR2(25), start_date DATE,

emp_status VARCHAR2(10) DEFAULT “ACTIVE”, resume CLOB);

D. CREATE TABLE EMP_1
(emp_id NUMBER,

emp_name VARCHAR2(25), start_date DATE,

emp_status VARCHAR2(10) DEFAULT ‘ACTIVE’, resume CLOB);

Answer: D

Question: 85

The details of the order ID, order date, order total, and customer ID are obtained from the
ORDERS table. If the order value is more than 30000, the details have to be added to the
LARGE_ORDERS table. The order ID, order date, and order total should be added to the
ORDER_HISTORY table, and order ID and customer ID should be added to the
CUST_HISTORY table. Which multitable INSERT statement would you use?

A. Pivoting INSERT

B. Unconditional INSERT

C. Conditional ALL INSERT

D. Conditional FIRST INSERT

Answer: C

Question: 86

View the Exhibit and examine the description of the EMPLOYEES table.

Evaluate the following SQL statement:

SELECT first_name, employee_id, NEXT_DAY(ADD_MONTHS(hire_date, 6), 1) “Review” FROM employees; The query was written to retrieve the FIRST_NAME, EMPLOYEE_ID, and review
date for employees.

The review date is the first Monday after the completion of six months of the hiring. The NLS_TERRITORY parameter is set to AMERICA in the session.

Which statement is true regarding this query?

A. The query would execute to give the desired output.

B. The query would not execute because date functions cannot be nested.

C. The query would execute but the output would give review dates that are Sundays.

D. The query would not execute because the NEXT_DAY function accepts a string as argument.

Answer: C

Question: 87

View the Exhibit and examine the structure of the EMPLOYEES table.

You want to display all employees and their managers having 100 as the MANAGER_ID. You want the output in two columns: the first column would have the LAST_NAME of the managers and the second column would have LAST_NAME of the employees.

Which SQL statement would you execute?

A. SELECT m.last_name “Manager”, e.last_name “Employee”
FROM employees m JOIN employees e

ON m.employee_id = e.manager_id WHERE m.manager_id=100;

B. SELECT m.last_name “Manager”, e.last_name “Employee”
FROM employees m JOIN employees e

ON m.employee_id = e.manager_id

WHERE e.manager_id=100;

C. SELECT m.last_name “Manager”, e.last_name “Employee”
FROM employees m JOIN employees e

ON e.employee_id = m.manager_id WHERE m.manager_id=100;

D. SELECT m.last_name “Manager”, e.last_name “Employee”
FROM employees m JOIN employees e

WHERE m.employee_id = e.manager_id AND e.manager_id=100;

Answer: B

Question: 88

View the Exhibit1 and examine the descriptions of the EMPLOYEES and DEPARTMENTS tables.

The following SQL statement was executed:

SELECT e.department_id, e.job_id, d.location_id, sum(e.salary) total, GROUPING(e.department_id) GRP_DEPT,

GROUPING(e.job_id) GRP_JOB,

GROUPING(d.location_id) GRP_LOC

FROM employees e JOIN departments d
ON e.department_id = d.department_id

GROUP BY ROLLUP (e.department_id, e.job_id, d.location_id);
View the Exhibit2 and examine the output of the command.

Which two statements are true regarding the output? (Choose two.)

A. The value 1 in GRP_LOC means that the LOCATION_ID column is taken into account to
generate the subtotal.

B. The value 1 in GRP_JOB and GRP_LOC means that JOB_ID and LOCATION_ID columns are
not taken into account to generate the subtotal.

C. The value 1 in GRP_JOB and GRP_LOC means that the NULL value in JOB_ID and
LOCATION_ID columns are taken into account to generate the subtotal.

D. The value 0 in GRP_DEPT, GRP_JOB, and GRP_LOC means that DEPARTMENT_ID,

JOB_ID, and LOCATION_ID columns are taken into account to generate the subtotal.

Answer: B, D

Question: 89

View the Exhibit and examine the description of the DEPARTMENTS and EMPLOYEES tables.

To retrieve data for all the employees for their EMPLOYEE_ID, FIRST_NAME, and DEPARTMENT

NAME, the following SQL statement was written:

SELECT employee_id, first_name, department_name FROM employees

NATURAL JOIN departments;

The desired output is not obtained after executing the above SQL statement. What could be the reason for this?

A. The NATURAL JOIN clause is missing the USING clause.

B. The table prefix is missing for the column names in the SELECT clause.

C. The DEPARTMENTS table is not used before the EMPLOYEES table in the FROM clause.

D. The EMPLOYEES and DEPARTMENTS tables have more than one column with the same column name and data type.

Answer: D

Question: 90

View the Exhibit and examine the descriptions of the DEPT and LOCATIONS tables.

You want to update the CITY column of the DEPT table for all the rows with the corresponding value in the CITY column of the LOCATIONS table for each department.
Which SQL statement would you execute to accomplish the task?

A. UPDATE dept d

SET city = ANY (SELECT city FROM locations l);

B. UPDATE dept d

SET city = (SELECT city FROM locations l)

WHERE d.location_id = l.location_id;

C. UPDATE dept d

SET city = (SELECT city FROM locations l

WHERE d.location_id = l.location_id);

D. UPDATE dept d

SET city = ALL (SELECT city FROM locations l

WHERE d.location_id = l.location_id);

Answer: C

Question: 91

View the Exhibit and examine the data in the LOCATIONS table.

Evaluate the following SQL statement:

SELECT street_address

FROM locations

WHERE

REGEXP_INSTR(street_address,'[^[:alpha:]]’) = 1;

Which statement is true regarding the output of this SQL statement?

A. It would display all the street addresses that do not have a substring ‘alpha’.

B. It would display all the street addresses where the first character is a special character.

C. It would display all the street addresses where the first character is a letter of the alphabet.

D. It would display all the street addresses where the first character is not a letter of the alphabet.

Answer: D

Question: 92

Evaluate the following expression using meta character for regular expression: ‘[^Ale|ax.r$]’

Which two matches would be returned by this expression? (Choose two.)

A. Alex

B. Alax

C. Alxer

D. Alaxendar

E. Alexender

Answer: D, E

Question: 93

The ORDERS table belongs to the user OE. OE has granted the SELECT privilege on the ORDERS table to the user HR.

Which statement would create a synonym ORD so that HR can execute the following query successfully?

SELECT * FROM ord;

A. CREATE SYNONYM ord FOR orders; This command is issued by OE.

B. CREATE PUBLIC SYNONYM ord FOR orders; This command is issued by OE.

C. CREATE SYNONYM ord FOR oe.orders; This command is issued by the database
administrator.

D. CREATE PUBLIC SYNONYM ord FOR oe.orders; This command is issued by the database
administrator.

Answer: D

Question: 94

View the Exhibit and examine the description of the EMPLOYEES and DEPARTMENTS tables.

You want to display the LAST_NAME for the employees, LAST_NAME for the manager of the employees, and the DEPARTMENT_NAME for the employees having 100 as MANAGER_ID. The following SQL statement was written:

SELECT m.last_name “Manager”, e.last_name “Employee”, department_name “Department” FROM employees m JOIN employees e

ON (m.employee_id = e.manager_id) WHERE e.manager_id=100
JOIN departments d

ON (e.department_id = d.department_id);

Which statement is true regarding the output of this SQL statement?

A. The statement would provide the desired results.

B. The statement would not execute because the ON clause is written twice.

C. The statement would not execute because the WHERE clause is wrongly placed.

D. The statement would not execute because the self join uses the ON clause instead of the
USING clause.

Answer: C

Question: 95

Evaluate the following DELETE statement: DELETE FROM orders;

There are no other uncommitted transactions on the ORDERS table. Which statement is true about the DELETE statement?

A. It removes all the rows in the table and allows ROLLBACK.

B. It would not remove the rows if the table has a primary key.

C. It removes all the rows as well as the structure of the table.

D. It removes all the rows in the table and does not allow ROLLBACK.

Answer: A

Question: 96

View the Exhibit and examine the structure of ORDERS and ORDER_ITEMS tables.

ORDER_ID is the primary key in the ORDERS table.

It is also the foreign key in the ORDER_ITEMS table wherein it is created with the ON DELETE CASCADE option.

Which DELETE statement would execute successfully?

A. DELETE order_id

FROM orders

WHERE order_total < 1000;

B. DELETE orders

WHERE order_total < 1000;

C. DELETE

FROM orders

WHERE (SELECT order_id FROM order_items);

D. DELETE orders o, order_items i
WHERE o.order_id = i.order_id;

Answer: B

Question: 97

View the Exhibit and examine the description for EMPLOYEES and DEPARTMENTS tables.

Evaluate the following SQL statement:

SELECT e.department_id, e.job_id, d.location_id, sum(e.salary) total FROM employees e JOIN departments d

ON e.department_id = d.department_id

GROUP BY CUBE (e.department_id, e.job_id, d.location_id);

Which two statements are true regarding the output of this command? (Choose two.)

A. The output would display the total salary for all the departments.

B. The output would display the total salary for all the JOB_IDs in a department.

C. The output would display only the grand total of the salary for all JOB_IDs in a LOCATION_ID.

D. The output would display the grand total of the salary for only the groups specified in the
GROUP BY clause.

Answer: A, B

Question: 98

View the Exhibit and examine the data in EMP and DEPT tables.

In the DEPT table, DEPTNO is the PRIMARY KEY.

In the EMP table, EMPNO is the PRIMARY KEY and DEPTNO is the FOREIGN KEY referencing the DEPTNO column in the DEPT table.

What would be the outcome of the following statements executed in the given sequence? DROP TABLE emp;

FLASHBACK TABLE emp TO BEFORE DROP;
INSERT INTO emp VALUES (2,COTT 10);
INSERT INTO emp VALUES (3,ING 55);

A. Both the INSERT statements would fail because all constraints are automatically retrieved
when the table is flashed back.

B. Both the INSERT statements would succeed because none of the constraints on the table are
automatically retrieved when the table is flashed back.

C. Only the first INSERT statement would succeed because all the constraints except the primary
key constraint are automatically retrieved after a table is flashed back.

D. Only the second INSERT statement would succeed because all the constraints except

referential integrity constraints that reference other tables are retrieved automatically after the table is flashed back.

Answer: D

Question: 99

View the Exhibit and examine the structure of the ORDERS table.

The ORDER_ID column is the PRIMARY KEY in the ORDERS table. Evaluate the following CREATE TABLE command:

CREATE TABLE new_orders(ord_id, ord_date DEFAULT SYSDATE, cust_id) AS SELECT order_id,order_date,customer_id

FROM orders;

Which statement is true regarding the above command?

A. The NEW_ORDERS table would not get created because the DEFAULT value cannot be
specified in the column definition.

B. The NEW_ORDERS table would get created and only the NOT NULL constraint defined on the
specified columns would be passed to the new table.

C. The NEW_ORDERS table would not get created because the column names in the CREATE
TABLE command and the SELECT clause do not match.

D. The NEW_ORDERS table would get created and all the constraints defined on the specified
columns in the ORDERS table would be passed to the new table.

Answer: B

Question: 100

Which two statements are true regarding the GROUP BY clause in a SQL statement? (Choose
two.)

A. You can use column alias in the GROUP BY clause.

B. Using the WHERE clause after the GROUP BY clause excludes the rows after creating
groups.

C. The GROUP BY clause is mandatory if you are using an aggregate function in the SELECT
clause.

D. Using the WHERE clause before the GROUP BY clause excludes the rows before creating
groups.

E. If the SELECT clause has an aggregate function, then those individual columns without an
aggregate function in the SELECT clause should be included in the GROUP BY clause.

Answer: D, E

Question: 101

Which statement is true regarding synonyms?

A. Synonyms can be created for tables but not views.

B. Synonyms are used to reference only those tables that are owned by another user.

C. A public synonym and a private synonym can exist with the same name for the same table.

D. The DROP SYNONYM statement removes the synonym, and the status of the table on which
the synonym has been created becomes invalid.

Answer: C

Question: 102

Evaluate the following command:
CREATE TABLE employees

(employee_id NUMBER(2) PRIMARY KEY, last_name VARCHAR2(25) NOT NULL, department_id NUMBER(2),

job_id VARCHAR2(8),
salary NUMBER(10,2));

You issue the following command to create a view that displays the IDs and last names of the sales staff in the organization:

CREATE OR REPLACE VIEW sales_staff_vu AS SELECT employee_id, last_name,job_id
FROM employees

WHERE job_id LIKE ‘SA_%’ WITH CHECK OPTION;

Which statements are true regarding the above view? (Choose all that apply.)

A. It allows you to insert details of all new staff into the EMPLOYEES table.

B. It allows you to delete the details of the existing sales staff from the EMPLOYEES table.

C. It allows you to update the job ids of the existing sales staff to any other job id in the
EMPLOYEES table.

D. It allows you to insert the IDs, last names and job ids of the sales staff from the view if it is
used in multitable INSERT statements.

Answer: B, D

Question: 103

View the Exhibit and examine the structure of EMPLOYEES and JOB_HISTORY tables.

The EMPLOYEES table maintains the most recent information regarding salary, department, and job for all the employees. The JOB_HISTORY table maintains the record for all the job changes for the employees. You want to delete all the records from the JOB_HISTORY table that are
repeated in the EMPLOYEES table.

Which two SQL statements can you execute to accomplish the task? (Choose two.)

A. DELETE

FROM job_history j

WHERE employee_id =
(SELECT employee_id
FROM employees e

WHERE j.employee_id = e.employee_id) AND job_id = (SELECT job_id

FROM employees e

WHERE j.job_id = e.job_id);

B. DELETE

FROM job_history j

WHERE (employee_id, job_id) = ALL (SELECT employee_id, job_id

FROM employees e

WHERE j.employee_id = e.employee_id and j.job_id = e.job_id )

C. DELETE

FROM job_history j

WHERE employee_id =
(SELECT employee_id
FROM employees e

WHERE j.employee_id = e.employee_id and j.job_id = e.job_id )

D. DELETE

FROM job_history j

WHERE (employee_id, job_id) = (SELECT employee_id, job_id FROM employees e

WHERE j.employee_id = e.employee_id and j.job_id = e.job_id )

Answer: C, D

Question: 104

The user SCOTT who is the owner of ORDERS and ORDER_ITEMS tables issues the following GRANT command:

GRANT ALL

ON orders, order_items TO PUBLIC;

What correction needs to be done to the above statement?

A. PUBLIC should be replaced with specific usernames.

B. ALL should be replaced with a list of specific privileges.

C. WITH GRANT OPTION should be added to the statement.

D. Separate GRANT statements are required for ORDERS and ORDER_ITEMS tables.

Answer: D

Question: 105

Given below is a list of functions and the tasks performed by using these functions, in random
order.

Function Usage

1) LPAD a) Used to truncate a column, expression, or value to n decimal places

2) TRUNC b) Used to remove heading or trailing or both characters from the character string

3) DECODE c) Pads the character value right-justified to a total width of n character positions

4) TRIM d) Used to return the numeric value for position of a named character from the
character string

5) INSTR e) Used to translate an expression after comparing it with each search value

Which option correctly matches the function names with their usage?

A. 1-c, 2-b, 3-e, 4-a, 5-d

B. 1-e, 2-b, 3-c, 4-a, 5-d

C. 1-e, 2-a, 3-c, 4-d, 5-b

D. 1-c, 2-a, 3-e, 4-b, 5-d

Answer: D

Question: 106

Which statement is true regarding the CUBE operator in the GROUP BY clause of a SQL statement?

A. It produces only aggregates for the groups specified in the GROUP BY clause.

B. It finds all the NULL values in the superaggregates for the groups specified in the GROUP BY
clause.

C. It produces 2 n possible superaggregate combinations, if the n columns and expressions are
specified in the GROUP BY clause.

D. It produces n+1 possible superaggregate combinations, if the n columns and expressions are
specified in the GROUP BY clause.

Answer: C

Question: 107

Which statement is true regarding the SESSION_PRIVS dictionary view?

A. It contains the current object privileges available in the user session.

B. It contains the current system privileges available in the user session.

C. It contains the object privileges granted to other users by the current user session.

D. It contains the system privileges granted to other users by the current user session.

Answer: B

Question: 108

View the Exhibit and examine the details for the CATEGORIES_TAB table.

Evaluate the following incomplete SQL statement:

SELECT category_name,category_description

FROM categories_tab

You want to display only the rows that have ‘harddisks’ as part of the string in the CATEGORY_DESCRIPTION column.

Which two WHERE clause options can give you the desired result? (Choose two.)

A. WHERE REGEXP_LIKE (category_description, ‘hard+.s’);

B. WHERE REGEXP_LIKE (category_description, ‘^H|hard+.s’);

C. WHERE REGEXP_LIKE (category_description, ‘^H|hard+.s$’);

D. WHERE REGEXP_LIKE (category_description, ‘[^H|hard+.s]’);

Answer: A, B

Question: 109

Which two statements are true regarding roles? (Choose two.)

A. A role can be granted to itself.

B. A role can be granted to PUBLIC.

C. A user can be granted only one role at any point of time.

D. The REVOKE command can be used to remove privileges but not roles from other users.

E. Roles are named groups of related privileges that can be granted to users or other roles.

Answer: B, E

Question: 110

View the Exhibit and examine the data in the CUST_DET table.

You executed the following multitable INSERT statement: INSERT FIRST

WHEN credit_limit >= 5000 THEN

INTO cust_1 VALUES(cust_id, credit_limit, grade, gender) WHEN grade = THEN

INTO cust_2 VALUES(cust_id, credit_limit, grade, gender) WHEN grade = THEN

INTO cust_3 VALUES(cust_id, credit_limit, grade, gender)

INTO cust_4 VALUES(cust_id, credit_limit, grade, gender)
ELSE

INTO cust_5 VALUES(cust_id, credit_limit, grade, gender) SELECT * FROM cust_det;

The row will be inserted in _______.

A. CUST_1 table only because CREDIT_LIMIT condition is satisfied

B. CUST_1 and CUST_2 tables because CREDIT_LIMIT and GRADE conditions are satisfied

C. CUST_1,CUST_2 and CUST_5 tables because CREDIT_LIMIT and GRADE conditions are
satisfied but GENDER condition is not satisfied

D. CUST_1, CUST_2 and CUST_4 tables because CREDIT_LIMIT and GRADE conditions are
satisfied for CUST_1 and CUST_2, and CUST_4 has no condition on it

Answer: A

Question: 111

View the Exhibit and examine the data in the EMPLOYEES tables.

Evaluate the following SQL statement:

SELECT employee_id, department_id FROM employees

WHERE department_id= 50 ORDER BY department_id
UNION

SELECT employee_id, department_id

FROM employees

WHERE department_id= 90
UNION

SELECT employee_id, department_id FROM employees

WHERE department_id= 10;

What would be the outcome of the above SQL statement?

A. The statement would execute successfully and display all the rows in the ascending order of
DEPARTMENT_ID.

B. The statement would execute successfully but it will ignore the ORDER BY clause and display
the rows in random order.

C. The statement would not execute because the positional notation instead of the column name
should be used with the ORDER BY clause.

D. The statement would not execute because the ORDER BY clause should appear only at the
end of the SQL statement, that is, in the last SELECT statement.

Answer: D

Question: 112

Evaluate the SQL statements:
CREATE TABLE new_order
(orderno NUMBER(4),

booking_date TIMESTAMP WITH LOCAL TIME ZONE);

The database is located in San Francisco where the time zone is -8:00. The user is located in New York where the time zone is -5:00.
A New York user inserts the following record:

INSERT INTO new_order

VALUES(1, TIMESTAMP ?007-05-10 6:00:00 -5:00?); Which statement is true?

A. When the New York user selects the row, booking_date is displayed as ‘007-05-10

3.00.00.000000’

B. When the New York user selects the row, booking_date is displayed as ‘2007-05-10

6.00.00.000000 -5:00’.

C. When the San Francisco user selects the row, booking_date is displayed as ‘007-05-10

3.00.00.000000’

D. When the San Francisco user selects the row, booking_date is displayed as ‘007-05-10

3.00.00.000000 -8:00′

Answer: C

Question: 113

Which statements are true? (Choose all that apply.)

A. The data dictionary is created and maintained by the database administrator.

B. The data dictionary views can consist of joins of dictionary base tables and user-defined
tables.

C. The usernames of all the users including the database administrators are stored in the data
dictionary.

D. The USER_CONS_COLUMNS view should be queried to find the names of the columns to

which a constraint applies.

E. Both USER_OBJECTS and CAT views provide the same information about all the objects that
are owned by the user.

F. Views with the same name but different prefixes, such as DBA, ALL and USER, use the same
base tables from the data dictionary

Answer: C, D, F

Question: 114

View the Exhibit and examine the details of the PRODUCT_INFORMATION table.

You have the requirement to display PRODUCT_NAME and LIST_PRICE from the table where the CATEGORY_ID column has values 12 or 13, and the SUPPLIER_ID column has the value 102088. You executed the following SQL statement:

SELECT product_name, list_price

FROM product_information

WHERE (category_id = 12 AND category_id = 13) AND supplier_id = 102088; Which statement is true regarding the execution of the query?

A. It would execute but the output would return no rows.

B. It would execute and the output would display the desired result.

C. It would not execute because the entire WHERE clause condition is not enclosed within the
parentheses.

D. It would not execute because the same column has been used in both sides of the AND logical
operator to form the condition.

Answer: A

Question: 115

Given below is the list of meta character syntaxes and their descriptions in random order:

Meta character syntax Description

1) ^ a) Matches character not in the list

2) [^…] b) Matches character when it occurs at the beginning of a line

3) | c) Treats the subsequent meta character as a literal

4) \ d) Matches one of the characters such as the OR operator

Identify the option that correctly matches the meta character syntaxes with their descriptions.

A. 1-b, 2-a, 3-d, 4-c

B. 1-a, 2-b, 3-d, 4-c

C. 1-d, 2-b, 3-a, 4-c

D. 1-b, 2-c, 3-d, 2-a

Answer: A

Question: 116

View the Exhibit and examine the structure of ORDERS and CUSTOMERS tables.

Evaluate the following UPDATE statement:

UPDATE

(SELECT order_date, order_total, customer_id

FROM orders)

SET order_date = ’22-mar-2007’ WHERE customer_id =

(SELECT customer_id
FROM customers

WHERE cust_last_name = ‘Roberts’ AND

credit_limit = 600);

Which statement is true regarding the execution of the above UPDATE statement?

A. It would not execute because two tables cannot be used in a single UPDATE statement.

B. It would execute and restrict modifications to only the columns specified in the SELECT
statement.

C. It would not execute because a subquery cannot be used in the WHERE clause of an
UPDATE statement.

D. It would not execute because the SELECT statement cannot be used in place of the table
name.

Answer: B

Question: 117

Which statement correctly differentiates a system privilege from an object privilege?

A. System privileges can be granted only by the DBA whereas object privileges can be granted
by DBAs or the owner of the object.

B. System privileges give the rights to only create user schemas whereas object privileges give
rights to manipulate objects in a schema.

C. Users require system privileges to gain access to the database whereas they require object
privileges to create objects in the database.

D. A system privilege is the right to perform specific activities in a database whereas an object
privilege is a right to perform activities on a specific object in the database.

Answer: D

Question: 118

View the Exhibit and examine the data in the PRODUCT_INFORMATION table.

Which two tasks would require subqueries? (Choose two.)

A. displaying the minimum list price for each product status

B. displaying all supplier IDs whose average list price is more than 500

C. displaying the number of products whose list prices are more than the average list price

D. displaying all the products whose minimum list prices are more than the average list price of
products having the product status tolerable

E. displaying the total number of products supplied by supplier 102071 and having product status
OBSOLETE

Answer: C, D

Question: 119

Which two statements are true regarding constraints? (Choose two.)

A. A foreign key cannot contain NULL values.

B. A column with the UNIQUE constraint can contain NULL.

C. A constraint is enforced only for the INSERT operation on a table.

D. A constraint can be disabled even if the constraint column contains data.

E. All the constraints can be defined at the column level as well as the table level.

Answer: B, D

Question: 120

View the Exhibit and examine the description of the ORDER_ITEMS table.

The following SQL statement was written to retrieve the rows for the PRODUCT_ID that has a UNIT_PRICE of more than 1,000 and has been ordered more than five times:
SELECT product_id, COUNT(order_id) total, unit_price

FROM order_items

WHERE unit_price>1000 AND COUNT(order_id)>5 GROUP BY product_id, unit_price;

Which statement is true regarding this SQL statement?

A. The statement would execute and give you the desired result.

B. The statement would not execute because the aggregate function is used in the WHERE
clause.

C. The statement would not execute because the WHERE clause should have the OR logical
operator instead of AND.

D. The statement would not execute because in the SELECT clause, the UNIT_PRICE column is

placed after the column having the aggregate function.

Answer: B

Question: 121

Which two statements best describe the benefits of using the WITH clause? (Choose two.)

A. It enables users to store the results of a query permanently.

B. It enables users to store the query block permanently in the memory and use it to create
complex queries.

C. It enables users to reuse the same query block in a SELECT statement, if it occurs more than
once in a complex query.

D. It can improve the performance of a large query by storing the result of a query block having

the WITH clause in the user’s temporary tablespace.

Answer: C, D

Question: 122

View the Exhibit and examine the structure of the ORDERS and ORDER_ITEMS tables.

In the ORDERS table, ORDER_ID is the PRIMARY KEY and ORDER_DATE has the DEFAULT value as SYSDATE.

Evaluate the following statement: UPDATE orders

SET order_date=DEFAULT

WHERE order_id IN (SELECT order_id FROM order_items WHERE qty IS NULL);

What would be the outcome of the above statement?

A. The UPDATE statement would not work because the main query and the subquery use
different tables.

B. The UPDATE statement would not work because the DEFAULT value can be used only in
INSERT statements.

C. The UPDATE statement would change all ORDER_DATE values to SYSDATE provided the
current ORDER_DATE is NOT NULL and QTY is NULL.

D. The UPDATE statement would change all the ORDER_DATE values to SYSDATE irrespective

of what the current ORDER_DATE value is for all orders where QTY is NULL.

Answer: D

Question: 123

View the Exhibit and examine the description of the EMPLOYEES table.

Evaluate the following SQL statement:

SELECT employee_id, last_name, job_id, manager_id, LEVEL FROM employees

START WITH employee_id = 101

CONNECT BY PRIOR employee_id=manager_id ;

Which two statements are true regarding the output of this command? (Choose two.)

A. The output would be in top-down hierarchy starting with EMPLOYEE_ID having value 101.

B. The output would be in bottom-up hierarchy starting with EMPLOYEE_ID having value 101.

C. The LEVEL column displays the number of employees in the hierarchy under the employee
having the EMPLOYEE_ID 101.

D. The LEVEL column displays the level in the hierarchy at which the employee is placed under
the employee having the EMPLOYEE_ID 101.

Answer: A, D

Question: 124

Which three statements are true regarding the WHERE and HAVING clauses in a SQL statement? (Choose three.)

A. The HAVING clause conditions can have aggregate functions.

B. The HAVING clause conditions can use aliases for the columns.

C. WHERE and HAVING clauses cannot be used together in a SQL statement.

D. The WHERE clause is used to exclude rows before the grouping of data.

E. The HAVING clause is used to exclude one or more aggregated results after grouping data.

Answer: A, D, E

Question: 125

The first DROP operation is performed on PRODUCTS table using the following command: DROP TABLE products PURGE;

Then you performed the FLASHBACK operation by using the following command: FLASHBACK TABLE products TO BEFORE DROP;

Which statement describes the outcome of the FLASHBACK command?

A. It recovers only the table structure.

B. It recovers the table structure, data, and the indexes.

C. It recovers the table structure and data but not the related indexes.

D. It is not possible to recover the table structure, data, or the related indexes.

Answer: D

Question: 126

Which statements are true regarding the usage of the WITH clause in complex correlated subqueries? (Choose all that apply.)

A. It can be used only with the SELECT clause.

B. The WITH clause can hold more than one query.

C. If the query block name and the table name were the same, then the table name would take
precedence.

D. The query name in the WITH clause is visible to other query blocks in the WITH clause as well
as to the main query block.

Answer: A, B, D

Question: 127

Evaluate the following SQL statement:
CREATE INDEX upper_name_idx

ON product_information(UPPER(product_name));

Which query would use the UPPER_NAME_IDX index?

A. SELECT UPPER(product_name)

FROM product_information
WHERE product_id = 2254;

B. SELECT UPPER(product_name)
FROM product_information;

C. SELECT product_id

FROM product_information

WHERE UPPER(product_name) IN (‘LASERPRO’, ‘Cable’);

D. SELECT product_id, UPPER(product_name)
FROM product_information

WHERE UPPER(product_name)=’LASERPRO’ OR list_price > 1000;

Answer: C

Question: 128

Which three statements are true regarding group functions? (Choose three.)

A. They can be used on columns or expressions.

B. They can be passed as an argument to another group function.

C. They can be used only with a SQL statement that has the GROUP BY clause.

D. They can be used on only one column in the SELECT clause of a SQL statement.

E. They can be used along with the single-row function in the SELECT clause of a SQL
statement.

Answer: A, B, E

Question: 129

Which three statements are true regarding single-row functions? (Choose three.)

A. They can accept only one argument.

B. They can be nested up to only two levels.

C. They can return multiple values of more than one data type.

D. They can be used in SELECT, WHERE, and ORDER BY clauses.

E. They can modify the data type of the argument that is referenced.

F. They can accept a column name, expression, variable name, or a user-supplied constant as
arguments.

Answer: D, E, F

Question: 130

Which view would you use to display the column names and DEFAULT values for a table?

A. DBA_TABLES

B. DBA_COLUMNS

C. USER_COLUMNS

D. USER_TAB_COLUMNS

Answer: D

Question: 131

View the Exhibit and examine the structure for the ORDERS and ORDER_ITEMS tables.

You want to display ORDER_ID, PRODUCT_ID, and TOTAL (UNIT_PRICE multiplied by QUANTITY) for all the orders placed in the last seven days.

Which query would you execute?

A. SELECT order_id, product_id, unit_price*quantity “TOTAL”
FROM order_items oi JOIN orders o

ON (o.order_id=oi.order_id)

WHERE o.order_date>=SYSDATE-7;

B. SELECT o.order_id,oi.product_id, oi.unit_price*oi.quantity “TOTAL”
FROM order_items oi JOIN orders o

USING (order_id)

WHERE o.order_date>=SYSDATE-7;

C. SELECT o.order_id, oi.product_id, oi.unit_price*oi.quantity “TOTAL”
FROM order_items oi JOIN orders o

WHERE o.order_date>=SYSDATE-7 ON (o.order_id=oi.order_id);

D. SELECT o.order_id, oi.product_id, oi.unit_price*oi.quantity “TOTAL”

FROM order_items oi JOIN orders o

ON (o.order_id=oi.order_id)

WHERE o.order_date>=SYSDATE-7;

Answer: D

Question: 132

Which three statements are true? (Choose three.)

A. Only one LONG column can be used per table.

B. A TIMESTAMP data type column stores only time values with fractional seconds.

C. The BLOB data type column is used to store binary data in an operating system file.

D. The minimum column width that can be specified for a varchar2 data type column is one.

E. The value for a CHAR data type column is blank-padded to the maximum defined column
width.

Answer: A, D, E

Question: 133

Which two statements are true regarding subqueries? (Choose two.)

A. Only two subqueries can be placed at one level.

B. A subquery can be used to access data from one or more tables or views.

C. If the subquery returns 0 rows, then the value returned by the subquery expression is NULL.

D. The columns in a subquery must always be qualified with the name or alias of the table used.

E. A subquery in the WHERE clause of a SELECT statement can be nested up to three levels
only.

Answer: B, C

Question: 134

View the Exhibit and examine the description of the PRODUCT_INFORMATION table.

SELECT product_name, list_price, min_price, list_price – min_price Difference FROM product_information

Which options when used with the above SQL statement can produce the sorted output in

ascending order of the price difference between LIST_PRICE and MIN_PRICE? (Choose all that
apply.)

A. ORDER BY 4

B. ORDER BY MIN_PRICE

C. ORDER BY DIFFERENCE

D. ORDER BY LIST_PRICE

E. ORDER BY LIST_PRICE – MIN_PRICE

Answer: A, C, E

Evaluate the following statement: INSERT ALL

WHEN order_total < 10000 THEN INTO small_orders

WHEN order_total > 10000 AND order_total < 20000 THEN INTO medium_orders

WHEN order_total > 2000000 THEN INTO large_orders

SELECT order_id, order_total, customer_id FROM orders;

Which statement is true regarding the evaluation of rows returned by the subquery in the INSERT statement?

A. They are evaluated by all the three WHEN clauses regardless of the results of the evaluation
of any other WHEN clause.

B. They are evaluated by the first WHEN clause. If the condition is true, then the row would be
evaluated by the subsequent WHEN clauses.

C. They are evaluated by the first WHEN clause. If the condition is false, then the row would be
evaluated by the subsequent WHEN clauses.

D. The INSERT statement would give an error because the ELSE clause is not present for
support in case none of the WHEN clauses are true.

Answer: A

Question: 136

Which three possible values can be set for the TIME_ZONE session parameter by using the ALTER SESSION command? (Choose three.)

A. ‘os’

B. local

C. ‘-8:00’

D. dbtimezone

E. ‘Australia’

Answer: B, C, D

Question: 137

View the Exhibit and examine the structure of the ORDER_ITEMS table.

Examine the following SQL statement: SELECT order_id, product_id, unit_price FROM order_items

WHERE unit_price = (SELECT MAX(unit_price) FROM order_items

GROUP BY order_id);

You want to display the PRODUCT_ID of the product that has the highest UNIT_PRICE per ORDER_ID.

What correction should be made in the above SQL statement to achieve this?

A. Replace = with the IN operator.

B. Replace = with the >ANY operator.

C. Replace = with the >ALL operator.

D. Remove the GROUP BY clause from the subquery and place it in the main query.

Answer: A

Question: 138

View the Exhibit and examine the table structure of DEPARTMENTS and LOCATIONS tables.

You want to display all the cities that have no departments and the departments that have not been allocated cities.

Which type of join between DEPARTMENTS and LOCATIONS tables would produce this information as part of its output?

A. NATURAL JOIN

B. FULL OUTER JOIN

C. LEFT OUTER JOIN

D. RIGHT OUTER JOIN

Answer: B

Question: 139

View the Exhibit and examine the description of the ORDERS table.

Your manager asked you to get the SALES_REP_ID and the total numbers of orders placed by each of the sales representatives. Which statement would provide the desired result?

A. SELECT sales_rep_id, COUNT(order_id) total_orders
FROM orders

GROUP BY sales_rep_id;

B. SELECT sales_rep_id, COUNT(order_id) total_orders
FROM orders

GROUP BY sales_rep_id, total_orders;

C. SELECT sales_rep_id, COUNT(order_id) total_orders
FROM orders;

D. SELECT sales_rep_id, COUNT(order_id) total_orders
FROM orders

WHERE sales_rep_id IS NOT NULL;

Answer: A

Question: 140

View the Exhibit and examine the structure of ORDERS and CUSTOMERS tables.

Which INSERT statement should be used to add a row into the ORDERS table for the customer whose CUST_LAST_NAME is Roberts and CREDIT_LIMIT is 600?

A. INSERT INTO orders

VALUES (1,’10-mar-2007′, ‘direct’, (SELECT customer_id

FROM customers

WHERE cust_last_name=’Roberts’ AND credit_limit=600), 1000);

B. INSERT INTO orders (order_id,order_date,order_mode,
(SELECT customer_id

FROM customers

WHERE cust_last_name=’Roberts’ AND credit_limit=600),order_total)

VALUES(1,’10-mar-2007′, ‘direct’, &&customer_id, 1000);

C. INSERT INTO orders (order_id,order_date,order_mode,

(SELECT customer_id
FROM customers

WHERE cust_last_name=’Roberts’ AND credit_limit=600),order_total)

VALUES(1,’10-mar-2007′, ‘direct’, &customer_id, 1000);

D. INSERT INTO(SELECT o.order_id, o.order_date,o.order_mode,c.customer_id, o.order_total
FROM orders o, customers c

WHERE o.customer_id = c.customer_id

AND c.cust_last_name=’Roberts’ ANDc.credit_limit=600 ) VALUES (1,’10-mar-2007′, ‘direct’,(SELECT customer_id FROM customers

WHERE cust_last_name=’Roberts’ AND credit_limit=600), 1000);

Answer: A

Question: 141

Evaluate the following SQL statement:

SELECT product_name || ‘it’s not available for order’ FROM product_information

WHERE product_status = ‘obsolete’;

You received the following error while executing the above query:
ERROR:

ORA-01756: quoted string not properly terminated

What would you do to execute the query successfully?

A. Enclose the character literal string in the SELECT clause within the double quotation marks.

B. Do not enclose the character literal string in the SELECT clause within the single quotation
marks.

C. Use Quote (q) operator and delimiter to allow the use of single quotation mark in the literal
character string.

D. Use escape character to negate the single quotation mark inside the literal character string in

the SELECT clause.

Answer: C

Question: 142

View the Exhibit and examine the data in EMPLOYEES and DEPARTMENTS tables.

In the EMPLOYEES table EMPLOYEE_ID is the PRIMARY KEY and DEPARTMENT_ID is the FOREIGN KEY. In the DEPARTMENTS table DEPARTMENT_ID is the PRIMARY KEY.
Evaluate the following UPDATE statement:

UPDATE employees a

SET department_id =

(SELECT department_id
FROM departments

WHERE location_id = ‘2100’),
(salary, commission_pct) =

(SELECT 1.1*AVG(salary), 1.5*AVG(commission_pct)

FROM employees b

WHERE a.department_id = b.department_id)

WHERE first_name||’ ‘||last_name = ‘Amit Banda’;

What would be the outcome of the above statement?

A. It would execute successfully and update the relevant data.

B. It would not execute successfully because there is no LOCATION_ID 2100 in the DEPARTMENTS table.

C. It would not execute successfully because the condition specified with the concatenation
operator is not valid.

D. It would not execute successfully because multiple columns

(SALARY,COMMISSION_PCT)cannot be used in an UPDATE statement.

Answer: A

Question: 143

View the Exhibit and examine the description of the ORDERS table.

You need to display CUSTOMER_ID for all customers who have placed orders more than three times in the last six months. You issued the following SQL statement:

SELECT customer_id,COUNT(order_id)

FROM orders

WHERE COUNT(order_id)>3 AND

order_date BETWEEN ADD_MONTHS(SYSDATE,-6) AND SYSDATE

GROUP BY customer_id;

Which statement is true regarding the execution of the above statement?

A. It would execute successfully and provide the desired result.

B. It would not execute because the WHERE clause cannot have an aggregate function.

C. It would not execute because the ORDER_ID column is not included in the GROUP BY
clause.

D. It would not execute because the GROUP BY clause should be placed before the WHERE
clause.

Answer: B

Question: 144

View the Exhibit and examine the data in the PRODUCTS table.

Which statement would add a column called PRICE, which cannot contain NULL?

A. ALTER TABLE products

ADD price NUMBER(8,2) NOT NULL;

B. ALTER TABLE products

ADD price NUMBER(8,2) DEFAULT NOT NULL;

C. ALTER TABLE products

ADD price NUMBER(8,2) DEFAULT 0 NOT NULL;

D. ALTER TABLE products

ADD price NUMBER(8,2) DEFAULT CONSTRAINT p_nn NOT NULL;

Answer: C

Question: 145

View the Exhibit and examine the structure of the ORD table.

Evaluate the following SQL statements that are executed in a user session in the specified order: CREATE SEQUENCE ord_seq;

SELECT ord_seq.nextval FROM dual;

INSERT INTO ord

VALUES (ord_seq.CURRVAL, ’25-jan-2007′,101); UPDATE ord

SET ord_no= ord_seq.NEXTVAL WHERE cust_id =101;

What would be the outcome of the above statements?

A. All the statements would execute successfully and the ORD_NO column would contain the
value 2 for the CUST_ID 101.

B. The CREATE SEQUENCE command would not execute because the minimum value and
maximum value for the sequence have not been specified.

C. The CREATE SEQUENCE command would not execute because the starting value of the
sequence and the increment value have not been specified.

D. All the statements would execute successfully and the ORD_NO column would have the value

20 for the CUST_ID 101 because the default CACHE value is 20.

Answer: A

Question: 146

ORD is a private synonym for the OE.ORDERS table. The user OE issues the following command:
DROP SYNONYM ord;

Which statement is true regarding the above SQL statement?

A. Only the synonym would be dropped.

B. The synonym would be dropped and the corresponding table would become invalid.

C. The synonym would be dropped and the packages referring to the synonym would be
dropped.

D. The synonym would be dropped and any PUBLIC synonym with the same name becomes
invalid.

Answer: A

Question: 147

View the Exhibit and examine the structure of the ORDERS table.

Which task would require subqueries?

A. displaying the total order value for sales representatives 161 and 163

B. displaying the order total for sales representative 161 in the year 1999

C. displaying the number of orders that have order mode online and order date in 1999

D. displaying the number of orders whose order total is more than the average order total for all
online orders

Answer: D

Question: 148

View the Exhibit and examine the details of the EMPLOYEES table.

Evaluate the following SQL statements:

Statement 1:

SELECT employee_id, last_name, job_id, manager_id FROM employees

START WITH employee_id = 101

CONNECT BY PRIOR employee_id = manager_id AND manager_id != 108 ; Statement 2:

SELECT employee_id, last_name, job_id, manager_id FROM employees

WHERE manager_id != 108

START WITH employee_id = 101

CONNECT BY PRIOR employee_id = manager_id;

Which two statements are true regarding the above SQL statements? (Choose two.)

A. Statement 2 would not execute because the WHERE clause condition is not allowed in a
statement that has the START WITH clause.

B. The output for statement 1 would display the employee with MANAGER_ID 108 and all the
employees below him or her in the hierarchy.

C. The output of statement 1 would neither display the employee with MANAGER_ID 108 nor any
employee below him or her in the hierarchy.

D. The output for statement 2 would not display the employee with MANAGER_ID 108 but it
would display all the employees below him or her in the hierarchy.

Answer: C, D

Question: 149

Which SQL statement would display the view names and definitions of all the views owned by
you?

A. SELECT view_name, text
FROM user_view;

B. SELECT view_name, text
FROM user_object ;

C. SELECT view_name, text
FROM user_objects;

D. SELECT view_name, text

FROM user_views;

Answer: D

Question: 150

View the Exhibit button and examine the structures of ORDERS and ORDER_ITEMS tables.

In the ORDERS table, ORDER_ID is the PRIMARY KEY and in the ORDER_ITEMS table, ORDER_ID and LINE_ITEM_ID form the composite primary key.

Which view can have all the DML operations performed on it?

A. CREATE VIEW V1

AS SELECT order_id, product_id FROM order_items;

B. CREATE VIEW V4(or_no, or_date, cust_id)

AS SELECT order_id, order_date, customer_id FROM orders

WHERE order_date < ’30-mar-2007′ WITH CHECK OPTION;

C. CREATE VIEW V3

AS SELECT o.order_id, o.customer_id, i.product_id FROM orders o, order_items i

WHERE o.order_id=i.order_id;

D. CREATE VIEW V2

AS SELECT order_id, line_item_id, unit_price*quantity total FROM order_items;

Answer: B

Question: 151

View the Exhibit and examine the details of the PRODUCT_INFORMATION table.

Evaluate the following SQL statement:

SELECT TO_CHAR(list_price,’$9,999′) FROM product_information;

Which two statements would be true regarding the output for this SQL statement? (Choose two.)

A. The LIST_PRICE column having value 1123.90 would be displayed as $1,124.

B. The LIST_PRICE column having value 1123.90 would be displayed as $1,123.

C. The LIST_PRICE column having value 11235.90 would be displayed as $1,123.

D. The LIST_PRICE column having value 11235.90 would be displayed as #######.

Answer: A, D

Question: 152

You executed the following SQL statements in the given order: CREATE TABLE orders

(order_id NUMBER(3) PRIMARY KEY, order_date DATE,

customer_id number(3));

INSERT INTO orders VALUES (100,’10-mar-2007′,222); ALTER TABLE orders MODIFY order_date NOT NULL; UPDATE orders SET customer_id=333;

DELETE FROM order;

The DELETE statement results in the following error: ERROR at line 1:

ORA-00942: table or view does not exist What would be the outcome?

A. All the statements before the DELETE statement would be rolled back.

B. All the statements before the DELETE statement would be implicitly committed within the
session.

C. All the statements up to the ALTER TABLE statement would be committed and the outcome of
UPDATE statement would be rolled back.

D. All the statements up to the ALTER TABLE statement would be committed and the outcome of
the UPDATE statement is retained uncommitted within the session.

Answer: D

Question: 153

View the Exhibit and examine the structure of the EMPLOYEES and JOB_HISTORY tables.

The query should display the employee IDs of all the employees who have held the job SA_MAN at any time during their tenure.

Choose the correct SET operator to fill in the blank space and complete the following query. SELECT employee_id

FROM employees

WHERE job_id = ‘SA_MAN’ ____________

SELECT employee_id
FROM job_history

WHERE job_id=’SA_MAN’;

A. UNION

B. MINUS

C. INTERSECT

D. UNION ALL

Answer: A

Question: 154

View the Exhibit and examine the structure of the PRODUCT_INFORMATION and INVENTORIES tables.

You have a requirement from the supplies department to give a list containing PRODUCT_ID,

SUPPLIER_ID, and QUANTITY_ON_HAND for all the products wherein QUANTITY_ON_HAND is less than five.

Which two SQL statements can accomplish the task? (Choose two.)

A. SELECT product_id, quantity_on_hand , supplier_id
FROM product_information

NATURAL JOIN inventories AND quantity_on_hand < 5;

B. SELECT i.product_id, i.quantity_on_hand , pi.supplier_id
FROM product_information pi JOIN inventories i
USING (product_id) AND quantity_on_hand < 5;

C. SELECT i.product_id, i.quantity_on_hand , pi.supplier_id
FROM product_information pi JOIN inventories i
ON (pi.product_id=i.product_id)

WHERE quantity_on_hand < 5;

D. SELECT i.product_id, i.quantity_on_hand , pi.supplier_id

FROM product_information pi JOIN inventories i

ON (pi.product_id=i.product_id) AND quantity_on_hand < 5;

Answer: C, D

Question: 155

Evaluate the following query:

SELECT INTERVAL ‘300’ MONTH,
INTERVAL ’54-2′ YEAR TO MONTH,

INTERVAL ’11:12:10.1234567′ HOUR TO SECOND FROM dual;

What is the correct output of the above query?

A. +25-00 , +54-02, +00 11:12:10.123457

B. +00-300, +54-02, +00 11:12:10.123457

C. +25-00 , +00-650, +00 11:12:10.123457

D. +00-300 , +00-650, +00 11:12:10.123457

Answer: A

Question: 156

View the Exhibit and examine the description of the EMPLOYEES table. You executed the following SQL statement:

SELECT first_name, department_id, salary FROM employees

ORDER BY department_id, first_name, salary desc;

Which two statements are true regarding the output of the above query? (Choose two.)

A. The values in all the columns would be sorted in the descending order.

B. The values in the SALARY column would be sorted in descending order for all the employees
having the same value in the DEPARTMENT_ID column.

C. The values in the FIRST_NAME column would be sorted in ascending order for all the
employees having the same value in the DEPARTMENT_ID column.

D. The values in the FIRST_NAME column would be sorted in the descending order for all the
employees having the same value in the DEPARTMENT_ID column.

E. The values in the SALARY column would be sorted in descending order for all the employees
having the same value in the DEPARTMENT_ID and FIRST_NAME column.

Answer: C, E

Question: 157

Evaluate the following CREATE TABLE commands: CREATE TABLE orders

(ord_no NUMBER(2) CONSTRAINT ord_pk PRIMARY KEY, ord_date DATE,

cust_id NUMBER(4));

CREATE TABLE ord_items
(ord_no NUMBER(2),
item_no NUMBER(3),

qty NUMBER(3) CHECK (qty BETWEEN 100 AND 200),
expiry_date date CHECK (expiry_date > SYSDATE),
CONSTRAINT it_pk PRIMARY KEY (ord_no,item_no),

CONSTRAINT ord_fk FOREIGN KEY(ord_no) REFERENCES orders(ord_no)); Why would the ORD_ITEMS table not get created?

A. SYSDATE cannot be used with the CHECK constraint.

B. The CHECK constraint cannot be used twice for the same table.

C. The BETWEEN clause cannot be used for the CHECK constraint.

D. ORD_NO and ITEM_NO cannot be used as a composite primary key because ORD_NO is
also the FOREIGN KEY.

Answer: A

Question: 158

Evaluate the following SQL statement: SELECT 2 col1,’y’ col2

FROM dual

UNION

SELECT 1,’x’
FROM dual
UNION

SELECT 3,NULL

FROM dual

ORDER BY 2;

Which statement is true regarding the output of the SQL statement?

A. It would execute and the order of the values in the first column would be 3, 2, 1.

B. It would execute and the order of the values in the first column would be 1, 2, 3.

C. It would not execute because the column alias name has not been used in the ORDER BY
clause.

D. It would not execute because the number 2 in the ORDER BY clause would conflict with the
value 2 in the first SELECT statement.

Answer: B

Question: 159

A subquery is called a single-row subquery when ____.

A. the inner query returns a single value to the main query

B. the inner query uses an aggregate function and returns one or more values

C. there is only one inner query in the main query and the inner query returns one or more values

D. the inner query returns one or more values and the main query returns a single value as output

Answer: A

Question: 160

View the Exhibit and examine the structure of ORDER_ITEMS and ORDERS tables.

You need to remove from the ORDER_ITEMS table those rows that have an order status of 0 or

1 in the ORDERS table.

Which DELETE statements are valid? (Choose all that apply.)

A. DELETE

FROM order_items

WHERE order_id IN (SELECT order_id FROM orders

Page 85 of 91

Pg86Pg86

Exam Name:       Oracle Database SQL Expert

Exam Type           Oracle

Exam Code:         1Z0-047 Total Questions: 168

WHERE order_status in (0,1));

B. DELETE *

FROM order_items

WHERE order_id IN (SELECT order_id FROM orders

WHERE order_status IN (0,1));

C. DELETE FROM order_items i

WHERE order_id = (SELECT order_id FROM orders o WHERE i.order_id = o.order_id AND

order_status IN (0,1));

D. DELETE

FROM (SELECT * FROM order_items i,orders o

WHERE i.order_id = o.order_id AND order_status IN (0,1));

Answer: A, C, D

Question: 161

View the Exhibit and examine the structure of the PRODUCT_INFORMATION table.

Which two queries would work? (Choose two.)

A. SELECT product_name

FROM product_information

WHERE list_price = (SELECT AVG(list_price) FROM product_information);

B. SELECT product_status

FROM product_information
GROUP BY product_status

WHERE list_price < (SELECT AVG(list_price) FROM product_information);

C. SELECT product_status

FROM product_information
GROUP BY product_status

HAVING list_price > (SELECT AVG(list_price)

FROM product_information);

D. SELECT product_name

FROM product_information

WHERE list_price < ANY(SELECT AVG(list_price) FROM product_information

GROUP BY product_status);

Answer: A, D

Question: 162

View the Exhibit and examine the data in the PRODUCT_INFORMATION table.

There are some products listed in the PRODUCT_INFORMATION table that have no value in the LIST_PRICE column. You issued the following SQL statement to find out the PRODUCT_NAME for these products:

SELECT product_name, list_price
FROM product_information
WHERE list_price = NULL;

The query returns no rows. What changes would you make in the statement to get the desired
result?

A. Change the WHERE clause to WHERE list_price = 0

B. Change the WHERE clause to WHERE list_price = ‘ ‘.

C. Change the WHERE clause to WHERE list_price IS NULL.

D. In the WHERE clause, enclose NULL within single quotation marks.

E. In the WHERE clause, enclose NULL within double quotation marks.

Answer: C

Question: 163

View the Exhibit and examine the description of the EMPLOYEES table.

You want to calculate the total remuneration for each employee. Total remuneration is the sum of
the annual salary and the percentage commission earned for a year. Only a few employees earn
commission.

Which SQL statement would you execute to get the desired output?

A. SELECT first_name, salary, salary*12+salary*commission_pct “Total”
FROM EMPLOYEES;

B. SELECT first_name, salary, salary*12+NVL((salary*commission_pct), 0) “Total”
FROM EMPLOYEES;

C. SELECT first_name, salary, salary*12 + NVL(salary, 0)*commission_pct “Total”
FROM EMPLOYEES;

D. SELECT first_name, salary, salary*12+(salary*NVL2(commission_pct,
salary,salary+commission_pct))”Total” FROM EMPLOYEES;

Answer: B

Question: 164

View the Exhibit and examine the structure of the PRODUCT_INFORMATION and INVENTORIES tables.

You want to display the quantity on hand for all the products available in the

PRODUCT_INFORMATION table that have the PRODUCT_STATUS as ‘orderable’.

QUANTITY_ON_HAND is a column in the INVENTORIES table. The following SQL statement was written to accomplish the task:

SELECT pi.product_id, pi.product_status, sum(i.quantity_on_hand) FROM product_information pi LEFT OUTER JOIN inventories i ON (pi.product_id = i.product_id)

WHERE (pi.product_status = ‘orderable’)

GROUP BY pi.product_id, pi.product_status;

Which statement is true regarding the execution of this SQL statement?

A. The statement would execute and produce the desired output.

B. The statement would not execute because the WHERE clause is used before the GROUP BY
clause.

C. The statement would not execute because prefixing table alias to column names is not allowed
with the ON clause.

D. The statement would not execute because the WHERE clause is not allowed with LEFT
OUTER JOIN.

Answer: A

Question: 165

View the Exhibit and examine the description of the ORDERS table.

The orders in the ORDERS table are placed through sales representatives only. You are given
the task to get the SALES_REP_ID from the ORDERS table of those sales representatives who
have successfully referred more than 10 customers. Which statement would achieve this
purpose?

A. SELECT sales_rep_id, COUNT(customer_id) “Total”
FROM orders

HAVING COUNT(customer_id) > 10;

B. SELECT sales_rep_id, COUNT(customer_id) “Total”
FROM orders

WHERE COUNT(customer_id) > 10 GROUP BY sales_rep_id;

C. SELECT sales_rep_id, COUNT(customer_id) “Total”
FROM orders

GROUP BY sales_rep_id HAVING total > 10;

D. SELECT sales_rep_id, COUNT(customer_id) “Total”
FROM orders

GROUP BY sales_rep_id

HAVING COUNT(customer_id) > 10;

Answer: D

Question: 166

Which two statements are true regarding the types of table joins available in Oracle Database 10g? (Choose two.)

A. You can use the JOIN clause to join only two tables.

B. You can explicitly provide the join condition with a NATURAL JOIN.

C. You can use the USING clause to join tables on more than one column.

D. You can use the ON clause to specify multiple conditions while joining tables.

Answer: C, D

Question: 167

Which two statements are true regarding subqueries? (Choose two.)

A. The ORDER BY clause can be used in the subquery.

B. A subquery can be used in the FROM clause of a SELECT statement.

C. If the subquery returns NULL, the main query may still return result rows.

D. A subquery can be placed in a WHERE clause, GROUP BY clause, or a HAVING clause.

E. Logical operators, such as AND, OR and NOT, cannot be used in the WHERE clause of a
subquery.

Answer: A, B

Question: 168

Given below is a list of functions and their purpose in random order.

Function Purpose

1)NVL a) Used for evaluating NOT NULL and NULL values

2)NULLIF b) Used to return the first non- null values in a list of expressions

3)COALESCE c) Used to compare two expressions. If both are same, it returns NULL; otherwise,
it returns only the first expression.

4)NVL2 d) Used to convert NULL values to actual values Identify the correct combination of
functions and their usage.

A. 1-a, 2-c, 3-b, 4-d

B. 1-d, 2-c, 3-b, 4-a

C. 1-b, 2-c, 3-d, 4-a

D. 1-d, 2-b, 3-c, 4-a

Answer: B