SlideShare uma empresa Scribd logo
1 de 36
RELATIONAL SET OPERATORS


          Prepared by:

         Michelle A. Ogana

        Ronnjemmele Rivera

        Jane Allyza Catalla

          Harry Ochinang




                              1
Relational Set Operators
 This section describes the basic data manipulation



Relational Algebra
 Defines the theoretical way of manipulating table
  contents using the eight relational operators.



                                                   2
Eight Relational Operators
 SELECT
 PROJECT
 JOIN
 INTERSECT
 UNION
 DIFFERENCE
 PRODUCT
 DIVIDE

                             3
 The relational operators have the property of
  closure; that is, the use of relational algebra
  operators on existing relations (tables) produces
  new relations.

 There is no need to examine the mathematical
  definitions, properties and characteristics of
  those relational algebra operators.




                                                      4
SELECT

 Also known as RESTRICT
 Yields values for all rows found in a table.
 Used to list all of the row values, or can yield
  only those row values that match a specified
  criterion.
 SELECT yields a horizontal subset of a table.




                                                     5
ORIGINAL TABLE

      P_CODE   P_DESCRIPT   PRICE                              P_CODE      P_DESCRIPT      PRICE
      123456   Flashlight   $5.26                              123456      Flashlight      $5.26

      123457   Lamp         $25.15                             123457      Lamp            $25.15
                                     SELECT ALL yields
      123458   Box Fan      $10.99
                                                               123458      Box Fan         $10.99
      123459   9V Battery   $1.29
                                                               123459      9V Battery      $1.29
      254688   100W Bulb    $1.47
                                                               254688      100W Bulb       $1.47
      311452   Powerdrill   $34.99
                                                               311452      Powerdrill      $34.99




SELECT only PRICE less than $2.00 yields                 P_CODE P_DESCRIPT              PRICE
                                                         123459     9V Battery          $1.29
                                                         254688     100W Bulb           $1.47




SELECT only P_CODE = 311452 yields                         P_CODE       P_DESCRIPT       PRICE

                                                           311452 Powerdrill $34.99


                                                                                                 6
PROJECT

 Yields all values for selected attributes.


 It yields a vertical subset of a table.




                                               7
ORIGINAL TABLE                                                   NEW TABLE

     P_CODE   P_DESCRIPT   PRICE                                        PRICE
     123456   Flashlight   $5.26
                                    PROJECT PRICE yields                $5.26
     123457   Lamp         $25.15                                       $25.15

     123458   Box Fan      $10.99                                       $10.99
                                                                        $1.92
     123459   9V Battery   $1.29
                                                                        $1.47
     254688   100W Bulb    $1.47
                                                                        $34.99
     311452   Powerdrill   $34.99
                                                              P_DESCRIPT           PRICE
                                                           Flashlight            $5.26
                                                           Lamp                  $25.15
PROJECT P_DESCRIPT and PRICE yields                        Box Fan               $10.99
                                                           9v battery            $1.92
                                                           100w bulb             $1.47
                                                           Powerdrill            $34.99


                                                                  P_CODE          PRICE
                                                             123456              $5.26
PROJECT P_CODE and PRICE yields                              123457              $25.15
                                                             123458              $10.99
                                                             213345              $1.92
                                                             254467              $1.47
                                                             311452              $34.99
                                                                                           8
UNION

 Combines all rows from two tables, excluding
  duplicate rows.
 To be used in UNION, tables must have the same
  attribute characteristics
 Columns, and domains must be compatible
 When two or more tables share the same number
  of columns, and when their corresponding
  columns share the same domains, they are said
  to be UNION-COMPATIBLE.

                                               9
P_CODE   P_DESCRIPT   PRICE             P_CODE       P_DESCIPT         PRICE
                               UNION
123456   Flashlight   $5.26            345678       Microwave       160.00

123457   Lamp         $25.15           345679       Dishwasher      500.00

123458   Box Fan      $10.99

123459   9V Battery   $1.29

254688   100W Bulb    $1.47
                                        yields
311452   Powerdrill   $34.99


                                                 P_CODE   P_DESCRIPT         PRICE


                                                 123456   Flashlight     $5.26


                                                 123457   Lamp           $25.15


                                                 123458   Box Fan        $10.99


                                                 254688   9V Battery     $1.29


                                                 524789   100W Bulb      $1.47


                                                 311452   Powerdrill     $34.99


                                                 345678   Microwave      $ 160

                                                 345679   Dishwasher     $ 500
                                                                                     10
INTERSECT
 Yields only the rows that appear in both
  tables.
 As was true in the case of UNION, the tables
  must be union-compatible to yield valid
  results.
 For example, you cannot use INTERSECT if
  one of the attributes is numeric and one is
  character-based.


                                                 11
STU_FNAME           STU_LNAME                          EMP_FNAME         EMP_LNAME
                                       INTERSECT
George             Jones                                  Franklin          Lopez

Jane               Smith                                  William           Turner

Peter              Robinson                               Franklin          Johnson

Franklin           Johnson                                Susan             Rogers

Martin             Lopez




                                                          yields




                                                          STU_FNAME             STU_LNAME

                                                   Franklin               Johnson




                                                                                            12
DIFFERENCE

 Yields all rows in one table that are not found
  in the other table;
 It subtracts one table form the other.
 Tables must be union-compatible to yield
  valid results.
 Note that subtracting the first table from the
  second table is not the same as subtracting
  the second table from the first table.

                                                    13
STU_FNAME           STU_LNAME                        EMP_FNAME           EMP_LNAME
                                       DIFFERENCE
George             Jones                             Franklin            Lopez

Jane               Smith                             William             Turner

Peter              Robinson                          Franklin            Johnson

Franklin           Johnson                           Susan               Rogers

Martin             Lopez




                                                     yields



                                                           STU_FNAME            STU_LNAME

                                                    George              Jones

                                                    Jane                Smith

                                                    Peter               Robinson

                                                    Martin              Lopez




                                                                                            14
PRODUCT
 Yields all possible pairs of rows from two
  tables
 Also known as Cartesian product
 Therefore, if one table has six rows and the
  other table has three rows,
 The PRODUCT yields a list composed of
6 x 3 = 18 rows



                                                 15
P_CODE   P_DESCRIPT   PRICE                STORE       AISLE       SHELF

123456   Flashlight   $5.26    PRODUCT    23       W           5

123457   Lamp         $25.15              24       K           9

123458   Box Fan      $10.99              25       Z           6

123459   9V Battery   $1.29

254688   100W Bulb    $1.47

311452   Powerdrill   $34.99             yields




                                                                           16
JOIN

 Allows information to be combined from two
  or more tables.
 It is the real power behind the relational
  database, allowing the use of independent
  tables linked by common attributes
 The CUSTOMER and AGENT tables shown
  will be used to illustrate several types of joins.



                                                       17
TABLE name: CUSTOMER                             TABLE name: AGENT


 CUS_CODE   CUS_LNAME   CUS_ZIP     AGENT_CODE         AGENT_CODE     AGENT_PHONE

1132445     Walker      32145     321            125                6152439887

1217782     Adares      32145     125            167                6153426778

1312243     Rakowski    34129     167            231                6152431124

13212442    Rodriguez   37134     125            333                9041234445

1542311     Smithson    37134     421

1657399     Vanloo      32145     231




                                                                                    18
 A natural join links tables by selecting only
  the rows with common values in their
  common attribute(s).

 It is the result of a three-stage process:




                                                  19
a. First, a PRODUCT of the tables is created




                                               20
b. Second, a SELECT is performed on the output of Step A to
yield only the rows for which the AGENT_CODE values are equal.
Common columns are referred to as the join columns.




                                                              21
c. A PROJECT is performed on the results of Step B to yield a
single copy of each attribute, thereby eliminating duplicate
columns.




                                                           22
 The final outcome of a natural join yields a
  table that does not include unmatched pairs
  and provides only the copies of the matches.




                                                 23
Note a few crucial features of the natural join operation:


 If no match is made between the table rows, the new table
  does not include the unmatched row. In that case, neither
  AGENT_CODE 421 nor the customer whose last name is
  Smithson is included.



 Smithson’s AGENT_CODE 421 does not match any entry in
  the AGENT table.


                                                              24
 The column on which the join was made- that is,
  AGENT_CODE- occurs only once in the new table.



 If the same AGENT_CODE were to occur several times in the
  AGENT table, a customer would be listed for each match



 For example, if the AGENT_CODE 167 were to occur three
  times in the AGENT table, the customer name Rakowski, who
  is associated with AGENT_CODE 167, would occur three
  times in the resulting table
                                                           25
Forms of JOIN
 1. EQUIJOIN

 Links tables on the basis of an equality
  condition that compares specified columns of
  each table.

 It does not eliminate duplicate columns


 Condition or criterion used to join the tables
  must be explicitly defined.
                                                   26
 Takes its name from the equality comparison
  operator (=) used in the condition.


2. Theta Join



 This join is used if any other comparison
  operator is used.


                                                27
3. Inner Join



 Returns matched records from the tables that
   are being joined.




                                                 28
3. Outer Join


 Matched pairs would be retained, and any
   unmatched values in the other table would be
   left null.

 Returns all of the matched records that the
   inner join returns, plus it returns the
   unmatched records from one of the tables



                                                  29
3.a. Left Outer Join


 Yields all rows in the CUSTOMER table,
  including those that do not have a matching
  value in the AGENT table.




                                                30
3.b. Right Outer Join


 Yields all the rows in the AGENT table,
 including those that do not have matching
 values in the CUSTOMER table.




                                             31
 Outer joins operate like equijoins.


 It does not drop one copy of the common
  attribute, and it requires the specification of the
  join condition.


 Are especially useful when you are trying to
  determine what value(s) in related tables
  cause(s) referential integrity problems

                                                        32
 You may wonder why the outer joins are
  labeled left and right.



 The labels refer to the order in which the
  tables are listed in the SQL command.




                                               33
DIVIDE
 Uses one single-column table (e.g., column “a”) as
  the divisor and one 2-column table (i.e., columns “a”
  and “b”) as the dividend.


 The tables must have common column


 Single column with the values of column “a” from
  the dividend table rows where the value of the
  common column (i.e., column “a” ) in both tables.
                                                          34
CODE       LOC                  CODE                     LOC
                        DIVIDE
A          5                          A                      5
                                      B
A          9

A          4                                    yields
B          5

B          3

C          6

D          7         A. Table 1 is divided by Table 2 to produce Table 3.
D          8
                     Tables 1 & 2 both contain the column CODE but
E          8
                     do not share LOC.

    B. To be included in the resulting Table 3, a value in the
    unshared column (LOC( must be associated (in the dividing
    Table 2) with every value in Table 1.

    C. The only value associated with both A and B is 5.
                                                                       35
36

Mais conteúdo relacionado

Mais procurados (20)

set operators.pptx
set operators.pptxset operators.pptx
set operators.pptx
 
Triggers
TriggersTriggers
Triggers
 
Trigger
TriggerTrigger
Trigger
 
joins in database
 joins in database joins in database
joins in database
 
Aggregate function
Aggregate functionAggregate function
Aggregate function
 
Sql operator
Sql operatorSql operator
Sql operator
 
Sql join
Sql  joinSql  join
Sql join
 
Types Of Join In Sql Server - Join With Example In Sql Server
Types Of Join In Sql Server - Join With Example In Sql ServerTypes Of Join In Sql Server - Join With Example In Sql Server
Types Of Join In Sql Server - Join With Example In Sql Server
 
Dbms keys
Dbms keysDbms keys
Dbms keys
 
Relational Data Model Introduction
Relational Data Model IntroductionRelational Data Model Introduction
Relational Data Model Introduction
 
trigger dbms
trigger dbmstrigger dbms
trigger dbms
 
Relational algebra ppt
Relational algebra pptRelational algebra ppt
Relational algebra ppt
 
Sql commands
Sql commandsSql commands
Sql commands
 
Packages in PL/SQL
Packages in PL/SQLPackages in PL/SQL
Packages in PL/SQL
 
Uml class-diagram
Uml class-diagramUml class-diagram
Uml class-diagram
 
MS Sql Server: Creating Views
MS Sql Server: Creating ViewsMS Sql Server: Creating Views
MS Sql Server: Creating Views
 
DBMS Keys
DBMS KeysDBMS Keys
DBMS Keys
 
SQL Joins.pptx
SQL Joins.pptxSQL Joins.pptx
SQL Joins.pptx
 
Acid properties
Acid propertiesAcid properties
Acid properties
 
DML, DDL, DCL ,DRL/DQL and TCL Statements in SQL with Examples
DML, DDL, DCL ,DRL/DQL and TCL Statements in SQL with ExamplesDML, DDL, DCL ,DRL/DQL and TCL Statements in SQL with Examples
DML, DDL, DCL ,DRL/DQL and TCL Statements in SQL with Examples
 

Destaque

Sql Authorization
Sql AuthorizationSql Authorization
Sql AuthorizationFhuy
 
Relational keys
Relational keysRelational keys
Relational keysSana2020
 
6. Integrity and Security in DBMS
6. Integrity and Security in DBMS6. Integrity and Security in DBMS
6. Integrity and Security in DBMSkoolkampus
 
11. Storage and File Structure in DBMS
11. Storage and File Structure in DBMS11. Storage and File Structure in DBMS
11. Storage and File Structure in DBMSkoolkampus
 
Slide 5 keys
Slide 5 keysSlide 5 keys
Slide 5 keysVisakh V
 
2. Entity Relationship Model in DBMS
2. Entity Relationship Model in DBMS2. Entity Relationship Model in DBMS
2. Entity Relationship Model in DBMSkoolkampus
 
12. Indexing and Hashing in DBMS
12. Indexing and Hashing in DBMS12. Indexing and Hashing in DBMS
12. Indexing and Hashing in DBMSkoolkampus
 
15. Transactions in DBMS
15. Transactions in DBMS15. Transactions in DBMS
15. Transactions in DBMSkoolkampus
 

Destaque (12)

Sql Authorization
Sql AuthorizationSql Authorization
Sql Authorization
 
ER Model in DBMS
ER Model in DBMSER Model in DBMS
ER Model in DBMS
 
Relational keys
Relational keysRelational keys
Relational keys
 
6. Integrity and Security in DBMS
6. Integrity and Security in DBMS6. Integrity and Security in DBMS
6. Integrity and Security in DBMS
 
11. Storage and File Structure in DBMS
11. Storage and File Structure in DBMS11. Storage and File Structure in DBMS
11. Storage and File Structure in DBMS
 
Slide 5 keys
Slide 5 keysSlide 5 keys
Slide 5 keys
 
View of data DBMS
View of data DBMSView of data DBMS
View of data DBMS
 
2. Entity Relationship Model in DBMS
2. Entity Relationship Model in DBMS2. Entity Relationship Model in DBMS
2. Entity Relationship Model in DBMS
 
12. Indexing and Hashing in DBMS
12. Indexing and Hashing in DBMS12. Indexing and Hashing in DBMS
12. Indexing and Hashing in DBMS
 
15. Transactions in DBMS
15. Transactions in DBMS15. Transactions in DBMS
15. Transactions in DBMS
 
RAID
RAIDRAID
RAID
 
DBMS - Normalization
DBMS - NormalizationDBMS - Normalization
DBMS - Normalization
 

Mais de Manuel S. Enverga University Foundation (6)

Information packaging
Information packagingInformation packaging
Information packaging
 
Formats & conventions
Formats & conventionsFormats & conventions
Formats & conventions
 
Readers advisory services_in_public_libraries
Readers advisory services_in_public_librariesReaders advisory services_in_public_libraries
Readers advisory services_in_public_libraries
 
Kwoc
KwocKwoc
Kwoc
 
Kwoc
KwocKwoc
Kwoc
 
Web design and the law
Web design and the lawWeb design and the law
Web design and the law
 

Último

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 

Último (20)

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 

Set operators

  • 1. RELATIONAL SET OPERATORS Prepared by: Michelle A. Ogana Ronnjemmele Rivera Jane Allyza Catalla Harry Ochinang 1
  • 2. Relational Set Operators  This section describes the basic data manipulation Relational Algebra  Defines the theoretical way of manipulating table contents using the eight relational operators. 2
  • 3. Eight Relational Operators  SELECT  PROJECT  JOIN  INTERSECT  UNION  DIFFERENCE  PRODUCT  DIVIDE 3
  • 4.  The relational operators have the property of closure; that is, the use of relational algebra operators on existing relations (tables) produces new relations.  There is no need to examine the mathematical definitions, properties and characteristics of those relational algebra operators. 4
  • 5. SELECT  Also known as RESTRICT  Yields values for all rows found in a table.  Used to list all of the row values, or can yield only those row values that match a specified criterion.  SELECT yields a horizontal subset of a table. 5
  • 6. ORIGINAL TABLE P_CODE P_DESCRIPT PRICE P_CODE P_DESCRIPT PRICE 123456 Flashlight $5.26 123456 Flashlight $5.26 123457 Lamp $25.15 123457 Lamp $25.15 SELECT ALL yields 123458 Box Fan $10.99 123458 Box Fan $10.99 123459 9V Battery $1.29 123459 9V Battery $1.29 254688 100W Bulb $1.47 254688 100W Bulb $1.47 311452 Powerdrill $34.99 311452 Powerdrill $34.99 SELECT only PRICE less than $2.00 yields P_CODE P_DESCRIPT PRICE 123459 9V Battery $1.29 254688 100W Bulb $1.47 SELECT only P_CODE = 311452 yields P_CODE P_DESCRIPT PRICE 311452 Powerdrill $34.99 6
  • 7. PROJECT  Yields all values for selected attributes.  It yields a vertical subset of a table. 7
  • 8. ORIGINAL TABLE NEW TABLE P_CODE P_DESCRIPT PRICE PRICE 123456 Flashlight $5.26 PROJECT PRICE yields $5.26 123457 Lamp $25.15 $25.15 123458 Box Fan $10.99 $10.99 $1.92 123459 9V Battery $1.29 $1.47 254688 100W Bulb $1.47 $34.99 311452 Powerdrill $34.99 P_DESCRIPT PRICE Flashlight $5.26 Lamp $25.15 PROJECT P_DESCRIPT and PRICE yields Box Fan $10.99 9v battery $1.92 100w bulb $1.47 Powerdrill $34.99 P_CODE PRICE 123456 $5.26 PROJECT P_CODE and PRICE yields 123457 $25.15 123458 $10.99 213345 $1.92 254467 $1.47 311452 $34.99 8
  • 9. UNION  Combines all rows from two tables, excluding duplicate rows.  To be used in UNION, tables must have the same attribute characteristics  Columns, and domains must be compatible  When two or more tables share the same number of columns, and when their corresponding columns share the same domains, they are said to be UNION-COMPATIBLE. 9
  • 10. P_CODE P_DESCRIPT PRICE P_CODE P_DESCIPT PRICE UNION 123456 Flashlight $5.26 345678 Microwave 160.00 123457 Lamp $25.15 345679 Dishwasher 500.00 123458 Box Fan $10.99 123459 9V Battery $1.29 254688 100W Bulb $1.47 yields 311452 Powerdrill $34.99 P_CODE P_DESCRIPT PRICE 123456 Flashlight $5.26 123457 Lamp $25.15 123458 Box Fan $10.99 254688 9V Battery $1.29 524789 100W Bulb $1.47 311452 Powerdrill $34.99 345678 Microwave $ 160 345679 Dishwasher $ 500 10
  • 11. INTERSECT  Yields only the rows that appear in both tables.  As was true in the case of UNION, the tables must be union-compatible to yield valid results.  For example, you cannot use INTERSECT if one of the attributes is numeric and one is character-based. 11
  • 12. STU_FNAME STU_LNAME EMP_FNAME EMP_LNAME INTERSECT George Jones Franklin Lopez Jane Smith William Turner Peter Robinson Franklin Johnson Franklin Johnson Susan Rogers Martin Lopez yields STU_FNAME STU_LNAME Franklin Johnson 12
  • 13. DIFFERENCE  Yields all rows in one table that are not found in the other table;  It subtracts one table form the other.  Tables must be union-compatible to yield valid results.  Note that subtracting the first table from the second table is not the same as subtracting the second table from the first table. 13
  • 14. STU_FNAME STU_LNAME EMP_FNAME EMP_LNAME DIFFERENCE George Jones Franklin Lopez Jane Smith William Turner Peter Robinson Franklin Johnson Franklin Johnson Susan Rogers Martin Lopez yields STU_FNAME STU_LNAME George Jones Jane Smith Peter Robinson Martin Lopez 14
  • 15. PRODUCT  Yields all possible pairs of rows from two tables  Also known as Cartesian product  Therefore, if one table has six rows and the other table has three rows,  The PRODUCT yields a list composed of 6 x 3 = 18 rows 15
  • 16. P_CODE P_DESCRIPT PRICE STORE AISLE SHELF 123456 Flashlight $5.26 PRODUCT 23 W 5 123457 Lamp $25.15 24 K 9 123458 Box Fan $10.99 25 Z 6 123459 9V Battery $1.29 254688 100W Bulb $1.47 311452 Powerdrill $34.99 yields 16
  • 17. JOIN  Allows information to be combined from two or more tables.  It is the real power behind the relational database, allowing the use of independent tables linked by common attributes  The CUSTOMER and AGENT tables shown will be used to illustrate several types of joins. 17
  • 18. TABLE name: CUSTOMER TABLE name: AGENT CUS_CODE CUS_LNAME CUS_ZIP AGENT_CODE AGENT_CODE AGENT_PHONE 1132445 Walker 32145 321 125 6152439887 1217782 Adares 32145 125 167 6153426778 1312243 Rakowski 34129 167 231 6152431124 13212442 Rodriguez 37134 125 333 9041234445 1542311 Smithson 37134 421 1657399 Vanloo 32145 231 18
  • 19.  A natural join links tables by selecting only the rows with common values in their common attribute(s).  It is the result of a three-stage process: 19
  • 20. a. First, a PRODUCT of the tables is created 20
  • 21. b. Second, a SELECT is performed on the output of Step A to yield only the rows for which the AGENT_CODE values are equal. Common columns are referred to as the join columns. 21
  • 22. c. A PROJECT is performed on the results of Step B to yield a single copy of each attribute, thereby eliminating duplicate columns. 22
  • 23.  The final outcome of a natural join yields a table that does not include unmatched pairs and provides only the copies of the matches. 23
  • 24. Note a few crucial features of the natural join operation:  If no match is made between the table rows, the new table does not include the unmatched row. In that case, neither AGENT_CODE 421 nor the customer whose last name is Smithson is included.  Smithson’s AGENT_CODE 421 does not match any entry in the AGENT table. 24
  • 25.  The column on which the join was made- that is, AGENT_CODE- occurs only once in the new table.  If the same AGENT_CODE were to occur several times in the AGENT table, a customer would be listed for each match  For example, if the AGENT_CODE 167 were to occur three times in the AGENT table, the customer name Rakowski, who is associated with AGENT_CODE 167, would occur three times in the resulting table 25
  • 26. Forms of JOIN 1. EQUIJOIN  Links tables on the basis of an equality condition that compares specified columns of each table.  It does not eliminate duplicate columns  Condition or criterion used to join the tables must be explicitly defined. 26
  • 27.  Takes its name from the equality comparison operator (=) used in the condition. 2. Theta Join  This join is used if any other comparison operator is used. 27
  • 28. 3. Inner Join  Returns matched records from the tables that are being joined. 28
  • 29. 3. Outer Join  Matched pairs would be retained, and any unmatched values in the other table would be left null.  Returns all of the matched records that the inner join returns, plus it returns the unmatched records from one of the tables 29
  • 30. 3.a. Left Outer Join  Yields all rows in the CUSTOMER table, including those that do not have a matching value in the AGENT table. 30
  • 31. 3.b. Right Outer Join  Yields all the rows in the AGENT table, including those that do not have matching values in the CUSTOMER table. 31
  • 32.  Outer joins operate like equijoins.  It does not drop one copy of the common attribute, and it requires the specification of the join condition.  Are especially useful when you are trying to determine what value(s) in related tables cause(s) referential integrity problems 32
  • 33.  You may wonder why the outer joins are labeled left and right.  The labels refer to the order in which the tables are listed in the SQL command. 33
  • 34. DIVIDE  Uses one single-column table (e.g., column “a”) as the divisor and one 2-column table (i.e., columns “a” and “b”) as the dividend.  The tables must have common column  Single column with the values of column “a” from the dividend table rows where the value of the common column (i.e., column “a” ) in both tables. 34
  • 35. CODE LOC CODE LOC DIVIDE A 5 A 5 B A 9 A 4 yields B 5 B 3 C 6 D 7 A. Table 1 is divided by Table 2 to produce Table 3. D 8 Tables 1 & 2 both contain the column CODE but E 8 do not share LOC. B. To be included in the resulting Table 3, a value in the unshared column (LOC( must be associated (in the dividing Table 2) with every value in Table 1. C. The only value associated with both A and B is 5. 35
  • 36. 36