26 April 2009

🛢DBMS: Cartesian Product (Definitions)

"All the possible combinations of the rows from each of the tables specified in a join. The number of rows in the Cartesian product is equal to the number of rows in the first table times the number of rows in the second table. Once the Cartesian product is formed, the rows that do not satisfy the join conditions are eliminated." (Karen Paulsell et al, "Sybase SQL Server: Performance and Tuning Guide", 1996)

[cross join:] "When all rows from one table are joined to all rows of the other table." (Owen Williams, "MCSE TestPrep: SQL Server 6.5 Design and Implementation", 1998)

"All of the possible combinations of the rows from each of the tables involved in a join operation. The number of rows in a Cartesian product of two tables, for example, is equal to the number of rows in the first table multiplied by the number of rows in the second table. Cartesian products almost never provide useful information. Queries using the CROSS JOIN clause or queries without enough JOIN clauses create Cartesian products." (Microsoft Corporation, "SQL Server 7.0 System Administration Training Kit", 1999)

[cartesian join:] "A set comprised of all the possible combinations from multiple constraints." (Ralph Kimball & Margy Ross, "The Data Warehouse Toolkit" 2nd Ed., 2002)

"The set of all ordered pairs {a, b} where a is a member of set A and b is a member of set B. In database terms, a cartesian product joins all rows in Table1 with all rows in Table2. Thus if Table1 has the values {T_a1, T_b1} and Table2 has the values {T_a2, T_b2} then the cartesian product is {(T_a1, T_a2) (T_a1, T_b2) (T_b1, T_a2) (T_b1, T_b2)}.Cartesian products are useful for explanation, but when we see an operation which 'goes cartesian', we usually criticize the optimizer. " (Peter Gulutzan & Trudy Pelzer, "SQL Performance Tuning", 2002)

"A join between two tables where no join condition is specified, and as a result, every row in the first table is joined with every row in the second table." (Bob Bryla, "Oracle Database Foundations", 2004)

"A mathematical term describing a set of all the pairs that can be constructed from a given set. Statistically it is known as a combination, not a permutation. In SQL jargon, a Cartesian Product is also known as a cross join." (Gavin Powell, "Beginning Database Design", 2006)

"All of the possible combinations of the rows from each of the tables involved in a join operation." (S. Sumathi & S. Esakkirajan, "Fundamentals of Relational Database Management Systems", 2007)

[cross join:] "A join that performs a relational product (also known as the Cartesian product) of two tables." (Carlos Coronel et al, "Database Systems: Design, Implementation, and Management" 9th Ed., 2011)

"In data processing, given two or more populations, the Cartesian product is the set of all possible combinations, taking one value from each population. Usually a large and meaningless answer set for an incorrectly phrased query. SEE ALSO query from hell." (DAMA International, "The DAMA Dictionary of Data Management", 2011)

"The result of a Cartesian join, occurring when every row of one table is joined to every row of another table (or itself) without the use of join predicates." (Craig S Mullins, "Database Administration: The Complete Guide to DBA Practices and Procedures", 2012)

[cartesian join:] "A join in which one or more of the tables does not have any join conditions to any other tables in the statement. The optimizer joins every row from one data source with every row from the other data source, creating the Cartesian product of the two sets." (Oracle, "Database SQL Tuning Guide Glossary", 2013)

No comments:

Related Posts Plugin for WordPress, Blogger...

About Me

My photo
Koeln, NRW, Germany
IT Professional with more than 24 years experience in IT in the area of full life-cycle of Web/Desktop/Database Applications Development, Software Engineering, Consultancy, Data Management, Data Quality, Data Migrations, Reporting, ERP implementations & support, Team/Project/IT Management, etc.