การสอบจำลองใบรับรอง SQL

1. What will be the outcome of the following query?

SELECT ROUND(144.23,-1) FROM dual;
  1. 140
  2. 144
  3. 150
  4. 100

2.In which of the following cases, parenthesis should be specified?

  1. เมื่อใช้ INTERSECT กับตัวดำเนินการชุดอื่น
  2. เมื่อใช้ UNION กับ UNION ALL
  3. เมื่อใช้ MINUS สำหรับแบบสอบถาม
  4. ไม่มีข้อใดข้างต้น

3. Which of the following are DML commands in Oracle Database?

  1. SELECT
  2. GROUP BY
  3. INTERSECT
  4. INSERT

4. Write a query to display employee details (Name, Department, Salary and Job) from EMP table.

  1. SELECT ename, deptno, sal, job FROM emp;
  2. SELECT * FROM emp;
  3. SELECT DISTINCT ename, deptno, sal, job FROM emp;
  4. SELECT ename, deptno, sal FROM emp;

5.What among the following are different types of Views?

  1. มุมมองที่เรียบง่าย
  2. มุมมองที่ซับซ้อน
  3. ทั้งเอและบี
  4. ไม่มีข้อใดข้างต้น

6.What is true about the SET operators?

  1. ส่วนคำสั่ง SELECT ควรมีจำนวนคอลัมน์เท่ากันชนิดข้อมูลอาจแตกต่างกัน
  2. สามารถใช้ตัวดำเนินการ SET สำหรับการรวมสองแบบสอบถามเท่านั้น
  3. ประเภทข้อมูลของแต่ละคอลัมน์ในแบบสอบถามที่ 2 ต้องตรงกับประเภทข้อมูลของคอลัมน์ที่เกี่ยวข้องในแบบสอบถามแรก
  4. ไม่มีข้อใดข้างต้น

7.Which of the following multi-row operators can be used with a sub-query?

  1. IN
  2. ANY
  3. ALL
  4. ทั้งหมดที่กล่าวมา

8. When a table can be created?

  1. เมื่อผู้ใช้ไม่ได้ใช้ฐานข้อมูล
  2. เมื่อฐานข้อมูลถูกสร้างขึ้นใหม่
  3. สามารถสร้างได้ตลอดเวลาแม้ว่าผู้ใช้จะใช้ฐานข้อมูล
  4. ไม่มีข้อใดข้างต้น

9. Which among the following is a common technique for inserting rows into a table? (Choose the most sensible and appropriate answer)

  1. ใช้คำสั่ง SELECT
  2. พิมพ์ค่าแต่ละค่าลงในส่วนคำสั่ง INSERT ด้วยตนเอง
  3. การใช้ตัวดำเนินการ SET
  4. ไม่มีข้อใดข้างต้น

10. What among the following is true about a View?

  1. แบบสอบถามย่อยสามารถฝังอยู่ในคำสั่ง CREATE VIEW
  2. แบบสอบถามย่อยที่ใช้ในคำสั่ง CREATE VIEW ต้องมีไวยากรณ์ SELECT แบบง่าย
  3. คุณไม่สามารถใช้คำสั่ง WHERE ในแบบสอบถามย่อยได้เมื่อใช้ในคำสั่งสร้างมุมมอง
  4. ไม่มีข้อใดข้างต้น

11. Predict the output when below statement is executed in SQL* Plus?

DESC emp
  1. เพิ่มข้อผิดพลาด "SP2-0042: คำสั่งที่ไม่รู้จัก" desc emp "- ส่วนที่เหลือของบรรทัดละเว้น"
  2. แสดงรายการคอลัมน์ของตาราง EMP
  3. แสดงรายการคอลัมน์ตาราง EMP ประเภทข้อมูลและความว่างเปล่า
  4. แสดงรายการคอลัมน์ของตาราง EMP พร้อมกับชนิดข้อมูล

12. What will be the outcome of the query given below?

SELECT 100+NULL+999 FROM dual;
  1. 100
  2. 999
  3. NULL
  4. 1099

13. With respect to the given query, if the JOIN used is replaced with NATURAL JOIN, it throws an error. What is the reason for this error?

  1. เมื่อใช้ NATURAL JOIN คำสั่ง WHERE จะเป็นข้อบังคับโดยละเว้นซึ่งทำให้เกิดข้อผิดพลาด
  2. คำสั่ง ON ควรถูกแทนที่ด้วย USING clause
  3. คำว่า NATURAL, JOIN และ USING เป็นคำที่ใช้ร่วมกันโดยเฉพาะในบริบทของข้อเข้าร่วมเดียวกัน
  4. ข้อความค้นหาไม่สามารถรวมส่วนคำสั่ง NATURAL JOIN และ ON (หรือ USING) ในขณะที่เข้าร่วม

14.Which of the following syntax models is used in extensively in the software systems worldwide?

  1. ANSI SQL: 1999
  2. ทั้งไวยากรณ์ Oracle แบบดั้งเดิมและไวยากรณ์ ANSI SQL: 1999
  3. ไวยากรณ์ Oracle แบบดั้งเดิม
  4. ตัวเลือกทั้งหมด

15.What is true about co-related sub-queries?

  1. ตารางที่ใช้ในแบบสอบถามหลักยังใช้ในแบบสอบถามย่อยที่เกี่ยวข้องกัน
  2. เคียวรีย่อยที่อ้างอิงคอลัมน์ที่ใช้ในคิวรีหลักเรียกว่าเคียวรีย่อยที่เกี่ยวข้องกัน
  3. เคียวรีย่อยที่เขียนโดยไม่มีวงเล็บเรียกว่าเคียวรีย่อยที่เกี่ยวข้องกัน
  4. คิวรีย่อยที่ใช้ตารางต่างจากที่ใช้ในคิวรีหลักอย่างมีระเบียบเรียกว่าคิวรีย่อยที่เกี่ยวข้องกัน

16. You issue an UPDATE statement as follows:

UPDATE employees 
SET employee_id   = NULL;
WHERE job_id  = 'CLERK';

ผลของข้อความข้างต้นจะเป็นอย่างไร? (ในที่นี้คอลัมน์ EMPLOYEE_ID ถูกทำเครื่องหมายว่าจำเป็นโดยใส่ข้อ จำกัด )

  1. คอลัมน์แรกของชุดข้อมูลจะได้รับการอัปเดตเป็น NULL
  2. คอลัมน์ที่ 3 ของแถวแรกจะได้รับการอัปเดตเป็น NULL
  3. คอลัมน์ที่ 3 ของแถวทั้งหมดจะได้รับการอัปเดตเป็น NULL
  4. และข้อผิดพลาด ORA จะถูกโยนทิ้ง

17.What is true with respect to the query given above?

  1. มันให้ข้อผิดพลาด ORA เนื่องจากไม่มีส่วนคำสั่ง WHERE ที่จำเป็น
  2. ส่วนคำสั่ง JOIN..ON ไม่สามารถมีได้มากกว่าหนึ่งเงื่อนไข
  3. แบบสอบถามละเว้นเงื่อนไขสุดท้ายและดำเนินการโดยไม่มีข้อผิดพลาด ORA
  4. ส่วนคำสั่ง JOIN..ON สามารถเขียนในรูปแบบที่ให้ไว้ด้านบนเพื่อวางเงื่อนไขเพิ่มเติม

18. Consider the following query.

SELECT e.job_id , e.first_name, d.department_id 
FROM departments D JOIN employees e JOIN BONUS b
USING (job_id );

ข้อความค้นหานี้ทำให้เกิดข้อผิดพลาด สาเหตุของข้อผิดพลาดคืออะไร?

  1. การเข้าร่วมสามารถเกิดขึ้นได้ครั้งละสองตารางเท่านั้น
  2. การใช้อนุประโยคในแบบสอบถามไม่มีคอลัมน์จากแผนก
  3. ไม่มีคำสั่ง WHERE ในแบบสอบถาม
  4. ไม่มีข้อใดข้างต้น

19. Predict the output of the below query

SELECT 50 || 0001
FROM dual
  1. 500001
  2. 51
  3. 501
  4. 5001

20. You create a table and name it as COUNT. What will be the outcome of CREATE TABLE script?

  1. ตารางจะไม่ถูกสร้างขึ้น
  2. ตารางจะถูกสร้างขึ้นและขีดล่างจะถูกเพิ่มโดยอัตโนมัติในชื่อ COUNT_
  3. ข้อผิดพลาด ORA จะเกิดขึ้น
  4. ตาราง COUNT จะถูกสร้างขึ้นโดยไม่มีข้อผิดพลาดใด ๆ

21. What will be the outcome of the following query?

SELECT *
FROM employees
WHERE salary BETWEEN (SELECT max(salary)
			FROM employees
			WHERE department_id  = 100) 
AND (SELECT min(salary) FROM employees where department_id  = 100);

แบบสอบถามนี้ส่งกลับข้อผิดพลาด สาเหตุของข้อผิดพลาดคืออะไร?

  1. ควรใช้คำสั่ง GROUP BY เมื่อใช้ฟังก์ชัน MAX
  2. แบบสอบถามย่อยทั้งสองไม่สามารถใช้ ID แผนกเดียวกันในแบบสอบถามภายนอกเดียวกัน
  3. ไม่สามารถใช้ตัวดำเนินการระหว่าง BETWEEN กับแบบสอบถามย่อย
  4. ส่วนคำสั่ง SELECT ควรมีคอลัมน์ที่กล่าวถึงไม่ใช่เครื่องหมายดอกจัน (*)

22. Which of the following is not a property of functions?

  1. ทำการคำนวณข้อมูล
  2. แปลงประเภทข้อมูลคอลัมน์
  3. แก้ไขรายการข้อมูลแต่ละรายการ
  4. ไม่มีข้อใดข้างต้น

23.What is true with respect to INNER JOINS and OUTER JOINS in Oracle DB?

  1. INNER JOIN ส่งคืนเฉพาะแถวที่ตรงกัน
  2. OUTER JOIN ส่งคืนเฉพาะแถวที่ไม่ตรงกัน
  3. OUTER JOIN ส่งคืนแถวที่ตรงกันและแถวที่ไม่ตรงกัน
  4. ไม่มีข้อใดข้างต้น

24. Which of the following can create a view even if the base table(s) does not exist?

  1. NOFORCE
  2. FORCE
  3. หรือแทนที่
  4. สร้างมุมมอง

25. Which of the following ANSI SQL: 1999 join syntax joins are supported by Oracle?

  1. ผลิตภัณฑ์คาร์ทีเซียน
  2. รวมธรรมชาติ
  3. เข้าร่วมภายนอกเต็มรูปแบบ
  4. Equijoins

26. What among the following are the pre-requisites for creating a table?

  1. สร้างสิทธิ์ของตาราง
  2. พื้นที่จัดเก็บ
  3. ข้อมูลในตาราง
  4. ไม่มีข้อใดข้างต้น

27. What is the syntax for creating a table?

  1. สร้างตาราง [สคีมา] ตาราง (ประเภทข้อมูลคอลัมน์ [ค่าเริ่มต้น expr] [, .. ]);
  2. สร้างตารางในตาราง [schema.] (คอลัมน์ประเภทข้อมูล [ค่าเริ่มต้น expr] [, .. ]);
  3. สร้างค่าตาราง [schema.] table (คอลัมน์ประเภทข้อมูล [ค่าเริ่มต้น expr] [, .. ]);
  4. ไม่มีข้อใดข้างต้น

28.You need to display all the non-matching rows from the EMPLOYEES table and the non-matching rows from the DEPARTMENT table without giving a Cartesian product of rows between them. Which of the following queries will give the desired output?

  1. SELECT *
    FROM employees e, department d
    WHERE e.department_id  = d.department_id ;
  2. SELECT *
    FROM employees e NATURAL JOIN department d;
  3. SELECT *
    FROM employees e FULL OUTER JOIN department d
    ON  e.department_id  = d.department_id ;
  4. SELECT *
    FROM employees e JOIN  department d
    ON ( e.department_id  > d.department_id ) ;

29. Which of the below alphanumeric characters are used to signify concatenation operator in SQL?

  1. +
  2. ||
  3. -
  4. ::

30.What is the best way to change the precedence of SET operators given the fact that they have equal precedence?

  1. ลำดับการใช้งานของผู้ประกอบการตลท. สามารถเปลี่ยนลำดับความสำคัญได้
  2. ไม่สามารถเปลี่ยนลำดับความสำคัญเท่ากันได้
  3. วงเล็บสามารถใช้เพื่อเปลี่ยนลำดับความสำคัญได้
  4. ไม่มีข้อใดข้างต้น

31.What will be displayed in the result of this query?

  1. มันจะแสดง ID แผนกที่แตกต่างกันซึ่งมีอยู่ร่วมกันในตารางพนักงานและ DEPARTMENTS
  2. มันจะส่งข้อผิดพลาด ORA
  3. ไม่ได้เลือกแถว
  4. ไม่มีข้อใดข้างต้น

32. Which of the following commands ensures that no DML operations can be performed on a view?

  1. NOFORCE
  2. FORCE
  3. ด้วยการอ่านเท่านั้น
  4. หรือแทนที่

33. What is true about the NOFORCE option in CREATE VIEW statement?

  1. สร้างมุมมองแม้ว่าจะไม่มีตารางพื้นฐาน
  2. จะสร้างมุมมองเฉพาะในกรณีที่มีตารางฐานอยู่
  3. เป็นค่าเริ่มต้นขณะสร้างมุมมอง
  4. ไม่มีข้อใดข้างต้น

34. What is true about the OR REPLACE keyword?

  1. สิทธิ์ของวัตถุจะหายไปเมื่อสร้างมุมมองโดยใช้คำสำคัญนี้
  2. ไม่จำเป็นต้องให้สิทธิ์ออบเจ็กต์ที่ให้ไว้ก่อนหน้านี้อีกครั้ง
  3. ทั้ง A และ B
  4. ไม่มีข้อใดข้างต้น

35. What among the following is a type of Oracle SQL functions?

  1. ฟังก์ชันหลายแถว
  2. ฟังก์ชันคอลัมน์เดียว
  3. ฟังก์ชันค่าเดียว
  4. ฟังก์ชันหลายคอลัมน์

36. What among the following is a type of single-row function?

  1. VARCHAR2
  2. Character
  3. LONG
  4. NULLIF

37. What is the most appropriate about Multiple Row Functions?

  1. ส่งคืนค่าหลายค่าต่อแต่ละแถว 
  2. พวกเขาส่งคืนหนึ่งผลลัพธ์ต่อกลุ่มของแถวและสามารถจัดการกลุ่มของแถวได้ 
  3. พวกเขาส่งคืนหนึ่งผลลัพธ์ต่อแถวและสามารถจัดการกลุ่มของแถวได้ 
  4. พวกเขาส่งคืนค่าหลายค่าต่อกลุ่มของแถว

38. Which of the following are also called Group functions?

  1. ฟังก์ชันแถวเดียว
  2. ฟังก์ชั่นหลายกลุ่ม
  3. ฟังก์ชันหลายแถว
  4. ฟังก์ชันกลุ่มเดียว

39. A table T_COUNT has 12 number values as 1, 2, 3, 32, 1, 1, null, 24, 12, null, 32, null. Predict the output of the below query.

SELECT COUNT (*) FROM t_count;
  1. 12
  2. 6
  3. 9
  4. โยนข้อยกเว้นเนื่องจากฟังก์ชัน COUNT ไม่ทำงานกับค่า NULL

40. Pick the element which you must specify while creating a table.

  1. ชื่อคอลัมน์
  2. ประเภทข้อมูลคอลัมน์
  3. ขนาดคอลัมน์
  4. ทั้งหมดที่กล่าวมา

41. What can be said about the statement given above?

  1. มีการตั้งชื่อทางเลือกสำหรับมุมมอง
  2. การตั้งชื่อทางเลือกเป็นสิ่งจำเป็นหากคอลัมน์ใด ๆ ได้มาจากฟังก์ชันหรือนิพจน์
  3. ทั้งเอและบี
  4. ไม่มีข้อใดข้างต้น

42. A table T_COUNT has 12 number values as 1, 2, 3, 32, 1, 1, null, 24, 12, null, 32, null. Predict the output of the below query.

SELECT COUNT (num) FROM t_count;
  1. 12
  2. 6
  3. 9
  4. โยนข้อยกเว้นเนื่องจากฟังก์ชัน COUNT ไม่ทำงานกับค่า NULL

43. You need to find the results obtained by the above query only for the departments 100 and 101. Which of the following clauses should be added / modified to the above query?

  1. ควรเพิ่ม ON (e.department_id = d.department_id)
  2. ควรเพิ่ม USING (e.department_id)
  3. ควรเพิ่ม e.department_id ใน (100,101) ที่ไหน
  4. ไม่มีข้อใดข้างต้น

44. Which of the following is NOT a GROUP BY extensions in SQL?

  1. GROUP BY
  2. ชุดการจัดกลุ่ม
  3. CUBE
  4. ROLLUP

45. What will happen if the above statement is modified as below?

CREATE OR REPLACE VIEW dept_sum_vu(name, maxsal, minsal, avgsal)
AS 
SELECT d.dept_name, MIN(e.salary), MAX(e.salary), AVG (e.salary)
FROM employees e JOIN departments d 
ON (e.department_id= d.dept_id)
GROUP BY d.dept_name;
  1. มันจะไม่ต่างจากคำสั่งเดิม
  2. มันจะดำเนินการสำเร็จโดยให้ผลลัพธ์เดียวกัน แต่เปลี่ยนชื่อนามแฝง
  3. มันจะทำให้เกิดข้อผิดพลาด ORA
  4. ไม่มีข้อใดข้างต้น

46. What among the following is true about the DELETE statement?

  1. คำสั่ง DELETE จะต้องมาพร้อมกับคำสั่ง WHERE
  2. ไม่บังคับให้เขียน WHERE clause ด้วยคำสั่ง DELETE
  3. DELETE สามารถลบข้อมูลจากตารางหลายตารางได้
  4. ไม่มีข้อใดข้างต้น

47. Assuming the last names of the employees are in a proper case in the table employees, what will be the outcome of the following query?

SELECT employee_id, last_name, department_id  FROM employees WHERE last_name = 'smith';
  1. จะแสดงรายละเอียดของพนักงานที่มีนามสกุลเป็น Smith
  2. มันจะไม่ให้ผล
  3. จะให้รายละเอียดสำหรับพนักงานที่มีนามสกุลเป็น 'Smith' ในตัวพิมพ์เล็กทั้งหมด
  4. จะให้รายละเอียดสำหรับพนักงานที่มีนามสกุลเป็น 'Smith' ในกรณี INITCAP ทั้งหมด

48.What among the following happens when we issue a DELETE statement on a table? (Choose the most appropriate answer)

  1. ข้อความแจ้งจะปรากฏขึ้นเพื่อถามผู้ใช้ว่าแน่ใจหรือไม่ที่จะลบแถวที่ร้องขอ
  2. แถวที่ปฏิบัติตามเงื่อนไขที่กำหนดในคำสั่ง DELETE จะถูกลบออกทันที
  3. แถวที่ร้องขอจะถูกลบออกทันทีโดยไม่ต้องแจ้งให้ทราบ
  4. ไม่มีข้อใดข้างต้น

49.What is true about the query given above?

  1. แบบสอบถามนี้ส่งกลับข้อผิดพลาด ORA
  2. ดำเนินการสำเร็จ แต่ไม่ให้ผลลัพธ์
  3. ไม่สามารถใช้แบบสอบถามจากตารางที่แตกต่างกันกับตัวดำเนินการ SET
  4. แบบสอบถามดำเนินการสำเร็จและให้ผลลัพธ์ตามที่คาดไว้

50.What will happen if a value is provided to the &N variable in the above query (option C in question 76) does not match with any row? (Choose the best answer)

  1. คำสั่งจะทำให้เกิดข้อผิดพลาด ORA
  2. คำสั่งจะส่งคืนแถวทั้งหมดในตาราง
  3. คำสั่งจะคืนค่า NULL เป็นผลลัพธ์ผลลัพธ์
  4. คำสั่งจะไม่ส่งคืนแถวในผลลัพธ์

51.What is the default sorting order of the results when UNION ALL operator is used?

  1. Descending
  2. Ascending
  3. A หรือ B
  4. ทั้งหมดที่กล่าวมา

52. A table T_COUNT has 12 number values as 1, 2, 3, 32, 1, 1, null, 24, 12, null, 32, null. Predict the output of the below query.

SELECT COUNT (ALL num) FROM t_count;
  1. 12
  2. 6
  3. 9
  4. โยนข้อยกเว้นเนื่องจากฟังก์ชัน COUNT ไม่ทำงานกับค่า NULL

53.What is the maximum level up to which Sub-queries can be nested?

  1. 255
  2. 100
  3. 2
  4. 16

54. A table T_COUNT has 12 number values as 1, 2, 3, 32, 1, 1, null, 24, 12, null, 32, null. Predict the output of the below query.

SELECT COUNT (DISTINCT num) FROM t_count;
  1. 12
  2. 6
  3. 9
  4. โยนข้อยกเว้นเนื่องจากฟังก์ชัน COUNT ไม่ทำงานกับค่า NULL

55. Here are few statements about VARIANCE function in SQL.

ผม. ฟังก์ชันนี้รับอินพุตตัวเลขหลายรายการและส่งกลับค่าความแปรปรวนของค่าทั้งหมด

ii. ฟังก์ชันยอมรับคอลัมน์ตัวเลขและส่งกลับค่าความแปรปรวนของค่าคอลัมน์ทั้งหมดรวมทั้ง NULL

สาม. ฟังก์ชันยอมรับคอลัมน์ตัวเลขและส่งกลับค่าความแปรปรวนของค่าคอลัมน์ทั้งหมดไม่รวมค่า NULL

Chose the correct combination from the below options.

  1. ฉันและ iii
  2. ฉันและ ii
  3. ii
  4. iii

56. Which clause is used to filter the query output based on aggregated results using a group by function?

  1. WHERE
  2. LIMIT
  3. GROUP WHERE
  4. HAVING

57. A user named "Kevin" wants to access a table which is owned by another user named "Jonathan". Which of the following will work for Kevin?

  1. เลือก * จาก Kevin.employees;
  2. เลือก * จาก jonathan.employees;
  3. A หรือ B อย่างใดอย่างหนึ่ง
  4. ไม่มีข้อใดข้างต้น

58.What is true about the ALL operator used for sub-queries? (Choose the most appropriate answer.)

  1. ส่งคืนแถวที่ตรงกับค่าทั้งหมดในรายการ / แบบสอบถามย่อย
  2. ส่งคืนแถวที่ตรงกับค่าบางค่าในรายการ / แบบสอบถามย่อย
  3. ส่งคืนแถวก็ต่อเมื่อค่าทั้งหมดตรงกันในรายการ / แบบสอบถามย่อย
  4. ทั้งหมดที่กล่าวมา

59. Suppose you select DISTINCT departments and employee salaries in the view query used in above question. What will be the outcome if you try to remove rows from the view dept_sum_vu?

  1. แถวจะถูกลบออกโดยไม่มีข้อผิดพลาดใด ๆ
  2. ระบบจะลบเฉพาะ 10 แถวแรกเท่านั้น
  3. ไม่สามารถลบแถวได้
  4. ไม่มีข้อใดข้างต้น

60.What will happen if the SELECT list of the compound queries returns both a VARCHAR2 and a NUMBER data type result?

  1. Oracle จะแปลงโดยปริยายและส่งคืนผลลัพธ์ประเภทข้อมูล VARCHAR2
  2. Oracle จะแปลงโดยปริยายและส่งกลับผลลัพธ์ประเภทข้อมูล NUMBER
  3. เกิดข้อผิดพลาด ORA
  4. ไม่มีข้อใดข้างต้น

61. What is true about a schema?

  1. สคีมาเป็นของผู้ใช้ฐานข้อมูลและมีชื่อเดียวกับผู้ใช้นั้น
  2. ผู้ใช้แต่ละคนเป็นเจ้าของสคีมาเดียว
  3. สคีมาอ็อบเจ็กต์มีลิงก์ฐานข้อมูล
  4. ทั้งหมดที่กล่าวมา

62. In which order the values will get inserted with respect to the above INSERT statement?

  1. Location_id, manager_id, department_name, department_id
  2. department_id, department_name, manager_id, location_id
  3. department_id, manager_id, department_name, location_id
  4. department_id, department_name, location_id, manager_id

63. What among the following is true about tables?

  1. ค่าเริ่มต้นถูกกำหนดให้กับตาราง
  2. ค่าเริ่มต้นสามารถกำหนดให้กับคอลัมน์ของตารางระหว่างคำสั่ง INSERT
  3. A หรือ B อย่างใดอย่างหนึ่ง
  4. ไม่มีข้อใดข้างต้น

65. Which of the below SQL query will display employee names, department, and annual salary?

  1. SELECT ename, deptno, sal FROM emp;
  2. SELECT ename, deptno, sal + comm FROM emp;
  3. SELECT ename, deptno, (sal * 12) Annual_Sal FROM emp;
  4. ไม่สามารถสอบถามเงินเดือนประจำปีได้เนื่องจากไม่มีคอลัมน์ในตาราง

66. What is true about the SUBSTR function in Oracle DB?

  1. มันแยกสตริงของความยาวที่กำหนด
  2. แสดงความยาวของสตริงเป็นค่าตัวเลข
  3. พบตำแหน่งตัวเลขของอักขระที่มีชื่อ
  4. มันตัดแต่งอักขระจากด้านหนึ่ง (หรือทั้งสอง) จากสตริงอักขระ

67. Which of the following SELECT statements lists the highest retail price of all books in the Family category?

  1. SELECT MAX(retail) FROM books WHERE category = 'FAMILY';
  2. SELECT MAX(retail) FROM books HAVING category = 'FAMILY';
  3. SELECT retail FROM books WHERE category = 'FAMILY' HAVING MAX(retail);
  4. ไม่มีข้อใดข้างต้น

68. Which of the following functions can be used to include NULL values in calculations?

  1. SUM
  2. NVL
  3. MAX
  4. MIN

69.Which statements best describes the inference drawn from the questions 34 and 35?

  1. มีค่าที่ซ้ำกันสำหรับรหัสงาน
  2. แบบสอบถามดำเนินการ แต่ผลลัพธ์ที่สร้างขึ้นไม่คาดคิด
  3. ไม่มีค่าที่ซ้ำกันสำหรับแผนก
  4. ไม่มีข้อใดข้างต้น

70. What will be the outcome of the following query?

SELECT length('hi') FROM dual;
  1. 2
  2. 3
  3. 1
  4. hi

Answer:

Answer(1): A. ฟังก์ชัน ROUND จะปัดเศษค่า 144.23 ตามความแม่นยำที่ระบุ -1 และส่งกลับ 140

Examine the structure of the EMPLOYEES table as given and answer the questions 2 and 3 that follow.

SQL> DESC employees
 Name			 Null?	  Type
 ----------------------- -------- ----------------
 EMPLOYEE_ID		 NOT NULL NUMBER(6)
 FIRST_NAME			  VARCHAR2(20)
 LAST_NAME		 NOT NULL VARCHAR2(25)
 EMAIL			 NOT NULL VARCHAR2(25)
 PHONE_NUMBER			  VARCHAR2(20)
 HIRE_DATE		 NOT NULL DATE
 JOB_ID 		 NOT NULL VARCHAR2(10)
 SALARY 			  NUMBER(8,2)
 COMMISSION_PCT 		  NUMBER(2,2)
 MANAGER_ID			  NUMBER(6)
 DEPARTMENT_ID			  NUMBER(4)

Answer(2): A. การใช้วงเล็บจะเปลี่ยนลำดับของการประเมินอย่างชัดเจนเมื่อใช้ INTERSECT กับตัวดำเนินการอื่น ๆ

Answer(3): A, D. ด้วยเหตุผลที่เข้มงวด SELECT เป็นคำสั่ง DML เนื่องจากเป็นหนึ่งในประโยคบังคับสำหรับการจัดการข้อมูลที่มีอยู่ในตาราง

Answer(4): A.เลือกสิ่งที่ต้องการจากตารางแต่ละตารางคั่นด้วยลูกน้ำ

Answer(5): C. มุมมองที่เรียบง่ายและซับซ้อนเป็นมุมมองสองประเภท มุมมองอย่างง่ายขึ้นอยู่กับการสืบค้นย่อยที่อ้างอิงเพียงตารางเดียวและไม่รวมฟังก์ชันกลุ่มนิพจน์หรือ GROUP BY clauses มุมมองที่ซับซ้อนขึ้นอยู่กับการสืบค้นย่อยที่ดึงหรือดึงข้อมูลจากตารางอย่างน้อยหนึ่งตารางและสามารถมีฟังก์ชันหรือข้อมูลที่จัดกลุ่มได้

Answer(6): C. การรวมกันทั้งหมดควรมีหมายเลขเดียวกัน ของคอลัมน์เมื่อใช้ตัวดำเนินการ SET คอลัมน์ที่เกี่ยวข้องในแบบสอบถามที่ประกอบเป็นแบบสอบถามแบบผสมต้องอยู่ในกลุ่มชนิดข้อมูลเดียวกัน

Answer:(7) D. แบบสอบถามย่อยหลายแถวส่งคืนผลลัพธ์มากกว่าหนึ่งแถวตัวดำเนินการที่สามารถใช้ได้กับแบบสอบถามย่อยหลายแถว ได้แก่ IN, ALL, ANY และ EXISTS

Answer(8): C. สามารถสร้างดัชนีเพื่อเร่งกระบวนการสืบค้น การดำเนินการ DML จะช้าลงเสมอเมื่อมีดัชนี Oracle 11g สร้างดัชนีสำหรับ PRIMARY KEY และ UNIQUE จำกัด โดยอัตโนมัติ ดัชนีที่ชัดเจนถูกสร้างขึ้นด้วยคำสั่ง CREATE INDEX Oracle 11g สามารถใช้ดัชนีได้โดยอัตโนมัติหากเกณฑ์การสืบค้นหรือการดำเนินการเรียงลำดับขึ้นอยู่กับคอลัมน์หรือนิพจน์ที่ใช้ในการสร้างดัชนี

Answer(9): A. การใช้คำสั่ง SELECT เป็นเทคนิคที่พบบ่อยที่สุดในการแทรกแถวลงในตาราง ช่วยลดความพยายามในการป้อนค่าด้วยตนเองสำหรับแต่ละคอลัมน์

Answer(10): A. ดูคำจำกัดความสามารถใช้ประโยชน์จากการสืบค้นย่อย

Answer(11): C. DESCRIBE ใช้เพื่อแสดงโครงสร้างตารางพร้อมกับคอลัมน์ตารางชนิดข้อมูลและค่าว่าง

Answer(12): C. การคำนวณทางคณิตศาสตร์ใด ๆ ที่มี NULL จะให้ผลลัพธ์เป็น NULL

Answer()13: C, D.

Answer(14): C. ไวยากรณ์ ANSI SQL: 1999 แม้ว่าจะไม่ได้ใช้มากเท่ากับไวยากรณ์ Oracle แบบดั้งเดิม แต่ก็ยังคงเป็นหนึ่งในไวยากรณ์ที่อาจใช้ใน Oracle SQL

Answer(15): B. เคียวรีย่อยที่สัมพันธ์กันอ้างอิงคอลัมน์ในคิวรีภายนอกและเรียกใช้เคียวรีย่อยหนึ่งครั้งสำหรับทุกแถวในคิวรีภายนอกในขณะที่เคียวรีย่อยที่ไม่เกี่ยวข้องจะรันเคียวรีย่อยก่อนและส่งผ่านค่าไปยังเคียวรีภายนอก

Answer(16): D. ต้องปฏิบัติตามข้อ จำกัด ในคอลัมน์ขณะอัปเดตค่า ในคำสั่ง UPDATE ที่ระบุข้อผิดพลาดจะเกิดขึ้นเนื่องจากคอลัมน์ EMPLOYEE_ID เป็นคีย์หลักในตาราง EMPLOYEES ซึ่งหมายความว่าไม่สามารถเป็น NULL ได้

Answer(17): D. คุณสามารถละเว้นคำสั่ง WHERE และเงื่อนไขที่เกี่ยวข้องได้ในส่วนคำสั่ง JOIN..ON ดังที่แสดงในแบบสอบถามที่กำหนด

Answer(18): A. Table1 JOIN table2 JOIN table3 ไม่ได้รับอนุญาตหากไม่มีคำสั่ง ON ระหว่างแต่ละ JOIN

Answer(19): C. ศูนย์นำหน้าในตัวถูกดำเนินการทางขวาจะถูกละเว้นโดย Oracle

Answer(20): A, C. คุณไม่สามารถสร้างตารางที่มีชื่อเดียวกับคำสงวนของ Oracle Server

Answer(21): C. สามารถใช้ตัวดำเนินการ BETWEEN ภายในแบบสอบถามย่อย แต่ใช้กับแบบสอบถามย่อยไม่ได้

Answer(22): D. ฟังก์ชันสามารถทำการคำนวณทำการแปลงกรณีและประเภทการแปลง

Answer(23): A, C. การรวมสามารถเป็นการรวมภายในซึ่งเร็กคอร์ดเดียวที่ส่งคืนจะมีเรกคอร์ดที่ตรงกันในทุกตารางหรือการรวมภายนอกซึ่งสามารถส่งคืนเร็กคอร์ดได้ไม่ว่าจะมีเรกคอร์ดที่ตรงกันในการรวมหรือไม่การรวมภายนอกจะถูกสร้างขึ้นเมื่อ ต้องรวมระเบียนไว้ในผลลัพธ์โดยไม่ต้องมีระเบียนที่เกี่ยวข้องในตารางการเข้าร่วม เร็กคอร์ดเหล่านี้จะจับคู่กับเร็กคอร์ด NULL เพื่อให้รวมอยู่ในเอาต์พุต

Answer(24): B. หากคุณรวมคีย์เวิร์ด FORCE ไว้ในส่วนคำสั่ง CREATE Oracle 11g จะสร้างมุมมองแม้ว่าจะไม่มีตารางอ้างอิงใด ๆ NOFORCE เป็นโหมดเริ่มต้นสำหรับคำสั่ง CREATE VIEW ซึ่งหมายความว่าตารางและคอลัมน์ทั้งหมดต้องถูกต้องมิฉะนั้นมุมมองจะไม่ถูกสร้างขึ้น

Answer(25): D.

Answer(26): A, B. ผู้ใช้ต้องมีสิทธิ์ CREATE TABLE และต้องมีพื้นที่เพียงพอในการจัดสรรขอบเขตเริ่มต้นให้กับส่วนของตาราง

Answer(27): A.

Answer(28): C. FULL OUTER JOIN ส่งคืนแถวที่ไม่ตรงกันจากทั้งสองตาราง การรวมภายนอกแบบเต็มจะรวมเรกคอร์ดทั้งหมดจากทั้งสองตารางแม้ว่าจะไม่พบเรกคอร์ดที่ตรงกันในตารางอื่นก็ตาม

Answer(29): B.ใน SQL ตัวดำเนินการเรียงต่อกันจะแสดงด้วยแถบแนวตั้งสองแถบ (||)

Answer(30): C. วงเล็บสามารถใช้เพื่อจัดกลุ่มคิวรีเฉพาะเพื่อเปลี่ยนลำดับความสำคัญอย่างชัดเจน วงเล็บเป็นที่ต้องการมากกว่าตัวดำเนินการ SET อื่น ๆ ในระหว่างการดำเนินการ

Answer(31): A. UNION ส่งคืนแถวที่รวมกันจากสองคิวรีเรียงลำดับและลบรายการที่ซ้ำกัน

Answer(32): C. ตัวเลือกโดยอ่านอย่างเดียวจะป้องกันไม่ให้ดำเนินการ DML ใด ๆ บนมุมมอง ตัวเลือกนี้มักใช้เมื่อจำเป็นที่ผู้ใช้สามารถสืบค้นข้อมูลได้เท่านั้นไม่ต้องทำการเปลี่ยนแปลงใด ๆ

Answer(33): B, C. NOFORCE เป็นโหมดเริ่มต้นสำหรับคำสั่ง CREATE VIEW ซึ่งหมายความว่าตารางและคอลัมน์ทั้งหมดต้องถูกต้องมิฉะนั้นมุมมองจะไม่ถูกสร้างขึ้น

Answer(34): B. อ็อพชัน OR REPLACE แจ้ง Oracle 11g ว่าอาจมีมุมมองที่มีชื่อเดียวกันอยู่แล้ว หากเป็นเช่นนั้นเวอร์ชันก่อนหน้าของมุมมองควรถูกแทนที่ด้วยเวอร์ชันที่กำหนดไว้ในคำสั่งใหม่

Answer(35): A. โดยทั่วไปมีฟังก์ชันสองประเภทคือฟังก์ชันแถวเดียวและหลายแถว

Answer(36): B. อักขระวันที่การแปลงทั่วไปตัวเลขเป็นประเภทของฟังก์ชันแถวเดียว

Answer(37): B. ฟังก์ชันหลายแถวทำงานในกลุ่มของแถวเสมอและส่งคืนค่าหนึ่งค่าต่อกลุ่มของแถว

Answer(38): C. ฟังก์ชันกลุ่มเหมือนกับฟังก์ชันหลายแถวและฟังก์ชันรวม

Answer(39): A. COUNT (*) จะนับจำนวนแถวรวมทั้งรายการที่ซ้ำกันและค่า NULL ใช้คำสำคัญ DISTINCT และ ALL เพื่อ จำกัด ค่าที่ซ้ำกันและค่า NULL

Answer(40): D. ตารางต้องมี atleasr หนึ่งคอลัมน์ข้อกำหนดประเภทข้อมูลและความแม่นยำ (ถ้าจำเป็น)

Answer(41): C. การระบุชื่อนามแฝงเป็นแนวทางปฏิบัติที่ดีในการปรับปรุงความสามารถในการอ่านโค้ดและแบบสอบถามมุมมอง

Answer(42): C. COUNT (คอลัมน์) ละเว้นค่า NULL แต่จะนับค่าที่ซ้ำกัน

Answer(43): C. คำสั่ง NATURAL JOIN ตรงกับคอลัมน์ที่มีชื่อเหมือนกันทั้งหมดโดยปริยาย หากต้องการเพิ่มเงื่อนไขเพิ่มเติมสามารถใช้คำสั่ง WHERE ได้

Answer(44): A. การดำเนินการ GROUPING SETS สามารถใช้เพื่อดำเนินการ GROUP BY การรวมหลายรายการด้วยแบบสอบถามเดียว

Answer(45): B. ลำดับของนามแฝงคอลัมน์ไม่สำคัญมากนักเนื่องจากไม่ได้มีแอตทริบิวต์พฤติกรรมใด ๆ

Answer(46): B. เพรดิเคตส่วนคำสั่ง WHERE เป็นทางเลือกในคำสั่ง DELETE ถ้าไม่ใส่คำสั่ง WHERE แถวทั้งหมดของตารางจะถูกลบ

Answer(47): B. หากนามสกุลในตารางพนักงานเป็นกรณีที่เหมาะสมเงื่อนไข WHERE last_name = 'smith' จะไม่ถูกทำให้พอใจและจะไม่มีการแสดงผลลัพธ์

Answer(48): C. เนื่องจากเป็นส่วนหนึ่งของธุรกรรมที่ใช้งานอยู่หรือธุรกรรมใหม่แถวในตารางจะถูกลบออก

Answer(49): D. แบบสอบถามแบบผสมคือหนึ่งแบบสอบถามที่ประกอบด้วยแบบสอบถามหลายรายการโดยใช้ตารางที่แตกต่างกัน

Answer(50): D.

Answer(51): B. การสืบค้นแบบผสมจะเรียงแถวตามค่าเริ่มต้นในทุกคอลัมน์จากซ้ายไปขวาตามลำดับจากน้อยไปหามากข้อยกเว้นเพียงอย่างเดียวคือ UNION ALL โดยที่แถวจะไม่ถูกจัดเรียง สถานที่เดียวที่อนุญาตให้ใช้คำสั่ง ORDER BY คือที่ส่วนท้ายของแบบสอบถามผสม

Answer(52): C. COUNT (คอลัมน์ทั้งหมด) ละเว้นค่า NULL แต่จะนับรายการที่ซ้ำกัน

Answer(53): A.

Answer(54): B. COUNT (คอลัมน์ DISTINCT) นับค่าที่ไม่ซ้ำกันที่ไม่ใช่ค่าว่าง

Answer(55): C. ฟังก์ชัน VARIANCE ยอมรับอาร์กิวเมนต์ตัวเลขเดี่ยวเป็นชื่อคอลัมน์และส่งกลับค่าความแปรปรวนของค่าคอลัมน์ทั้งหมดโดยพิจารณาจากค่า NULL

Answer(56): D. HAVING Clause ใช้สำหรับ จำกัด ผลลัพธ์กลุ่ม คุณใช้คำสั่ง HAVING เพื่อระบุกลุ่มที่จะแสดงดังนั้นจึง จำกัด กลุ่มเพิ่มเติมตามข้อมูลรวม HAVING clause สามารถนำหน้า GROUP BY clause ได้ แต่ขอแนะนำให้คุณวาง GROUP BY clause ก่อนเพราะมันมีเหตุผลมากกว่า กลุ่มถูกสร้างขึ้นและฟังก์ชันกลุ่มจะถูกคำนวณก่อนที่จะใช้คำสั่ง HAVING กับกลุ่มในรายการ SELECT

Answer(57): B.

Answer(58): C. "> ทั้งหมด" มากกว่าค่าสูงสุดที่ส่งกลับโดยแบบสอบถามย่อย '<ALL' น้อยกว่าค่าต่ำสุดที่ส่งคืนโดยแบบสอบถามย่อย '<ANY' น้อยกว่าค่าสูงสุดที่ส่งกลับโดยแบบสอบถามย่อย "> ใด ๆ " มากกว่าค่าต่ำสุดที่ส่งกลับโดยการสืบค้นย่อย '= ANY' เท่ากับค่าใด ๆ ที่ส่งคืนโดยแบบสอบถามย่อย (เช่นเดียวกับ IN) แถว '[NOT] EXISTS' ต้องตรงกับค่าในแบบสอบถามย่อย

Answer(59): C. มุมมอง DEPT_SUM_VU ยังคงเป็นมุมมองที่ซับซ้อนเนื่องจากใช้คำหลัก DISTINCT ดังนั้นจึงไม่สามารถดำเนินการ DML ได้

Answer(60): C. Oracle ไม่แปลงประเภทข้อมูลโดยปริยาย

Answer(61): D. พื้นที่ผู้ใช้ในฐานข้อมูลเรียกว่าสคีมา สคีมาประกอบด้วยอ็อบเจ็กต์ที่ผู้ใช้เป็นเจ้าของหรือเข้าถึง ผู้ใช้แต่ละคนสามารถมีสคีมาของตนเองได้เพียงรายการเดียว

Answer(62): B. หากมีการกล่าวถึงคอลัมน์ในส่วนคำสั่ง INSERT คีย์เวิร์ด VALUES ควรมีค่าในลำดับเดียวกัน

Answer(63): B. สามารถระบุค่าเริ่มต้นสำหรับคอลัมน์ระหว่างคำจำกัดความโดยใช้คำหลัก DEFAULT

Answer(65): C. ใช้นิพจน์ตัวเลขในคำสั่ง SELECT เพื่อคำนวณเลขคณิตพื้นฐาน

Answer(66): A.ฟังก์ชัน SUBSTR (สตริง, x, y) ยอมรับพารามิเตอร์สามตัวและส่งคืนสตริงที่ประกอบด้วยจำนวนอักขระที่แยกจากสตริงต้นทางโดยเริ่มต้นที่ตำแหน่งเริ่มต้นที่ระบุ (x) เมื่อตำแหน่งเป็นบวกฟังก์ชันจะนับจากจุดเริ่มต้นของสตริงเพื่อค้นหาอักขระตัวแรก เมื่อตำแหน่งเป็นลบฟังก์ชันจะนับถอยหลังจากจุดสิ้นสุดของสตริง

Answer(67): A. เนื่องจากต้อง จำกัด หมวดหมู่ FAMILY ก่อนจัดกลุ่มจึงต้องกรองแถวของตารางโดยใช้ WHERE clause ไม่ใช่ HAVING clause

Answer(68): B. NVL เป็นฟังก์ชันทั่วไปในการระบุค่าอื่นให้กับค่า NULL มันสามารถสร้างความแตกต่างในการคำนวณเลขคณิตโดยใช้ฟังก์ชันกลุ่ม AVG, STDDEV และ VARIANCE

Answer(69): C. เนื่องจากการรวมกันของรหัสงานและแผนกไม่ซ้ำกันจึงไม่มีรายการซ้ำกัน

Answer(70): A. ฟังก์ชัน LENGTH ให้ความยาวของสตริง