คำถามคำสั่ง SQL SELECT
1. Identify the capabilities of SELECT statement.
- Projection
- Selection
- การควบคุมข้อมูล
- Transaction
Answer: A, B. คำสั่ง SELECT สามารถใช้สำหรับการเลือกการฉายภาพและการเข้าร่วม
2. Determine the capability of the SELECT statement demonstrated in the given query.
SELECT e.ename, d.dname
FROM emp e, dept d
WHERE e.deptno = d.deptno
AND e.sal > 1000;
- Selection
- Filtering
- Joining
- Projection
Answer: A, C, D.การฉายภาพจะรวมเฉพาะคอลัมน์ที่ต้องการในคิวรีในขณะที่ Selection กำลังเลือกเฉพาะข้อมูลที่ต้องการ การเข้าร่วมหมายถึงการรวมสองตารางเข้าด้วยกันผ่านคอลัมน์เชื่อมต่อ
3. Which of the following clause is used to suppress duplicates in a SELECT statement?
- INTERSECT
- DUPLICATE
- DISTINCT
- UNIQUE
Answer: C, D. ข้อมูลที่ซ้ำกันสามารถถูก จำกัด ได้โดยใช้ DISTINCT หรือ UNIQUE ในคำสั่ง SELECT
4. Chose the statements which correctly specify a rule to write a SQL statement
- คำสั่ง SQL คำนึงถึงขนาดตัวพิมพ์
- คำหลักสามารถย่อเพื่อสร้างมาตรฐาน
- คำสั่ง SQL เป็นตัวพิมพ์เล็กและใหญ่
- ต้องวางอนุประโยคไว้ด้วยกัน
Answer: C.คำสั่ง SQL ไม่คำนึงถึงขนาดตัวพิมพ์
5. Determine the output of the below query -
SELECT '5+7'
FROM dual;
- 12
- 5+7
- 5
- 7
Answer: B.Oracle ถือว่าค่าภายในอัญประกาศคู่เป็นนิพจน์สตริง
6. Write a query to display employee details (Name, Department, Salary and Job) from EMP table.
SELECT ename, deptno, sal, job FROM emp;
SELECT * FROM emp;
SELECT DISTINCT ename, deptno, sal, job FROM emp;
SELECT ename, deptno, sal FROM emp;
Answer A.เลือกสิ่งที่ต้องการจากตารางแต่ละตารางคั่นด้วยลูกน้ำ
7. Which of the below queries displays employees' name and new salary after the increment of 1000?
SELECT ename, sal FROM emp;
SELECT ename, sal=sal+1000 FROM emp;
SELECT ename, sal+1000 FROM emp;
SELECT ename, 1000 FROM emp;
Answer: C. การคำนวณทางคณิตศาสตร์พื้นฐานสามารถทำได้โดยใช้คอลัมน์ในคำสั่ง SELECT
8. Determine the output of the below query
SELECT 36/2-5*10 FROM dual;
- 130
- -32
- -120
- 175
Answer: B. การคูณและการหารเกิดขึ้นก่อนการบวกและการลบ
9. Determine the output of the below query
SELECT (100-25)/15*(20-3) FROM dual;
- 0.294
- -85
- 63.67
- 85
Answer: D. นิพจน์ภายในวงเล็บจะดำเนินการก่อนการหารและการคูณในนิพจน์
10. Chose the statements which correctly define a NULL value.
- NULL เป็นค่าพิเศษที่มีศูนย์ไบต์
- NULL ไม่ใช่ค่าหรือค่าที่ไม่รู้จัก
- NULL แสดงด้วยช่องว่าง
- NULL ไม่เหมือนกับศูนย์
Answer: B, D.NULL ไม่ใช่ค่า แต่ไม่เหมือนกับอักขระศูนย์หรือว่างหรือเว้นวรรค
11. Determine the output of the below query
SELECT sal + NULL
FROM emp
WHERE empno = 7369;
- sal + NULL
- NULL
- 0
- 1250
Answer: B. การคำนวณทางคณิตศาสตร์ใด ๆ ที่มี NULL จะให้ผลลัพธ์เป็น NULL
12. Which of the below statements define column alias correctly?
- นามแฝงของคอลัมน์จะเปลี่ยนชื่อส่วนหัวของคอลัมน์
- นามแฝงของคอลัมน์คือคอลัมน์ทางเลือกในตาราง
- สามารถระบุนามแฝงของคอลัมน์ได้ในระหว่างการกำหนดตาราง
- นามแฝงของคอลัมน์จะตามหลังคอลัมน์หรือนิพจน์ทันทีในคำสั่ง SELECT
Answer: A, D. Column Alias สามารถใช้เพื่อตั้งชื่อนิพจน์ในคำสั่ง SELECT
13. Specify the column alias NEWSAL for the expression containing salary in the below SQL query
SELECT ename, job, sal + 100 FROM emp;
- (sal + 100) เป็นข่าว
- (sal + 100) ข่าว
- (sal + 100) เป็นข่าว
- sal + 100 เป็นข่าว
Answer: A, B.ใช้ 'AS' เพื่อแสดงนามแฝงใหม่ให้กับนิพจน์คอลัมน์
14. Specify the column alias "New Salary" for the expression containing salary in the below SQL query
SELECT ename, job, sal + 100 FROM emp;
- (sal + 100) เป็นเงินเดือนใหม่
- (sal + 100) "เงินเดือนใหม่"
- (sal + 100) เป็นเงินเดือนใหม่
- sal + 100 เป็น "เงินเดือนใหม่"
Answer: B, D. นามแฝงคอลัมน์ที่มีช่องว่างและอักขระพิเศษจะต้องถูกใส่ไว้ในเครื่องหมายคำพูดคู่
15. Which command is used to display the structure of a table?
- LIST
- SHOW
- DESCRIBE
- STRUCTURE
Answer: C.DESCRIBE ใช้เพื่อแสดงโครงสร้างตาราง
16. Predict the output when below statement is executed in SQL* Plus?
DESC emp
- เพิ่มข้อผิดพลาด "SP2-0042: คำสั่งที่ไม่รู้จัก" desc emp "- ส่วนที่เหลือของบรรทัดละเว้น"
- แสดงรายการคอลัมน์ของตาราง EMP
- แสดงรายการคอลัมน์ตาราง EMP ประเภทข้อมูลและความว่างเปล่า
- แสดงรายการคอลัมน์ของตาราง EMP พร้อมกับชนิดข้อมูล
Answer: C. DESCRIBE ใช้เพื่อแสดงโครงสร้างตารางพร้อมกับคอลัมน์ของตารางชนิดข้อมูลและค่าว่าง
17. Which of the below statements are true about the DESCRIBE command?
- สามารถใช้ได้ใน SQL * Plus เท่านั้น
- สามารถใช้ได้ทั้งใน SQL * Plus และ SQL Developer
- ใช้ไม่ได้กับตารางวัตถุ
- ใช้ไม่ได้กับตารางที่เป็นของ SYS
Answer: B.
18. Which of the below alphanumeric characters are used to signify concatenation operator in SQL?
- +
- ||
- -
- ::
Answer: B.ใน SQL ตัวดำเนินการเรียงต่อกันจะแสดงด้วยแถบแนวตั้งสองแถบ (||)
19. Which of the below statements are correct about the usage of concatenation operator in SQL?
- สร้างคอลัมน์เสมือนในตาราง
- สร้างนิพจน์อักขระอันเป็นผลมาจากการต่อสตริงอย่างน้อยหนึ่งสตริง
- สร้างการเชื่อมโยงระหว่างคอลัมน์อักขระสองคอลัมน์
- สามารถใช้เพื่อเชื่อมนิพจน์วันที่กับคอลัมน์อื่น ๆ
Answer: B, D. ตัวดำเนินการเชื่อมต่อรวมสองค่าเป็นนิพจน์
20. Predict the output of the below query
SELECT ename || NULL
FROM emp
WHERE empno = 7369
- SMITH
- SMITH NULL
- SMITHNULL
- ORA-00904: "NULL": ตัวระบุที่ไม่ถูกต้อง
Answer: A. การเชื่อมต่อกับผลลัพธ์ NULL เป็นค่าเดียวกัน
21. Predict the output of the below query
SELECT 50 || 0001
FROM dual
- 500001
- 51
- 501
- 5001
Answer: C. ศูนย์นำหน้าในตัวถูกดำเนินการทางขวาจะถูกละเว้นโดย Oracle
22. You execute the below query
SELECT e.ename||' departments's name is:'|| d.dname
FROM emp e, dept d
where e.deptno=d.deptno;
And get the exception - ORA-01756: quoted string not properly terminated. Which of the following solutions can permanently resolve the problem?
- ใช้เครื่องหมายอัญประกาศคู่สำหรับสตริงอักขระตามตัวอักษร
- ใช้ตัวดำเนินการ [q] เพื่อกำหนดสตริงอักขระตามตัวอักษรและเลือกตัวคั่นที่ต้องการ
- ลบเครื่องหมายอัญประกาศเดี่ยว (อะโพสทรอฟี) ออกจากสตริงอักขระตามตัวอักษร
- ใช้ตัวคั่นอื่นเพื่อข้ามเครื่องหมายวรรคตอนอัญประกาศเดี่ยวในสตริงตัวอักษร
Answer: B. ตัวดำเนินการ [q] ใช้เพื่อกำหนดค่าตัวอักษรด้วยเครื่องหมายคำพูด
23. Which of the below SELECT statement shows the correct usage of [q] operator?
SELECT e.ename || q'[department's name is]'|| d.dname FROM emp e, dept d WHERE e.deptno = d.deptno;
SELECT e.ename || q['department's name is']|| d.dname FROM emp e, dept d WHERE e.deptno = d.deptno;
SELECT e.ename || q[department's name is]|| d.dname FROM emp e, dept d WHERE e.deptno = d.deptno;
SELECT e.ename || q'(department's name is)'|| d.dname FROM emp e, dept d WHERE e.deptno = d.deptno;
Answer: A
24. Which of the below SELECT statement is used to select all columns of EMP table?
SELECT ALL FROM emp
SELECT # FROM emp
SELECT * FROM emp
SELECT empno,ename,deptno,sal,job,mgr,hiredate FROM emp
Answer: C. อักขระ "*" ใช้เพื่อเลือกคอลัมน์ทั้งหมดของตาราง
25. Which of the below SQL query will display employee names, department, and annual salary?
SELECT ename, deptno, sal FROM emp;
SELECT ename, deptno, sal + comm FROM emp;
SELECT ename, deptno, (sal * 12) Annual_Sal FROM emp;
- ไม่สามารถสอบถามเงินเดือนประจำปีได้เนื่องจากไม่มีคอลัมน์ในตาราง
Answer: C. ใช้นิพจน์ตัวเลขในคำสั่ง SELECT เพื่อคำนวณเลขคณิตพื้นฐาน