Nonequijoins hace coincidir valores de columnas de tablas diferentes
basada en una expresión desigualdad. El valor de la columna join en cada fila en la tabla Source es comparado
a los valores correspondientes en la tabla Target. Una coincidencia es
encontrada si la expresión utilizada en
el Join, basada en una desigualdad es evaluada a verdadero.
Un Nonequijoins es especificado utilizando la sintaxis JOIN … ON, pero
la condición JOIN contiene una desigualdad en lugar de una igualdad.
La sintaxis para la clausula Nonequijoins es la siguiente:
SELECT table1.column,
table2.column
FROM table1
[ JOIN table2 ON (table1.column_name
< table2.column_name) ] |
[ JOIN table2 ON (table1.column_name
> table2.column_name) ] |
[ JOIN table2 ON (table1.column_name
<= table2.column_name) ] |
[ JOIN table2 ON (table1.column_name
>= table2.column_name) ] |
[ JOIN table2 ON (table1.column_name
BETWEEB table2.col1 AND table2.col2) ] |
-- NONEQUIJOINS
SELECT e.employee_id,
e.first_name, e.last_name, e.salary, j.job_title, j.min_salary
FROM employees e
JOIN jobs j ON (e.job_id > j.job_id)
ORDER BY salary DESC;
SELECT e.employee_id,
e.first_name, e.last_name, e.salary * 2 salary, j.max_salary
FROM employees e
JOIN jobs j ON (e.salary * 2 <
j.max_salary)
WHERE e.salary > 5000;
-- NONEQUIJOINS
SELECT e.first_name,
e.salary, e2.first_name, e2.salary
FROM employees e
JOIN employees e2 ON (e.salary <
e2.salary);
Comentarios
Publicar un comentario