SQL> select distinct t1.g_name from goods t1, attr t2, relation t3, attr t4, relation t5
2 where t1.g_id=t3.g_id and t2.t_id=t3.t_id and t2.t_id='E' AND
3 t1.g_id=t5.g_id and t4.t_id=t5.t_id and t4.t_id ='C';
T_ID T_NAME
---------- ---------------
A 属性a
B 属性b
C 属性c
D 属性d
E 属性e
select * from relation;
G_ID T_ID
----- --------------------
1 E
1 C
2 E
2 C
3 E
3 C
3 A
4 E
5 C
SQL> select g_name from goods t1 where not exists (
2 select * from attr t2 where t_id in ('E', 'C') and not exists (
3 select * from relation t3 where t1.g_id=t3.g_id and t2.t_id=t3.t_id));