คำถามเกี่ยวกับการ จำกัด และการจัดเรียงข้อมูล

1. Which of the following clause is used to limit the number of rows retrieved from a SELECT query?

  1. LIMIT
  2. WHERE
  3. AND
  4. FROM

Answer: B. คำสั่ง WHERE ใช้เพื่อ จำกัด จำนวนแถวที่ส่งคืนจากแบบสอบถาม SELECT

2. Choose the database elements whose values can be compared in a WHERE clause of a SELECT query.

  1. Column
  2. Sequence
  3. Procedure
  4. Literal

Answer: A, D. คำสั่ง WHERE สามารถใช้เพื่อเปรียบเทียบค่าจากคอลัมน์ตัวอักษรฟังก์ชันเลขคณิตและฟังก์ชัน

3. What are the elements NOT contained in the WHERE clause predicate of the SELECT query?

  1. ตัวดำเนินการเปรียบเทียบ
  2. เงื่อนไขการเปรียบเทียบ
  3. ชื่อคอลัมน์
  4. ชื่อตาราง

Answer: D. ไม่จำเป็นต้องใช้ชื่อตารางในเพรดิเคตส่วนคำสั่ง WHERE

4. Which of the following values can NOT be returned after evaluation of WHERE clause condition?

  1. UNKNOWN
  2. TRUE
  3. FALSE
  4. NULL

Answer: A. ถ้าไม่ทราบผลลัพธ์ของเงื่อนไขในส่วนคำสั่ง WHERE ค่า NULL จะถูกส่งกลับ ในสถานการณ์อื่น ๆ จะส่งคืนค่า TRUE หรือ FALSE

5. What is the minimum number of WHERE clauses that must be present in a SELECT query?

  1. 1
  2. 2
  3. 0
  4. 3

Answer: C. WHERE clause เป็นอนุประโยคทางเลือกในแบบสอบถาม SELECT ซึ่งใช้เพื่อ จำกัด จำนวนแถวเท่านั้น

6. What is the maximum number of WHERE clauses that can be included in a SELECT query?

  1. 1
  2. 2
  3. 0
  4. 3

Answer: A. WHERE clause เป็นอนุประโยคทางเลือกในแบบสอบถาม SELECT ซึ่งสามารถใช้ได้เพียงครั้งเดียวเพื่อ จำกัด จำนวนแถว

7. Which of the following statements are correct about the WHERE clause?

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

Answer: C. WHERE clause ต้องมีตัวดำเนินการเปรียบเทียบเพื่อประเมินเงื่อนไข สามารถใช้ฟังก์ชันเป็นหนึ่งในตัวถูกดำเนินการได้ อนุญาตให้ใช้คำสั่ง WHERE เพียงคำสั่งเดียวในแบบสอบถาม SELECT

8. Write a SELECT query to list down unique departments from EMP table?

  1. SELECT deptno FROM emp;
  2. SELECT DISTINCT deptno FROM emp;
  3. SELECT DISTINCT (deptno) FROM emp;
  4. SELECT empno, DISTINCT deptno FROM emp;

Answer: B & C. คีย์เวิร์ด DISTINCT ใช้เพื่อกรองแถวที่ซ้ำกันออกจากคิวรี SELECT

9. Which of the following operations are permitted for date and timestamp columns?

  1. Division
  2. Addition
  3. Subtraction
  4. Concatenation

Answer: B, C, and D. การบวกการลบและการเชื่อมต่อเป็นการดำเนินการที่อนุญาตสำหรับคอลัมน์วันที่และการประทับเวลา

10. From the below operators, which one of them holds the highest precedence level?

  1. แผนก (/)
  2. การคูณ (*)
  3. วงเล็บ (())
  4. Subtraction

Answer: C. นิพจน์ภายในวงเล็บจะมีระดับความสำคัญสูงสุด

11. Interpret the output returned by the below SELECT query

SELECT ename, (sysdate - hiredate)
FROM emp;
  1. จำนวนวันในปีปัจจุบัน
  2. จำนวนวันในปีที่มีการจ้างพนักงาน
  3. จำนวนวันที่พนักงานใช้กับ บริษัท
  4. ข้อความค้นหาทำให้เกิดข้อยกเว้น "ORA-00932: ประเภทข้อมูลที่ไม่สอดคล้องกัน: NUMBER ที่คาดไว้ got DATE"

Answer: C. นิพจน์ (sysdate-hireate) ส่งคืนจำนวนวันจ้างงานของพนักงานกับ บริษัท

12. Which of the below statements correctly describle the DUAL table in Oracle?

  1. ตาราง DUAL เป็นตารางชั่วคราวในฐานข้อมูล Oracle
  2. ตาราง DUAL มีคอลัมน์ประเภทอักขระเพียงคอลัมน์เดียวที่เรียกว่า DUMMY
  3. ไม่สามารถทิ้งตาราง DUAL ที่เป็นของ SYS ได้
  4. ตารางที่มีชื่อ DUAL สามารถสร้างได้โดยผู้ใช้ในสคีมาของตัวเอง

Answer: B, C, D. ตาราง DUAL ใน Oracle เป็นของ SYS และมีคอลัมน์ DUMMY ประเภท VARCHAR2 (1) หนึ่งคอลัมน์

13. Determine the type of output returned by the below query

SELECT sysdate - hiredate
FROM emp
WHERE empno=7369;
  1. ประเภทข้อมูล DATE
  2. NUMBER ประเภทข้อมูล
  3. ชนิดข้อมูล VARCHAR2
  4. แบบสอบถามทำให้เกิดข้อผิดพลาดเนื่องจากไม่สามารถดำเนินการทางคณิตศาสตร์ในคอลัมน์วันที่

Answer: B. การลบระหว่างวันที่สองวันทำให้เกิดความแตกต่างของตัวเลขของวันระหว่างวันที่ทั้งสอง

14. Which expressions do NOT return NULL values?

  1. SELECT ((10 + 20) * 50) + null from dual;
  2. SELECT 'this is a '||null||'test with nulls' from dual;
  3. SELECT null/0 from dual;
  4. SELECT null||'test'||null as “Test” from dual;

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

15. Determine the output of the below query

SELECT 'Tutorial''s Point compiles technical tutorials' FROM DUAL;
  1. Tutorial''s Point รวบรวมบทเรียนทางเทคนิค
  2. Tutorial's Point รวบรวมบทเรียนด้านเทคนิค
  3. Point ของ 'Tutorial' รวบรวมบทเรียนทางเทคนิค '
  4. เพิ่มข้อยกเว้น "ORA-01756: สตริงที่ยกมาไม่ถูกยกเลิกอย่างถูกต้อง"

Answer: B.

16. Examine the TRAINING table as given below:

Name                                      Null?    Type
 ----------------------------------------- -------- -------------

 TRAINING_ID                               NOT NULL NUMBER(5)
 TRAINING_LOCATION                                  NUMBER(7,2)
 START_DATE                                         DATE
 END_DATE                                           DATE
SQL สองตัวใดจะดำเนินการสำเร็จ (เลือกสองข้อ)
  1. SELECT NVL (ADD_MONTHS (END_DATE,1),SYSDATE) FROM training;
  2. SELECT TO_DATE (NVL(SYSDATE-END_DATE,SYSDATE)) FROM training;
  3. SELECT NVL(MONTHS_BETWEEN(START_DATE,END_DATE),’In Progress’) FROM training;
  4. SELECT NVL(TO_CHAR(MONTHS_BETWEEN(START_DATE,END_DATE)),’In Progress’) FROM training;

Answer: A, D. ใช้ฟังก์ชัน NVL เพื่อระบุค่าทางเลือกให้กับคอลัมน์เมื่อ NULL

17. What does the selection of columns in a SELECT statement known as?

  1. Retrieval
  2. Selection
  3. Projection
  4. Limiting

Answer: C. การฉายภาพคือความสามารถในการเลือกเฉพาะคอลัมน์ที่ต้องการในคำสั่ง SELECT

18. What does the restriction of rows returned by a SELECT statement known as

  1. Retrieval
  2. Projection
  3. Restricting
  4. Selection

Answer: C. การ จำกัด คือความสามารถในการ จำกัด จำนวนแถวโดยใส่เงื่อนไขบางอย่าง

19. Which of the following is true about the query given below?

SELECT col1, col2 
FROM tab1
ORDER BY col1;
  1. แถวทั้งหมดสำหรับคอลัมน์ COL1 จะเรียงลำดับจากมากไปหาน้อย
  2. แถวทั้งหมดสำหรับคอลัมน์ COL1 จะเรียงลำดับจากน้อยไปมาก
  3. แบบสอบถามจะให้ข้อผิดพลาดเนื่องจากไม่มี WHERE อนุประโยคในแบบสอบถาม
  4. แบบสอบถามจะให้ข้อผิดพลาดเนื่องจากคำสั่ง ORDER BY ควรรวมคอลัมน์ทั้งหมดในอนุประโยค SELECT

Answer: B. ตามค่าเริ่มต้นคำสั่ง ORDER BY จะเรียงลำดับค่าจากน้อยไปหามาก

20. Which of the following is true about the SQL query given below?

SELECT col1,col2
FROM tab1
WHERE col1 = 'A'
ORDER BY col2 DESC, col1;
  1. จะแสดงแถวที่มีค่า col1 เป็น 'A' เรียงลำดับโดย col1 ตามลำดับจากมากไปหาน้อยจากนั้น col2 ตามลำดับจากมากไปหาน้อย
  2. คำสั่ง ORDER BY จะไม่ทำงานเนื่องจากคำหลัก DESC ควรเขียนไว้ท้ายคำสั่ง ORDER BY เสมอและไม่อยู่ระหว่างตามที่ระบุในแบบสอบถาม
  3. ข้อความค้นหาข้างต้นจะเรียงลำดับจากมากไปหาน้อยโดยพิจารณาจาก col2 เท่านั้นและการใช้ col1 ในคำสั่ง ORDER BY จะถูกละทิ้ง
  4. มันจะแสดงแถวที่มีค่า col1 เป็น 'A' สั่งโดย col1 แล้วตามด้วย col2 เมื่อการดำเนินการของคำสั่ง ORDER BY เกิดขึ้นจากลำดับของคอลัมน์ในคำสั่ง SELECT

Answer: C. เนื่องจาก COL1 ได้รับการกรองและแก้ไขในแบบสอบถามเป็นค่าสเกลาร์แล้วจึงไม่มีการเรียงลำดับเกิดขึ้นบนพื้นฐานของ COL1

21. What is true regarding the query given below?

SELECT col1, col2
FROM  tab1
ORDER BY col1,col2
WHERE col2 = 'B';
  1. มันดำเนินการสำเร็จ
  2. ให้ผลลัพธ์ที่ต้องการโดยมีค่า COL2 เป็น 'B' แต่ไม่มีการเรียงลำดับตามคอลัมน์ COL1 และ COL2 เนื่องจากคำสั่ง ORDER BY จะปรากฏก่อนส่วนคำสั่ง WHERE
  3. จะแสดงแถวที่มีค่า COL2 เป็น 'B' เรียงลำดับโดย COL1, COL2
  4. มันแสดงข้อผิดพลาดเนื่องจากไม่สามารถเขียนคำสั่ง ORDER BY ก่อนคำสั่ง WHERE ใน Oracle

Answer: D. คำสั่ง ORDER BY ต้องปรากฏหลัง WHERE clause ในคำสั่ง SELECT

22. Which two clauses of the SELECT statement are necessary for Selection and Projection?

  1. เลือกจาก
  2. สั่งซื้อได้ที่ไหน
  3. เลือกที่ไหน
  4. เลือกสั่งซื้อโดย

Answer: C.

23. Which of the following WHERE clauses will NOT fit in the below SELECT query?

SELECT ename, deptno, sal 
FROM emp;
  1. ตำแหน่งที่ได้รับการว่าจ้างใน ('02-Jun-2004 ');
  2. ขายที่ไหน ('1000', '4000', '2000');
  3. หางานที่ไหน (ขาย, พนักงาน);
  4. COMM ระหว่าง 0.1 และ 0.5;

Answer: C. ตัวอักษรต้องอยู่ในเครื่องหมายคำพูดเดียว

24. Choose the WHERE clause that extracts the DNAME values containing the character literal “er” from the DEPT table.

  1. ที่ไหน DNAME ใน ('% e% r');
  2. ที่ไหน DNAME เหมือน '% er%';
  3. ที่ไหน DNAME ระหว่าง 'e' และ 'r';
  4. ที่ DNAME ประกอบด้วย 'e% r';

Answer: B. ตัวดำเนินการ LIKE ใช้เพื่อทำการค้นหาไวลด์การ์ดในแบบสอบถาม SQL

25. Which two of the following conditions are equivalent to each other?

  1. comm เป็นโมฆะที่ไหน
  2. WHERE comm = NULL
  3. สื่อสารอยู่ที่ไหน (โมฆะ)
  4. ไม่อยู่ที่ไหน (comm ไม่เป็นโมฆะ)

Answer: A, D. ตัวดำเนินการ NOT สามารถใช้เพื่อลบล้างเอฟเฟกต์ของตัวถูกดำเนินการได้ ดังนั้น (COMM IS NULL) จึงเทียบเท่ากับ (NOT (COMM IS NOT NULL))

26. Which of the following clauses are mandatory in an SQL query?

  1. เลือกจาก
  2. SELECT,FROM,WHERE
  3. SELECT,WHERE
  4. เลือกที่ไหนสั่งซื้อโดย

Answer: A. SELECT และ FROM เป็นประโยคบังคับในแบบสอบถาม SELECT

27. Which three of the following WHERE clause conditions are equivalent to each other?

  1. WHERE SAL <= 5000 และ SAL> = 2000
  2. ขายที่ไหน (2000,3000,4000,5000)
  3. ขายที่ไหนระหว่างปี 2000 และ 5,000
  4. WHERE SAL> 1999 และ SAL <5001

Answer: A, C, D. เงื่อนไขสามารถทำได้เทียบเท่ากับการใช้ IN, BETWEEN และตัวดำเนินการเชิงสัมพันธ์

28. Which of the following is true with respect to the below query?

SELECT empno, ename, job
FROM emp
WHERE ename like '_ith%';
  1. มันดึงรหัสพนักงานชื่อและตำแหน่งงานของพนักงานที่มี 'ith' ปรากฏที่ใดก็ได้ในชื่อของพวกเขา
  2. จะดึงรหัสพนักงานชื่อและตำแหน่งงานของพนักงานที่มีชื่อขึ้นต้นด้วย 'ith'
  3. แบบสอบถามแสดงข้อผิดพลาดเนื่องจากสองนิพจน์สำหรับการจับคู่สตริงไม่สามารถเขียนร่วมกันได้
  4. จะดึงรหัสพนักงานชื่อและตำแหน่งงานของพนักงานที่ชื่อขึ้นต้นด้วยอักขระที่เป็นตัวอักษรและตัวเลขตามด้วย "ith" และอักขระที่เป็นตัวอักษรและตัวเลขหลัง "ith"

Answer: D.

29. Which of the following is used to end a SQL query?

  1. :
  2. ;
  3. .
  4. /

Answer: B, D. อัฒภาค (;) หรือแบ็กสแลช (/) ใช้เพื่อยุติการสืบค้นใน SQL * Plus และ SQL Developer

30. The employees JAMES and MILLER want to know their department id by querying the database. Which of the following queries will give the required result?

  1. SELECT ename, deptno FROM emp WHERE ename = 'JAMES';
  2. SELECT ename, deptno FROM emp WHERE ename = 'MILLER';
  3. SELECT ename, deptno FROM dept
  4. SELECT ename, deptno FROM emp WHERE ename = 'JAMES' OR ename = 'MILLER'

Answer: D.สามารถเข้าร่วมได้หลายเงื่อนไขโดยใช้ OR clause การดำเนินการค้นหาจะสำเร็จหากทั้งสองอย่างเป็นจริง

31. Which of the following is false regarding the WHERE clause?

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

Answer: C, D.

32. What is the default date format in Oracle?

  1. DD-MON-YY
  2. DD-MON-YYYY
  3. DD-MM-RR
  4. DD-MON-RR

Answer: D. DD-MON-RR เป็นรูปแบบวันที่เริ่มต้นใน Oracle

33. Predict the output of the below SQL query.

SELECT ename, deptno, sal, comm
FROM emp
WHERE job = 'SALES'
AND hiredate = ”01-JAN-97”;
  1. ดึงข้อมูลพนักงานสำหรับพนักงานฝ่ายขายทั้งหมด
  2. มันแสดงข้อผิดพลาด "ORA-00904:" 01-JAN-13 ": invalid identifier"
  3. การสืบค้นดำเนินการสำเร็จ แต่ไม่มีการส่งคืนผลลัพธ์
  4. ดึงข้อมูลของพนักงานฝ่ายขายทั้งหมดที่ได้รับการว่าจ้างเมื่อวันที่ 1 มกราคม 1997

Answer: B. ตัวอักษรวันที่ต้องอยู่ในเครื่องหมายคำพูดเดียว

34. You need to display the names of all the employees having the first name as "GARRY" from the EMPLOYEES table. Which of the following queries will fulfill the requirement?

  1. SELECT first_name FROM employees WHERE first_name LIKE 'GARRY%';
  2. SELECT first_name FROM employees WHERE first_name LIKE '%GARRY%';
  3. SELECT first_name FROM employees WHERE first_name LIKE 'GARRY';
  4. SELECT first_name FROM employees WHERE first_name LIKE '_ARRY%';

Answer: C. สามารถใช้การ์ดเสริมได้หากไม่ทราบอักขระบางตัวของสตริงการค้นหา

35. You need to display the employee ID of all the employees who contain a letter 's' in their last name at second position and department ID as 100. Which of the following queries will fetch the required results?

  1. SELECT emp_id FROM employees WHERE dept_id = 100 AND last_name LIKE '%s%';
  2. SELECT emp_id FROM employees WHERE dept_id = 100 AND last_name LIKE '%s_';
  3. SELECT emp_id FROM employees WHERE dept_id = 100 AND last_name LIKE '_s_%';
  4. SELECT emp_id FROM employees WHERE dept_id = 100 AND last_name LIKE '_s%';

Answer: D. อักขระตัวแทนขีดล่าง (_) ใช้แทนอักขระเดี่ยว

36. What will be the outcome of the below query?

SELECT first_name, last_name, dept_id 
FROM employees
WHERE hire_date LIKE '%98';
  1. ชื่อนามสกุลและรหัสแผนกสำหรับพนักงานทุกคนที่เข้าร่วมในปี 2541 จะปรากฏขึ้น
  2. ชื่อนามสกุลและรหัสแผนกสำหรับพนักงานทุกคนที่เข้าร่วมในปี 2541 จะปรากฏขึ้น
  3. จะไม่มีการส่งคืนผลลัพธ์
  4. ชื่อนามสกุลและรหัสแผนกสำหรับพนักงานทุกคนที่เข้าร่วมในปี 2541 ระหว่างวันที่ 1 มกราคม 2541 ถึงวันที่ 31 ธันวาคม 2541 จะปรากฏขึ้น

Answer: D. ตัวดำเนินการ LIKE ใช้เพื่อค้นหาสัญลักษณ์แทนบนอักขระและตัวอักษรวันที่

37. Which of the following is used to get rows based on a range of values?

  1. ยูเนี่ยนทั้งหมด
  2. IN
  3. BETWEEN
  4. LIKE

Answer: C. ตัวดำเนินการ BETWEEN ใช้เพื่อดึงข้อมูลแถวตามช่วงของค่า

38. You need to display the employee IDs of the employees who have their salaries between 20000 (inclusive) and 50000(inclusive). Which of the following queries will fetch the required results?

  1. SELECT emp_id FROM employees WHERE salary >=20000 AND salary <=50000;
  2. SELECT emp_id FROM employees WHERE salary IN (20000, 50000);
  3. SELECT emp_id FROM employees WHERE salary >20000 AND salary <50000;
  4. SELECT emp_id FROM employees WHERE salary between 20000 AND 50000;

Answer: A, D. สำหรับช่วงค่าที่มากขึ้นระหว่างตัวดำเนินการและตัวดำเนินการเชิงสัมพันธ์จะเหมาะสมที่สุดในการสืบค้น ไม่แนะนำให้ใช้ตัวดำเนินการ IN สำหรับค่าที่หลากหลาย

39. What is true with respect to the below query?

SELECT first_name, last_name 
FROM employees 
WHERE last_name BETWEEN 'B%' AND 'E%';
  1. จะแสดงชื่อพนักงานทั้งหมดที่มีนามสกุลขึ้นต้นด้วยตัวอักษร 'B' จนถึง 'E' รวมถึง B และไม่รวม E
  2. มันจะทำให้เกิดข้อผิดพลาดเนื่องจาก BETWEEN สามารถใช้ได้กับ Numbers เท่านั้นไม่ใช่สตริง
  3. จะแสดงชื่อพนักงานทั้งหมดที่มีนามสกุลเริ่มต้นจาก 'B' และลงท้ายด้วย 'E'
  4. จะแสดงชื่อพนักงานทั้งหมดที่มีนามสกุลในช่วงของตัวอักษรเริ่มต้นเป็น 'B' และ 'E' โดยไม่รวมชื่อที่ขึ้นต้นด้วย 'B' และ 'E'

Answer: A. ตัวดำเนินการ BETWEEN ทำงานกับช่วงของค่าอักขระด้วย

40. What will be the outcome of the query mentioned below?

SELECT employee_id, last_name, first_name, salary, manager_id 
FROM employees 
WHERE manager_id IN (200,100,300);
สั่งซื้อโดย manager_id ASC;
  1. จะแสดงพนักงานทั้งหมดที่อยู่ภายใต้ผู้จัดการที่มี ID อยู่ในช่วงเริ่มต้นตั้งแต่ 100 ถึง 300
  2. จะแสดงพนักงานทุกคนที่อยู่ภายใต้ผู้จัดการที่มีรหัส 100, 200 หรือ 300
  3. จะทำให้เกิดข้อผิดพลาดเนื่องจากควรใส่รหัสผู้จัดการในเครื่องหมายคำพูด
  4. จะทำให้เกิดข้อผิดพลาดเนื่องจากการเรียงลำดับของ manager_id ในส่วนคำสั่ง WHERE ขัดแย้งกับคำสั่ง ORDER BY

Answer: B. ตัวดำเนินการ IN สามารถใช้เพื่อระบุช่วงที่มีขนาดเล็กและมีจำนวน จำกัด

41. Which of the following clause defines a Membership condition?

  1. BETWEEN
  2. LIKE
  3. เป็นโมฆะ
  4. ใน (ไม่ได้อยู่ใน)

Answer: D. ตัวดำเนินการ IN กำหนดเงื่อนไขการเป็นสมาชิกซึ่งอาจใช้ช่วงของค่าหรือแบบสอบถามย่อย

42. Which of the following data types can be used within IN operator?

  1. VARCHAR2
  2. NUMBER
  3. DATE
  4. ALL

Answer: D. ตัวดำเนินการ IN ทำงานกับค่าทุกประเภท

43. You need to display the list of all the employees whose first name starts with “Bryan” or “Jason”. Which of the following queries will fulfill the requirement?

  1. SELECT emp_id, last_name, first_name FROM employees WHERE first_name LIKE 'Bryan%' OR first_name LIKE 'Jason%';
  2. SELECT emp_id, last_name, first_name FROM employees WHERE first_name BETWEEN 'Bryan' and 'Jason' ;
  3. SELECT emp_id, last_name, first_name FROM employees WHERE first_name IN ('Bryan', 'Jason');
  4. SELECT emp_id, last_name, first_name FROM employees WHERE first_name = 'Bryan' OR first_name = 'Jason'

Answer: C, D. ตัวดำเนินการ IN จะตรวจสอบค่าใด ๆ ที่กำหนดเป็นเงื่อนไขการเป็นสมาชิก

44. You need to extract details of those departments whose name contains the string '_DXX'. Which of the below WHERE clauses could be used in the SELECT statement to get the required output?

  1. ที่ไหน dept_id LIKE '% _DXX%' ESCAPE '_'
  2. ที่ไหน dept_id ชอบ '% \ _ DXX%' ESCAPE '\'
  3. ที่ไหน dept_id LIKE '% _D123%' ESCAPE '% _'
  4. ที่ไหน dept_id ชอบ '% \ _ D123%' ESCAPE '\ _'

Answer: B.

45. Which statement is true regarding the default behavior of the ORDER BY clause?

  1. ในการจัดเรียงอักขระค่าจะคำนึงถึงตัวพิมพ์เล็กและใหญ่
  2. ค่า NULL จะไม่พิจารณาเลยโดยการดำเนินการจัดเรียง
  3. เฉพาะคอลัมน์ที่ระบุในรายการ SELECT เท่านั้นที่สามารถใช้ได้ในคำสั่ง ORDER BY
  4. ค่าตัวเลขจะแสดงจากค่าสูงสุดถึงค่าต่ำสุดหากมีตำแหน่งทศนิยม

Answer: A. คำสั่ง ORDER BY ทำการเรียงลำดับตามตัวพิมพ์เล็กและใหญ่ด้วยค่าอักขระ

46. You need to generate a report of all employees from the EMPLOYEES table based on the following conditions: 1. The Employee first name should not begin with 'T' or 'N'. 2. The Employee's salary should be more than 20000. 3. The Employee should have been hired after 1st January 2010. Which WHERE clause would give the required result?

  1. โดยที่ first_name ไม่ชอบ 'T%' หรือ first_name ไม่ชอบ 'N%' และเงินเดือน> 20000 และวันที่จ้าง> '1-JAN-10'
  2. WHERE (ชื่อแรกไม่เหมือน 'T%' และชื่อแรกไม่เหมือน 'N%') หรือเงินเดือน> 20000 หรือวันที่จ้าง> '1-JAN-10'
  3. โดยที่ first_name ไม่ชอบ 'T%' และ first_name ไม่ชอบ 'N%' และเงินเดือน> 20000 และ hire_date> '1-JAN-10'
  4. WHERE (ชื่อแรกไม่เหมือน '% T%' หรือชื่อแรกไม่ชอบ '% N%') และ (เงินเดือน> 20000 และวันที่จ้าง> '1-JAN-10')

Answer: C.

47. Using the EMPLOYEES table, you need to display the names of all employees hired after January 1, 2013, starting with the freshers. Which query would give the required result? (Choose all that apply.)

  1. SELECT first_name, hire_date FROM employees WHERE hire_date > '01-JAN-13' ORDER BY 2 DESC;
  2. SELECT first_name, hire_date FROM employees WHERE hire_date > '01-JAN-13' ORDER BY first_name DESC;
  3. SELECT first_name, hire_date FROM employees WHERE hire_date > '01-JAN-13' ORDER BY 1 DESC;
  4. SELECT first_name, hire_date "START DATE" FROM employees WHERE hire_date > '01-JAN-13' ORDER BY "START DATE" DESC;

Answer: A, D.

48. Using the EMPLOYEES table, you need to find out the names and salaries of all the employees hired in departments 100 and 101 in the time interval 15th March '12 to 15th October '13. Which two queries would give the required result? (Choose two.)

  1. SELECT first_name, salary FROM employees WHERE dept_id IN (100,101) AND hire_date BETWEEN '15-MAR-12' AND '15-OCT-12';
  2. SELECT first_name, salary FROM employees WHERE dept_id = 100 OR dept_id =101 AND hire_date >='15-MAR-12' OR hire_date <='15-OCT-12';
  3. SELECT first_name, salary FROM employees WHERE (dept_id BETWEEN 100 AND 101) AND (hire_date IN ('15-MAR-12','15-OCT-12'));
  4. SELECT first_name, salary FROM employees WHERE (dept_id = 100 OR dept_id =101) AND (hire_date >='15-MAR-12' AND hire_date <='15-OCT-12');

Answer: A, D.

49. Using the EMPLOYEES table, you issue the following query to generate the names, current salary and the salary increased after an appraisal by 25%. The increased salary for all the employees should be above 30000.

SELECT first_name, salary,
salary + (salary *0.25) "INCREASED_SALARY"
FROM employees
WHERE increased_salary >30000;

แบบสอบถามแสดงข้อผิดพลาด ORA-00904 สาเหตุของข้อผิดพลาดคืออะไร?

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

Answer: C. ไม่สามารถใช้นามแฝงคอลัมน์ในเงื่อนไข WHERE clause ได้ แต่สามารถใช้ในคำสั่ง SELECT และ ORDER BY clause

50. You need to display employee names from the EMPLOYEES table that belong to the Department id 100 with minimum salary as either 2000 or 4000 and no job_id. You issue the following query.

SELECT first_name, dept_id, salary
FROM employees
WHERE dept_id = 100 AND (salary = 2000 OR salary = 4000) 
AND job_id <> '';

Which statement is true regarding the above query?

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

Answer: A. เงื่อนไข (เงินเดือน = 2000 หรือเงินเดือน = 4000) ส่งผลให้เป็นเท็จเนื่องจากพนักงานไม่สามารถรับเงินเดือนหลายครั้งได้

51. Which three tasks can be performed using SQL functions built into Oracle Database? (Choose three.)

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

Answer: A, B, C. ใช้ฟังก์ชันการจัดรูปแบบ (TO_CHAR, TO_DATE) และฟังก์ชันอักขระ (LENGTH, REPLACE) เพื่อให้บรรลุวัตถุประสงค์

52. You need to generate a report that displays the IDs of all employees in the EMPLOYEES table whose salary is at least 25% more than the value 20000. The details should be displayed in the descending order of the salary. You issue the following query.

SELECT emp_id
FROM employees
WHERE salary>=20000*0.25 
ORDER BY salary*0.25 DESC;

Which statement is true regarding the above query?

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

Answer: A. คำสั่ง ORDER BY สามารถมีนิพจน์คอลัมน์

53. Examine the structure and data of the TRAININGS table:

Name                                      Null?    Type
 ----------------------------------------- -------- -------------

 TRAINING_ID                               NOT NULL NUMBER(5)
 TRAINING_LOCATION                                  NUMBER(7,2)
 START_DATE                                         DATE
 END_DATE                                           DATE
TRAINING_ID      START_DATE                      TRAINING_COST
------ ---------------- -------------------------------------------------
11 	                 01-JAN-10 			1000
22 		  01-FEB-10 			2000
33 		  01-MAR-10 			3000

Dates are stored in the default date format dd-mon-rr in the TRAININGS table. Which three SQL statements would execute successfully? (Choose three.)

  1. SELECT start_date + '10' FROM trainings;
  2. SELECT * FROM trainings WHERE start_date = '01-01-10';
  3. SELECT training_cost FROM trainings WHERE training_id > '11';
  4. SELECT * FROM trainings WHERE start_date ='01-JANUARY-10';

Answer: A, C, D.

54. Which of the following statements is/are true with respect to the below query?

SELECT emp_id, first_name 
FROM employees
ORDER BY dept_id;
  1. ORDER BY clause ควรมีเฉพาะคอลัมน์ที่อยู่ในคำสั่ง SELECT
  2. แบบสอบถามข้างต้นจะเรียงลำดับผลลัพธ์ที่ตั้งไว้จากมากไปหาน้อย
  3. ORDER BY clause สามารถมีคอลัมน์ใดก็ได้ในตารางที่เกี่ยวข้องไม่จำเป็นต้องเป็นคอลัมน์ในคำสั่ง SELECT
  4. มันแสดงข้อผิดพลาดในการดำเนินการ

Answer: C. คำสั่ง ORDER BY สามารถใช้คอลัมน์เพื่อเรียงลำดับข้อมูลที่ไม่ได้เลือกไว้ในรายการคอลัมน์ แต่มีอยู่ในตารางที่ใช้ในส่วนคำสั่ง FROM

55. Which feature of ORDER BY clause is demonstrated in the below query?

SELECT emp_id, first_name “EmpName”
FROM employees
ORDER BY "EmpName";
  1. ORDER BY clause ควรมีเฉพาะคอลัมน์ที่อยู่ในคำสั่ง SELECT
  2. ข้อความค้นหาข้างต้นจะเรียงลำดับผลลัพธ์ที่ตั้งไว้ตามลำดับชื่อของพนักงานจากมากไปหาน้อย
  3. ORDER BY clause ทำงานร่วมกับชื่อแทนคอลัมน์
  4. แบบสอบถาม SELECT แสดงข้อผิดพลาดในการดำเนินการเนื่องจากไม่สามารถใช้นามแฝงคอลัมน์ในคำสั่ง ORDER BY

Answer: C. คำสั่ง ORDER BY ทำงานได้ดีกับนามแฝงคอลัมน์ที่ใช้ในคำสั่ง SELECT

56. What is true about the query given below?

SELECT last_name, job_id, department_id, hire_date 
FROM employees
ORDER BY 2;
  1. ดำเนินการจัดเรียงผลลัพธ์การสืบค้นได้สำเร็จโดยยึดตาม JOB_ID
  2. คำสั่ง ORDER BY ต้องไม่มีตัวเลข
  3. คำสั่ง ORDER BY จะไม่ทำงานเนื่องจากไม่มีคอลัมน์ใดในคำสั่ง SELECT ที่ใช้ในคำสั่ง ORDER BY
  4. แบบสอบถามแสดงข้อผิดพลาดในการดำเนินการ

Answer: A. สามารถใช้ตำแหน่งตัวเลขของคอลัมน์ในคำสั่ง ORDER BY

57. You need to list the employees details for different jobs but only one at a time.

SELECT emp_id, first_name, last_name FROM employees WHERE job_id....;

Which of the following is an easier way to achieve the same in SQL* Plus?

  1. แทนที่ Job Id แต่ละครั้ง
  2. ใช้ * เพื่อแสดงรายละเอียดของพนักงานทั้งหมด
  3. ใช้ & JOB เพื่อแจ้งให้ผู้ใช้ป้อนข้อมูลทุกครั้งที่ดำเนินการสืบค้น
  4. ประกาศตัวแปรเซสชันเพื่อแทนค่า Job Id ในแบบสอบถาม

Answer: C. สัญกรณ์ & X จะทำให้การดำเนินการสืบค้นและพร้อมต์ให้ผู้ใช้ป้อนข้อมูลทุกครั้งที่ดำเนินการสืบค้น

58. Which of the following statements is true regarding substitution variables in SQL?

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

Answer: A.

59. Which of the following data type is assigned to Substitution variables?

  1. VARCHAR2
  2. DATE
  3. ไม่มีประเภทข้อมูล
  4. NUMBER

Answer: C. ตัวแปรการแทนที่ไม่มีประเภทข้อมูลเป็นของตัวเอง แต่สอดคล้องกับประเภทข้อมูลของคอลัมน์ที่พวกเขาใช้

60. Which among the following is true about substitution variables?

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

Answer: D.

61. Which of the following is a correct syntax for Substitution variables in SQL* Plus?

  1. :var
  2. $var
  3. &var
  4. &&var

Answer: C, D.

62. Which of the following Substitution variables will take the entered value once and then keeps it for the rest of the session?

  1. &&var
  2. &var
  3. :var
  4. ::var

Answer: A. ตัวแปรการแทนที่ด้วยเครื่องหมายแอมเปอร์คู่และใช้ค่าที่ผู้ใช้ระบุซ้ำ ๆ

63. Which of the following is true about substitution variables?

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

Answer: C.

64. What is true about the query given below?

SELECT first_name, last_name, employee_id, salary 
FROM employees 
WHERE employee_id = &eid;
  1. มันแสดงข้อผิดพลาด "ORA-00904:" & eid ": invalid identifier"
  2. มันดำเนินการสำเร็จ
  3. คำสั่ง WHERE ไม่สามารถมีตัวแปรทดแทนได้
  4. แบบสอบถามแจ้งให้ป้อนค่าสำหรับตัวแปร & eid และดำเนินการสำเร็จโดยใช้ค่าที่ถูกต้องของพนักงาน_id

Answer: B, D.

65. Choose the statements which hold true about the query given below.

SELECT first_name, last_name, &&prompt_col 
FROM employees
ORDER BY &&promp_col;
  1. มันแสดงข้อผิดพลาดเนื่องจากไม่อนุญาตให้ใช้ตัวแปรการแทนที่ prompt_col
  2. ดำเนินการสำเร็จ แต่ชุดผลลัพธ์ไม่ได้เรียงลำดับ
  3. ดำเนินการสำเร็จ แต่ค่าตัวแปรที่ป้อนในคำสั่ง SELECT จะถูกละเว้น
  4. ดำเนินการสำเร็จและค่าของตัวแปรการทดแทนจะถูกคงไว้ตลอดทั้งเซสชัน

Answer: D. สามารถใช้ตัวแปรทดแทนในทุกประโยคของแบบสอบถาม SQL

66. Which of the following commands is used to create and assign a value to a substitution variable in SQL* Plus?

  1. &var
  2. &&var
  3. SET
  4. DEFINE

Answer: D. ใช้คำสั่ง DEFINE ใน SQL * Plus เพื่อประกาศตัวแปรการทดแทนในเซสชัน

67. What will be the outcome of the below activity in SQL* Plus?

DEFINE eid = 117 

SELECT first_name, last_name, employee_id, salary 
FROM employees 
WHERE employee_id = &eid;
  1. แบบสอบถาม SELECT แสดงข้อผิดพลาดเนื่องจากไม่สามารถกำหนดตัวแปรทดแทนในเซสชันได้
  2. จะแจ้งให้ผู้ใช้ป้อนค่าสำหรับตัวแปร & eid
  3. ดำเนินการสำเร็จด้วยรหัสพนักงานแทนที่ 117
  4. มันละเว้นคำสั่ง DEFINE เนื่องจากตัวแปรการทดแทนถูกประกาศโดยไม่มีเครื่องหมายแอมเพอร์แซนด์ (&)

Answer: C.

68. What is the command to remove the value of the substitution variable set by the command DEFINE?

  1. UNDEFINE
  2. ปิดเครื่อง
  3. DELETE
  4. CLEAR

Answer: A. ใช้คำสั่ง UNDEFINE เพื่อลบตัวแปรการแทนที่ออกจากเซสชัน

69. Which of the following commands is used to check the substitution variables values before and after execution of an SQL query?

  1. DEFINE
  2. UNDEFINE
  3. แสดงความหลากหลาย
  4. VERIFY

Answer: D.ใช้คำสั่ง VERIFY ใน SQL * Plus และ SQL Developer เพื่อตรวจสอบการแทนที่ค่าโดยใช้ตัวแปรทดแทน

70. Which of the following are valid operators for the WHERE clause?

  1. >=
  2. เป็นโมฆะ
  3. !=
  4. ก็เหมือน

Answer: A, B, C.

71. Evaluate the following query:

SELECT ename || q'{'s salary is }' || sal
AS "Salary"
FROM emp;
จะเกิดอะไรขึ้นเมื่อดำเนินการค้นหาข้างต้น
  1. ให้ข้อผิดพลาดเนื่องจากไม่สามารถใช้วงเล็บปีกกากับตัวดำเนินการ [q] ได้
  2. ให้ข้อผิดพลาดเนื่องจากชนิดข้อมูลไม่ตรงกัน
  3. ดำเนินการสำเร็จและเพิ่มเครื่องหมายวรรคตอนต่อท้ายชื่อพนักงานแต่ละคน
  4. ดำเนินการสำเร็จและต่อท้ายชื่อพนักงานด้วยตัวอักษร "{'s start date was}"

Answer: C.

72. Which of the below WHERE clause predicates will correctly list the employees from department 20?

  1. ที่ไหน deptno คือ 20
  2. ที่ไหน deptno 20
  3. ที่ไหน deptno = 20
  4. ที่ไหน 20 = deptno

Answer: C, D. ตัวดำเนินการความเท่าเทียมกัน (=) ใช้เพื่อเปรียบเทียบตัวถูกดำเนินการในเงื่อนไขสำหรับความเท่าเทียมกัน

73. Write a SELECT query to list the employees whose salary is greater than 1000.

  1. SELECT ename, sal FROM emp WHERE sal GREATER THAN 1000
  2. SELECT ename, sal FROm emp WHERE sal > 1000
  3. SELECT ename, sal FROM emp WHERE sal >= 1000
  4. SELECT ename, sal FROM emp WHERE sal MORE THAN 1000

Answer: B. ตัวดำเนินการมากกว่า (>) ถูกใช้เพื่อเปรียบเทียบตัวถูกดำเนินการในเงื่อนไข

74. What would happen when the below query is executed in SQL* Plus?

SELECT ename, sal, deptno
FROM emp
WHERE sal/10 > deptno*10;
  1. ดำเนินการสำเร็จและแสดงรายชื่อพนักงานที่มีเงินเดือนส่วนที่ 10 มากกว่า 10 เท่าของจำนวนแผนกของเขา
  2. เพิ่มข้อผิดพลาดเนื่องจากนิพจน์ต้องอยู่ในวงเล็บ
  3. ทำให้เกิดข้อผิดพลาดเนื่องจาก WHERE clause ไม่สามารถประเมินนิพจน์
  4. ทำให้เกิดข้อผิดพลาดเนื่องจาก WHERE clause ไม่สามารถใช้ตัวอักษรได้

Answer: A. WHERE clause สามารถมีนิพจน์

75. Determine the error in the below SELECT statement

SELECT ename, deptno, sal
FROM emp
WHERE job=CLERK;
  1. WHERE clause ไม่สามารถอ้างถึง JOB ของคอลัมน์ได้เนื่องจากไม่ปรากฏในรายการคอลัมน์ SELECT
  2. CLERK ตามตัวอักษรต้องอยู่ในเครื่องหมายคำพูดเดี่ยว
  3. CLERK ตามตัวอักษรต้องอยู่ในวงเล็บ
  4. ไม่มีข้อผิดพลาดในแบบสอบถาม

Answer: B. ตัวอักษรต้องอยู่ในเครื่องหมายคำพูดเดียว

76. Interpret the output of the below SQL query

SELECT ename, deptno, sal
FROM emp
WHERE sysdate-hiredate > 100;
  1. แบบสอบถามจะแสดงรายการพนักงานที่ได้รับการว่าจ้างอย่างน้อย 100 วันก่อนหน้าวันที่ปัจจุบัน
  2. ข้อความค้นหาจะแสดงรายชื่อพนักงานที่ทำงานใน บริษัท มากกว่า 100 วัน
  3. แบบสอบถามจะแสดงรายการพนักงานที่ได้รับการว่าจ้างหลังจาก 100 วันในปีนั้น
  4. แบบสอบถามจะแสดงรายชื่อพนักงานที่ใช้เวลาน้อยกว่า 100 วันใน บริษัท

Answer: A, B. สามารถใช้นิพจน์วันที่ในส่วนคำสั่ง WHERE

77. Which of the following query will display the employees which are hired after 31st Decemeber, 1982?

  1. SELECT ename, deptno FROM emp WHERE hiredate > '31-DEC-1982';
  2. SELECT ename, deptno FROM emp WHERE hiredate > to_date('31-DEC-1982','DD-MM-YYYY');
  3. SELECT ename, deptno FROM emp WHERE hiredate > to_char('31-DEC-1982','DD-MM-YYYY');
  4. SELECT ename, deptno FROM emp WHERE hiredate > 31-DEC-1982;

Answer: A, B. ตัวอักษรวันที่ต้องอยู่ในเครื่องหมายคำพูดเดียว

78. Which of the following WHERE conditions will list employees who were hired on current date?

  1. โดยที่ sysdate-hireate = 0
  2. WHERE sysdate = ได้รับการว่าจ้าง
  3. สถานที่ที่ได้รับการว่าจ้างจาก sysdate <1
  4. WHERE to_date (sysdate, 'DD-MON-YYYY') = to_date (ว่าจ้าง = 'DD-MON-YYYY')

Answer: C, D. เงื่อนไข SYSDATE = HIREDATE จะไม่ทำงานเนื่องจาก SYSDATE มีองค์ประกอบการประทับเวลาแบบไดนามิกในขณะที่การว่าจ้างเป็นค่าคงที่ในฐานข้อมูล

79. What of the following are the valid formats of date literals which can be used in WHERE clause?

  1. 24/Mar/95
  2. 02-12-1983
  3. 19-JUN-2001
  4. 31.04.2010

Answer: A, C. รูปแบบเริ่มต้นสำหรับตัวอักษรวันที่คือ DD-MON-RR