多个自引用外键

时间:2016-05-25 06:38:12

标签: database oracle11g

我想创建一个这样的映射表:

MIS_REPORT_STRUC_MAIN
(
  m_id          NVARCHAR2(3) not null,
  m_name        NVARCHAR2(200),
  main_head     NVARCHAR2(3),
  sub_head      NVARCHAR2(3),
  tot_head      NVARCHAR2(3),
  sub_tot_head  NVARCHAR2(3)
);

M_ID将成为主键,而MAIN_HEADSUB_HEADTOT_HEADSUB_TOT_HEAD将自引用外键。

请帮我写一下SQL。

如果不可能,那就解释原因。

1 个答案:

答案 0 :(得分:0)

这是一个例子

select * from MIS_REPORT_STRUC_MAIN t
left outer join MIS_REPORT_STRUC_MAIN t_mh on t.main_head = t_mh.m_id
left outer join MIS_REPORT_STRUC_MAIN t_sh on t.main_head = t_sh.m_id
left outer join MIS_REPORT_STRUC_MAIN t_th on t.main_head = t_th.m_id
left outer join MIS_REPORT_STRUC_MAIN t_sth on t.main_head = t_sth.m_id