งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

Copyright © 2004, Oracle. All rights reserved. Oracle Practice.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "Copyright © 2004, Oracle. All rights reserved. Oracle Practice."— ใบสำเนางานนำเสนอ:

1 Copyright © 2004, Oracle. All rights reserved. Oracle Practice

2 1-2 Copyright © 2004, Oracle. All rights reserved. Practice 1 Using PL/SQL Developer : เขียน SQL Statement เพื่อแสดงข้อมูลทุก column จาก table departments เขียนคำสั่งเพื่อแสดง structure ของ table employee เขียน SQL Statement เพื่อแสดงข้อมูล first_name, last_name, salary และ bonus ซึ่งบริษัทให้กับ พนักงาน 3 เดือนทุกคน

3 1-3 Copyright © 2004, Oracle. All rights reserved. Practice 1 (Solution) select * from departments; describe employees; select first_name, last_name, salary, 3*salary bonus from employees;

4 1-4 Copyright © 2004, Oracle. All rights reserved. Practice 2 Using PL/SQL Developer : เขียน SQL Statement เพื่อแสดงข้อมูลทุก column จาก table employees โดยเรียงลำดับตาม salary จากมากไปหาน้อย เขียน SQL Statement เพื่อแสดงข้อมูลพนักงานที่มี job_id = ‘ IT_PROG’ เขียน SQL Statement เพื่อแสดงข้อมูล first_name, last_name, employee_id โดยให้สามารถรับค่า employee ที่ต้องการได้

5 1-5 Copyright © 2004, Oracle. All rights reserved. Practice 2 (Solution) select * from employees order by salary desc ; select * from employees where job_id = 'IT_PROG‘; select first_name, last_name, employee_id from employees where employee_id = &employee_id;

6 1-6 Copyright © 2004, Oracle. All rights reserved. Practice 3 Using PL/SQL Developer : เขียน SQL Statement เพื่อแสดงวัน เวลาปัจจุบัน เขียน SQL Statement เพื่อแสดงข้อมูลพนักงานจาก table employees โดยให้แสดง first_name, last_name, employee_id และ hire_date ด้วย format yyyy/mm/dd เขียน SQL Statement เพื่อแสดงข้อมูล first_name, last_name, employee_id, hire_dat และอายุงาน ของพนักงานแต่ละคนในหน่วยปี เขียน SQL Statement เพื่อแสดงข้อมูลชื่อเต็มของ พนักงานด้วยตัวพิมพ์ใหญ่

7 1-7 Copyright © 2004, Oracle. All rights reserved. Practice 3 (Solution) select sysdate from dual; select first_name, last_name, employee_id, to_char(hire_date,'yyyy/mm/dd') from employees; select first_name, last_name, employee_id, hire_date, to_number(to_char(sysdate,'YYYY')) - to_number(to_char(hire_date,'YYYY')) from employees; select upper(last_name || ' ' ||first_name) full_name from employees;

8 1-8 Copyright © 2004, Oracle. All rights reserved. Practice 4 Using PL/SQL Developer : เขียน SQL Statement เพื่อแสดงค่าเฉลี่ยของเงินเดือน ของพนักงานที่มี department_id = 50 เขียน SQL Statement เพื่อแสดงข้อมูลเงินเดือน ต่ำสุด/สูงสุด แยกตาม department_id เขียน SQL Statement เพื่อแสดงข้อมูลค่าเฉลี่ยของ เงินเดือนตาม department_id ที่มีค่าเฉลี่ยของ เงินเดือนมากกว่า 5,000 บาท ให้ปัดทศนิยมของค่าเฉลี่ยของเงินเดือนจากข้อ 3 ให้มี ทศนิยม 2 ตำแหน่ง

9 1-9 Copyright © 2004, Oracle. All rights reserved. Practice 4 (Solution) select avg(salary) from employees where department_id = 50; select department_id, min(salary), max(salary) from employees group by department_id; select department_id, avg(salary) from employees group by department_id having avg(salary) > 5000; select department_id, round(avg(salary),2) from employees group by department_id having avg(salary) > 5000;

10 1-10 Copyright © 2004, Oracle. All rights reserved. Practice 5 Using PL/SQL Developer : เขียน SQL Statement เพื่อแสดงข้อมูลจาก table departments และ locations โดยใช้ equijoin เขียน SQL Statement เพื่อแสดงข้อมูลชื่อพนักงาน และชื่อ manager ของพนักงานคนนั้น เขียน SQL Statement เพื่อแสดงข้อมูลชื่อพนักงาน และชื่อ manager ของพนักงานคนนั้น (ถ้ามี) เขียน SQL Statement เพื่อแสดงข้อมูลชื่อพนักงาน และชื่อแผนกที่สังกัด ที่มีเงินเดือนมากกว่า 5,000 บาท

11 1-11 Copyright © 2004, Oracle. All rights reserved. Practice 5 (Solution) select * from departments a, locations b where a.location_id = b.location_id; select c.first_name staff_name, d.first_name manager_name from employees c join employees d on (c.manager_id = d.employee_id); select c.first_name staff_name, d.first_name manager_name from employees c, employees d where c.manager_id = d.employee_id;

12 1-12 Copyright © 2004, Oracle. All rights reserved. Practice 5 (Solution) select c.first_name staff_name, d.first_name manager_name from employees c left outer join employees d on (c.manager_id = d.employee_id); select c.first_name staff_name, d.first_name manager_name from employees c, employees d where c.manager_id = d.employee_id(+); select a.first_name, b.department_name from employees a, departments b where a.department_id = b.department_id and a.salary > 5000;

13 1-13 Copyright © 2004, Oracle. All rights reserved. Practice 6 Using PL/SQL Developer : เขียน SQL Statement เพื่อแสดงข้อมูลชื่อพนักงาน และเงินเดือนที่อยู่ใน department_name = ‘IT’ ซึ่งมี เงินเดือนมากกว่าคนที่เงินเดือนน้อยที่สุดของแผนกที่อยู่ ใน department_name = ‘Sales’ เขียน SQL Statement เพื่อแสดงข้อมูลชื่อพนักงาน ของแผนกที่มี department_id ซึ่งอยู่ใน location_id = 1700 โดยใช้ subquery เขียน SQL Statement เพื่อแสดงข้อมูลทุก column ของพนักงานที่เข้าทำงานเป็นคนแรกของแต่ละแผนก

14 1-14 Copyright © 2004, Oracle. All rights reserved. Practice 6 (Solution) select a.first_name, a.salary from employees a, departments b where a.department_id = b.department_id and b.department_name = 'IT' and a.salary > (select min(salary) from employees a, departments b where a.department_id = b.department_id and b.department_name = 'Sales') ; select * from employees where department_id in (select department_id from departments where location_id = 170);

15 1-15 Copyright © 2004, Oracle. All rights reserved. Practice 6 (Solution) select * from employees e where (e.department_id, e.hire_date) in (select department_id, min(hire_date) from employees group by department_id);

16 1-16 Copyright © 2004, Oracle. All rights reserved. Practice 7 Using PL/SQL Developer : เขียน SQL Statement เพื่อแสดงข้อมูลทุก column จาก table employees โดยแสดงเฉพาะคนที่มี เงินเดือนมากที่สุดและน้อยที่สุดของแต่ละแผนกโดยใช้ Subquery และ operator UNION เขียน SQL Statement เพื่อแสดงข้อมูล department_id จาก table departments ที่ไม่มีใน table employees โดยใช้ set operator

17 1-17 Copyright © 2004, Oracle. All rights reserved. Practice 7 (Solution) select * from employees e where (e.department_id, e.salary) in (select e1.department_id, min(e1.salary) from employees e1 group by e1.department_id) union select * from employees e where (e.department_id, e.salary) in (select e1.department_id, max(e1.salary) from employees e1 group by e1.department_id);

18 1-18 Copyright © 2004, Oracle. All rights reserved. Practice 7 (Solution) select department_id from departments minus select department_id from employees;

19 1-19 Copyright © 2004, Oracle. All rights reserved. Practice 8 Using PL/SQL Developer : เขียน SQL Statement เพื่อ insert พนักงานใหม่ใน table employees โดยกำหนดค่าดังนี้ – Employee_id = หมายเลขประจำแต่ละเครื่องของนิสิต – First_name, last_name, , phone_number, salary, commission_pct ให้นิสิตระบุค่าได้เอง – Hire_date = trunc(sysdate) – Job_id = ‘IT_PROG’ – Manager_id = 100 – Department_id = 60 เขียน SQL Statement เพื่อแสดงข้อมูลจากที่ insert ไปในข้อที่ 1 ให้ commit transaction

20 1-20 Copyright © 2004, Oracle. All rights reserved. Practice 8 Using PL/SQL Developer : เขียน SQL Statement เพื่อ update ข้อมูล ใน table employees ตาม employee_id ของนิสิต โดยให้ กำหนดค่าดังนี้ – Manager_id = 101 – Department_id = 90 เขียน SQL Statement เพื่อแสดงข้อมูลหลังจากที่ update ไปแล้ว ให้ rollback transaction เขียน SQL Statement เพื่อแสดงข้อมูลตาม employee_id ของนิสิตอีกครั้ง

21 1-21 Copyright © 2004, Oracle. All rights reserved. Practice 8 (Solution) insert into employees (employee_id, first_name, last_name, , phone_number, hire_date, job_id, salary, commission_pct, manager_id, department_id) values (99, 'Test', 'TestLast', ' ',trunc(sysdate), 'IT_PROG', 5000, 0.05, 100, 60); select * from employees e where e.employee_id = 99; Commit; update employees e set e.manager_id = 101, e.department_id = 90 where e.employee_id = 99; Rollback;

22 1-22 Copyright © 2004, Oracle. All rights reserved. Practice 9 Using PL/SQL Developer :

23 1-23 Copyright © 2004, Oracle. All rights reserved. Practice 9 (Solution)

24 1-24 Copyright © 2004, Oracle. All rights reserved. Practice 10 Using PL/SQL Developer :

25 1-25 Copyright © 2004, Oracle. All rights reserved. Practice 10 (Solution)

26 1-26 Copyright © 2004, Oracle. All rights reserved. Practice 11 Using PL/SQL Developer :

27 1-27 Copyright © 2004, Oracle. All rights reserved. Practice 11 (Solution)


ดาวน์โหลด ppt Copyright © 2004, Oracle. All rights reserved. Oracle Practice.

งานนำเสนอที่คล้ายกัน


Ads by Google