sql >> Base de Datos >  >> RDS >> Oracle

Informe de error:ORA-25155:la columna utilizada en la combinación NATURAL no puede tener el calificador 25155. 00000:la columna utilizada en la combinación NATURAL no puede tener el calificador

Como han mencionado otros, las uniones naturales siempre han sido una mala idea. ¿Qué sucede si alguien agrega una description? columna a ambos COURSE y GRADE ? De todos modos, las columnas utilizadas en una combinación natural no se pueden calificar con un alias de tabla.

create table student
( student_id integer primary key
, student_name varchar2(30) not null );

create table course
( course_id integer primary key
, course_name varchar2(30) not null );

create table grade
( student_id references student not null
, course_id  references course not null
, grade varchar2(3) not null );

Consulta:

select student_id, student_name, course_id, course_name, grade
from   student 
       natural left join grade 
       natural left join course;

Crear una vista:

create or replace view student_view as 
select course_id, student_id, student_name, grade, course_name
from   student 
       natural left outer join grade 
       natural left outer join course
union all
select course_id, student_id, student_name, grade, course_name
from   course 
       natural left outer join grade 
       natural left outer join student
where  student_id is null;

Continúa con tu otra pregunta...