Pré-requisito - Álgebra Relacional
Já estamos cientes do fato de que as relações nada mais são do que um conjunto de tuplas, e aqui teremos 2 conjuntos de tuplas.

Ao aplicar CARTESIAN PRODUCT em duas relações que estão em dois conjuntos de tuplas, tomará cada tupla uma a uma do conjunto esquerdo (relação) e emparelhará com todas as tuplas do conjunto direito (relação).

Assim, o PRODUTO CRUZADO de duas relações A (R1, R2, R3, ..., Rp) com grau p, e B (S1, S2, S3, ..., Sn) com grau n, é uma relação C (R1, R2, R3, ..., Rp, S1, S2, S3, ..., Sn) com atributos de grau p + n.

CROSS PRODUCT é um meio de operação de conjunto binário, em um momento podemos aplicar a operação em duas relações. Mas as duas relações nas quais estamos realizando as operações não têm o mesmo tipo de tuplas, o que significa que a compatibilidade de união (ou compatibilidade de tipo) das duas relações não é necessária.

Notação:

A ✕ S

onde A e S são as relações,
o símbolo '✕' é usado para denotar o operador CROSS PRODUCT.

Exemplo:
Considere duas relações ESTUDANTE (SNO, FNAME, LNAME) e DETALHE (ROLLNO, IDADE) abaixo:

SNOFNAMELNAME
1AlbertSingh
2NoraFatehi

NÚM. DA LISTAERA
518
921

Ao aplicar CROSS PRODUCT em STUDENT e DETAIL:

STUDENT ✕ DETAILS



SNOFNAMELNAMENÚM. DA LISTAERA
1AlbertSingh518
1AlbertSingh921
2NoraFatehi518
2NoraFatehi921

Podemos observar que o número de tuplas na relação STUDENT é 2, e o número de tuplas em DETAIL é 2. Logo, o número de tuplas na relação resultante na realização de CROSS PRODUCT é 2 * 2 = 4.

Pontos importantes na Operação do PRODUTO CARTESIANO (PRODUTO CRUZADO):

  1. A cardinalidade (número de tuplas) da relação resultante de uma operação de produto cruzado é igual ao número de atributos (digamos m) na primeira relação multiplicado pelo número de atributos na segunda relação (digamos n).
    Cardinalidade = m * n
  2. O produto cruzado de duas relações A (R1, R2, R3, ..., Rp) com grau p, e B (S1, S2, S3, ..., Sn) com grau n, é uma relação C (R1, R2, R3, …, Rp, S1, S2, S3,…, Sn) com atributos de grau p + n.
    Grau = p + n
  3. Em SQL , CARTESIAN PRODUCT (CROSS PRODUCT) pode ser aplicado usando CROSS JOIN.
  4. Em geral, não usamos o produto cartesiano desnecessariamente, o que significa que, sem o devido significado, não usamos o produto cartesiano. Geralmente, usamos o Produto Cartesiano seguido por uma operação de Seleção e comparação nos operadores, conforme mostrado abaixo:
    σ A = D (A ✕ B)

    A consulta acima fornece resultados significativos.

    E esta combinação de operação Select e Cross Product é tão popular que a operação JOIN é inspirada por esta combinação.

  5. CROSS PRODUCT é um meio de operação de conjunto binário, em um momento podemos aplicar a operação em duas relações.

Aprenda todos os conceitos do GATE CS com aulas gratuitas ao vivo em nosso canal do youtube.