繁体   English   中英

如何列出链接到表ID的外键数据?

[英]How can I list the data of foreign keys linked to the id of the table?

我想做的是创建4个相互关联的渐进类别类。不知道我做的方法是否正确。 不幸的是,我已经阅读文档好几天了。 但我没有取得太大进展

在“公司”类中,如何查询属于“DepartmentalUnit”类的所有数据?

create_table_company= '''CREATE TABLE company(
ID SERIAL  PRIMARY KEY , 
NAME VARCHAR NOT NULL ,
); '''

create_table_department = '''CREATE TABLE department (
ID SERIAL  PRIMARY KEY , 
NAME VARCHAR NOT NULL ,
company_id BIGINT, 
FOREIGN KEY(company_id) REFERENCES COMPANY(id)); '''

create_table_department_unit = '''CREATE TABLE department_unit(
ID SERIAL  PRIMARY KEY , 
NAME VARCHAR NOT NULL ,
department_id BIGINT,
FOREIGN KEY(department_id) REFERENCES DEPARTMENT(id)); 

create_table_department_unit_categroy = '''CREATE TABLE department_unit_category(
ID SERIAL  PRIMARY KEY , 
NAME VARCHAR NOT NULL ,
department_unit_id BIGINT,
FOREIGN KEY(department_unit_id) REFERENCES DEPARTMENT_UNİT(id));

像这样的东西:

SELECT 
   c.id, c.name,  du.*
FROM 
   company AS c
JOIN 
   department AS d 
ON
   c.id = d.company_id 
JOIN 
  department_unit AS du 
ON 
   du.department_id = d.id
;

更新

上述查询通过按公共字段连接表来获取department_unit信息。 在这种情况下, company表通过使用链接回公司的department中的company_id字段查找每个公司的department信息。 一旦部门一家公司找到的部门单位,各部门通过使用发现department_id领域department_unit链接返回到department表。 最终结果是一个将公司与其部门单元连接起来的链。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM