Relational Database Schemas Dream Houses
ตัวอย่าง Relational Database Schemas branch Bno Street Area City Pcode Tel_no Fax_no B5 22 Deer Rd Sidcup London SW1 4EH 0171-886-1214 B7 16 Argyll St Dyce Aberdeen AB2 3SU 01224-67125 01224-67111 B3 163 Main St Partick Glassgow G11 9QX 0141-339-2178 0141-339-4439 B4 32 Manse Rd Leigh Bristol BS99 1NZ 0117-916-1170 0117-776-1114 B2 56 Clover Dr NW10 6EU 0181-963-1030 0181-453-7992
ตัวอย่าง Relational Database Schemas staff Sno FName LName Address Tel_No Postion Sex DOB Salary Bno SL21 John White 19 Teylor St, Crandord,London 0171-884-5112 Manager M 1-Oct-45 30000 B5 SG37 Ann Beech 81 George St, Glasgow PA1 2JR 0141-848-3345 Snr Asst F 10-Nov-60 12000 B3 SG14 David Ford 63 Ashby St,Partick,Glasgow G11 0141-339-2177 Deputy 24-Mar-58 18000 SA9 Mary Howe 2 Elm Pl,Aberdeen AB2 3SU Assistant 19-Feb-70 9000 B7 SG5 Susan Brand 5 Gt Western Rd,Glasgow G12 0141-884-5112 3-Jun-40 24000 SL41 Julie Lee 28 Malvern St, Kilburn NW2 0181-554-3541 13-Jun-65
ตัวอย่าง Relational Database Schemas Property_for_rent Pno Street Area City Pcode Type Rooms Rent Ono Sno Bno PA14 16 Holhead Dee Aberdeen AB7 5SU House 6 650 CO46 SA9 B7 PL94 6 Argyll St Kilburn London NW2 Flat 4 400 CO87 SL41 B5 PG4 6 Lawrence St Partick Glasgow G11 9QX 3 350 CO40 SG14 B3 PG36 2 Manor Rd G32 4QX 375 CO93 SG37 PG21 18 Dale Rd Hyndland G12 5 600 PG16 5 Novar Dr G12 9AX 450
ตัวอย่าง Relational Database Schemas Renter Rno FName LName Address Tel_no Pref_Type Max_Rent Bno CR76 John Kay 56 High St, Putney, London SW1 4EH 0171-774-5632 Flat 425 B5 CR56 Aline Stewart 64 Fern Dr, Pollock, Glasgow G42 0BL 0141-848-1825 350 B3 Mike Ritchie 18 Tain St, Gourock PA1G 1YQ 01475-392178 House 750 B4 Mary Tregear 5 Tarbot Rd, Kildary, Aberdeen AB9 3ST 01224-196720 600 B7
ตัวอย่าง Relational Database Schemas Owner Ono FName LName Address Tel_no CO46 Joe Keogh 2 Fergus Dr, Banchory, Aberdeen AB2 7SX 01224-861212 CO87 Carol Farrel 6 Achray St, Glasgow G32 9DX 0141-357-7419 CO40 Tina Murphy 63 Well St, Shawlands, Glasgow G42 0141-943-1728 CO93 Tony Shaw 12 Park Pl, Hillhead, Glasgow G4 0QR 0141-225-7025
ตัวอย่าง Relational Database Schemas Viewing Rno Pno Date Comment CR56 PA14 24-May-98 Too small CR76 PG4 20-Apr-98 Too remote 26-May-98 CR62 14-May-98 No dining room PG36 28-Apr-98
Selection Projection Cartesian product Union Set difference Join Relational Algebra Selection Projection Cartesian product Union Set difference Join Intersection Division
Selection or Restriction Relational Algebra Selection or Restriction กระทำบน relation เดียวทำให้เกิด relation ซึ่งประกอบด้วยแถวของ relation ที่ตรงกับเงื่อนไขอย่างที่ต้องการ ตัวอย่าง แสดงข้อมูล staff ที่มีเงินเดือนมากกว่า 10000
ตัวอย่าง Selction Sno FName LName Address Tel_No Postion Sex DOB Salary Bno SL21 John White 19 Teylor St, Crandord,London 0171-884-5112 Manager M 1-Oct-45 30000 B5 SG37 Ann Beech 81 George St, Glasgow PA1 2JR 0141-848-3345 Snr Asst F 10-Nov-60 12000 B3 SG14 David Ford 63 Ashby St,Partick,Glasgow G11 0141-339-2177 Deputy 24-Mar-58 18000 SG5 Susan Brand 5 Gt Western Rd,Glasgow G12 0141-884-5112 3-Jun-40 24000
Relational Algebra Projection กระทำบน relation เดียวทำให้เกิด relation ซึ่งประกอบด้วยคอลัมน์ของ relation ที่ตรงกับเงื่อนไขอย่างที่ต้องการ ตัวอย่าง แสดงข้อมูลเงินเดือนทั้งหมดของ staff ทุกคน แสดงเฉพาะ Sno,FName,LName และ Salary details
ตัวอย่าง Projection Sno FName LName Salary SL21 SG37 SG14 SA9 SG5 SL41 John White 30000 SG37 Ann Beech 12000 SG14 David Ford 18000 SA9 Mary Howe 9000 SG5 Susan Brand 24000 SL41 Julie Lee
Relational Algebra Cartesian Product ทำให้เกิด relation ซึ่งเป็นการนำข้อมูลของทุกๆแถวของ relation R กับ relation S มาต่อกันโดย 1 แถวของ R จะต่อกับทุกแถวของ s ไปเรื่อยๆจนหมดแถวของ R ตัวอย่าง แสดงข้อมูลชื่อและคอมเมนท์ของผู้เช่าทั้งหมดที่ได้ดูรายการสินค้าแล้ว x
ตัวอย่าง Cartesian Product Renter.Rno FName LName Viewing.Rno Pno Comment CR76 John Kay CR56 PA14 Too small PG4 Too remote CR62 No dining room PG36 Aline Stewart
ตัวอย่าง แสดงข้อมูลพื้นที่ทั้งหมดที่มีทั้งของสาขาและสินค้า Relational Algebra Union การ union ของ relation 2 relation คือ R กับ S และมี I , J แถว จะเป็นการนำข้อมูลแถวของ R ต่อด้วยแถวทั้งหมดของ S ซึ่งจำนวนแถวสูงสุดคือ I+J แถว และแถวที่ซ้ำจะถูกตัดออก ตัวอย่าง แสดงข้อมูลพื้นที่ทั้งหมดที่มีทั้งของสาขาและสินค้า
ตัวอย่าง Union Area Sidcup Dyce Partick Leigh Dee Kilburn Hyndland
ตัวอย่าง แสดงข้อมูลเมืองทั้งหมดที่มีสาขาแต่ไม่มีสินค้าอยู่ Relational Algebra Set different R-S ทำให้เกิด relation ซึ่งประกอบด้วยแถวที่อยู่ใน R แต่ไม่อยู่ใน S และ R กับ S จะต้องเข้ากันได้ด้วย ตัวอย่าง แสดงข้อมูลเมืองทั้งหมดที่มีสาขาแต่ไม่มีสินค้าอยู่
ตัวอย่าง Set Different City Bristol
Relational Algebra Join Operations ถูกพัฒนาต่อจาก cartesian product ซึ่งจะนำการ selection เข้ามาใช้ร่วมด้วย โดยมีการ join หลายแบบ Theta-join Natural join Outer join Semi-join
กรณีที่ใช้ = จะเรียกว่า equi-join Relational Algebra Theta-join ทำให้เกิด relation ซึ่งประกอบด้วยแถวที่มาจากcartesian product แต่มีการใช้เงื่อนไขในการเลือก(selection) โดยที่มีเงื่อนไขนั้นอาจจะใช้ comparison operators ได้ จำพวก < ,<= ,> ,>= , = , ~ = กรณีที่ใช้ = จะเรียกว่า equi-join ตัวอย่าง แสดงข้อมูลชื่อและคอมเมนท์ของผู้เช่าทั้งหมดที่ได้ดูสินค้าแล้ว
ตัวอย่าง equi-join Renter.Rno FName LName Viewing.Rno Pno Comment CR76 John Kay PG4 Too remote CR56 Aline Stewart PA14 Too small PG36 CR62 Mary Tregear No dining room
ตัวอย่าง แสดงข้อมูลชื่อและคอมเมนท์ของผู้เช่าทั้งหมดที่ได้ดูสินค้าแล้ว Relational Algebra Natural join คือ equi-join ของ relation R กับ S บนทุกๆ attribute ที่กำหนด degree ของ natural join คือผลรวมของ degree ของ relation R,S แต่น้อยกว่าจำนวน attribute ที่กำหนดไว้ ตัวอย่าง แสดงข้อมูลชื่อและคอมเมนท์ของผู้เช่าทั้งหมดที่ได้ดูสินค้าแล้ว
ตัวอย่าง Natural join Rno FName LName Pno Comment CR76 CR56 CR62 John Kay PG4 Too remote CR56 Aline Stewart PA14 Too small PG36 CR62 Mary Tregear No dining room
Relational Algebra Outer join ทำให้เกิด relation ที่เมื่อทำการ join แล้วถึงแม้ว่าจะไม่มีค่าใน tuple ใดแต่ก็สามารถที่จะแสดงผลลัพธ์ได้ Left outer join คือการ join ซึ่งถึงแม้ว่า tuple ของ relation R จะไม่มีค่าที่ตรงกันกับค่าใน relation S แต่ก็ยังถูกแสดงผลลัพธ์ได้ ตัวอย่าง แสดงข้อมูลสินค้าทั้งหมดทั้งที่ถูกดูรายละเอียดแล้วและยังไม่ได้ดู
ตัวอย่าง Left outer join Pno Street City Rno Date Comment PA14 16 Holhead Aberdeen CR56 24-May-98 Too small CR62 14-May-98 No dining room PL94 6 Argyll St London null Null PG4 6 Lawrence St Glasgow CR76 20-Apr-98 Too remote 26-May-98 PG36 2 Manor Rd 28-Apr-98 PG21 18 Dale Rd PG16 5 Novar Dr
Relational Algebra Right outer join คือการ join ซึ่งถึงแม้ว่า tuple ของ relation S จะไม่มีค่าที่ตรงกันกับค่าใน relation R แต่ก็ยังถูกแสดงผลลัพธ์ได้ Full outer join คือการ join ซึ่งถึงแม้ว่า tuple ของ ทั้ง relation R และ S จะไม่มีค่าที่ตรงกันแต่ก็ยังถูกแสดงผลลัพธ์ทั้งหมด
ตัวอย่าง แสดงข้อมูลทั้งหมดของ staff ที่ทำงานสาขาใน partick Relational Algebra Semi-join ทำให้เกิด relation ที่ประกอบด้วยแถวของ R ที่ใช้เงื่อนไขในการ join ของ relation R กับ S ตัวอย่าง แสดงข้อมูลทั้งหมดของ staff ที่ทำงานสาขาใน partick
ตัวอย่าง Semi-join Sno FName LName Address Tel_No Postion Sex DOB Salary Bno SG37 Ann Beech 81 George St, Glasgow PA1 2JR 0141-848-3345 Snr Asst F 10-Nov-60 12000 B3 SG14 David Ford 63 Ashby St,Partick,Glasgow G11 0141-339-2177 Deputy M 24-Mar-58 18000 SG5 Susan Brand 5 Gt Western Rd,Glasgow G12 0141-884-5112 Manager 3-Jun-40 24000
เมื่อกำหนดให้ relation R มี attribute เป็นเซต A Relational Algebra Intersection ทำให้เกิด relation ที่ประกอบด้วยเซตของทุกแถวที่อยู่ในทั้ง relation R และ S ซึ่งทั้งสอง relation นี้ต้องมี attribute เข้ากันได้ Division ทำให้เกิด relation ที่ประกอบด้วยเซตของแถวจาก relation R ที่สร้างจาก attribute C ซึ่งมีค่าตรงกันกับการรวมกันของทุกๆ tuple ใน relation S เมื่อกำหนดให้ relation R มี attribute เป็นเซต A Relation S มี attribute เป็นเซต B แล้ว B เป็นเซตย่อยของ A และให้ C = A- B
ตัวอย่าง Division แสดงข้อมูลผู้เช่าทั้งหมดที่ได้ดูรายละเอียดสินค้าที่มีห้อง 3 ห้องแล้ว Rno Pno CR56 PA14 CR76 PG4 CR62 PG36 Pno PG4 PG36 Rno CR56 Output S R