Logicamente, um cross join é o tipo mais simples de junção. Um cross join implementa somente uma fase de processamento lógico de consulta – um produto cartesiano. Essa fase opera sobre as duas tabelas fornecidas como entradas para junção e produz um produto cartesiano das duas. Isto é, é feita a correspondência de cada linha de uma entrada com todas as linhas de outra. Assim se você tiver m linhas de uma tabela e n linhas na outra receberá m x n linhas no resultado.
Existem duas maneiras de realizar:
- SELECT C.CUSTID, E.EMPID
FROM SALES.CUSTOMERS AS C
CROSS JOIN HR.EMPLOYEES AS E;
- SELECT C.CUSTID, E.EMPID
FROM SALES.CUSTOMERS AS C, HR.EMPLOYEES AS E
Não há nenhum diferença de lógica ou de desempenho entre as duas sintaxes.