Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Raport błędu - ORA-25155:kolumna użyta w złączeniu NATURAL nie może mieć kwalifikatora 25155. 00000 - kolumna użyta w złączeniu NATURAL nie może mieć kwalifikatora

Jak wspominali inni, naturalne złączenia zawsze były złym pomysłem. Co się stanie, jeśli ktoś doda description kolumna do obu COURSE i GRADE ? W każdym razie kolumny używane w łączeniu naturalnym nie mogą być kwalifikowane aliasem tabeli.

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 );

Zapytanie:

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

Utwórz widok:

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;

Ciąg dalszy na Twoje inne pytanie...




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORA-29977:Nieobsługiwany typ kolumny do rejestracji zapytań w trybie gwarantowanym

  2. Jak wycofać, gdy wystąpi błąd podczas wykonywania polecenia programu ładującego sql?

  3. 2 sposoby formatowania liczby z wiodącymi zerami w Oracle

  4. Ustawienie Oracle na domyślny schemat użytkownika (bez zmiany sesji)

  5. Odejmowanie znacznika czasu w Oracle zwraca dziwne dane