0
게시자와 문학 (도서, 잡지 등) 간의 관계를 나타내는 견해를 가지고 있습니다.몇 가지 항목으로 상위 레코드를 가져 오는 더 나은 방법
내가 Book#Clarissa
및 Publication#On the Nature of Things
을 게시하는 출판사/S를 찾을 예를 들어
그래서 책 X를 게시 게시자 ID와 출판 Y.를 가져 오기 위해 노력하고 있어요 - 결과가 (4
을하지만) 1,5
을 PUBLISHER_ID된다. 나는 내부에 의해 그것을 할 것입니다
같은 뷰를 결합 : 나는 (내부 3 복잡한 뷰에 조인) 도서, 출판, 잡지에 의해 인출 할 때
select *
from relations publication
inner join relations books on publication.publisher_id = books.publisher_id
where books.publication_type='Book'
and books.extended_field_3='Clarissa'
and publication.publication_type='Publication'
and publication.extended_field_4='On the Nature of Things'
상황이 복잡해진다.
더 좋은 방법이 있습니까? 내가 extended_field_4
-extended_field_1
를 사용하는 모델을 가지고 싶지 않은
drop table relations;
CREATE TABLE relations
(
publisher_id int,
publication_id varchar(255),
publication_type varchar(255),
extended_field_1 varchar(255),
extended_field_2 varchar(255),
extended_field_3 varchar(255),
extended_field_4 varchar(255)
);
insert into relations values(1,A,'Book','','','Clarissa','');
insert into relations values(1,B,'Publication','','','','On the Nature of Things');
insert into relations values(1,C,'Book','','','Frankenstein','');
insert into relations values(3,D,'Book','','','','');
insert into relations values(3,E,'Publication','','','','A Paradoxical Ode');
insert into relations values(4,F,'Magazine','Time','','','');
insert into relations values(4,G,'Book','','','Clarissa','');
insert into relations values(4,H,'Publication','','','','Human Chemistry');
insert into relations values(4,I,'Book','','','The Woman in White','');
insert into relations values(5,K,'Book','','','Clarissa','');
insert into relations values(5,L,'Publication','','','','On the Nature of Things');
Oracle 또는 SQL Server를 사용하고 있습니까? 이 구문은 SQL Server를 제안합니다. –
오라클, 구문 예를 들어 주셔서 감사합니다. – user648026