You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

数据库E-R模型中2个PK与2个FK的关联关系是否可以存在?

问题解答

可以正常获取到每条note对应的id,只要外键关联关系配置正确、JOIN语句的关联条件书写无误即可,具体说明如下:

  • 你提到的fk_note、fk_users应该是中间关联表(一般用于存储用户和笔记的对应关系,比如用户发布、收藏笔记的关联)中分别指向note表主键id、users表主键id的外键字段,只要外键约束正常生效,两张表的关联匹配逻辑就是准确的。
  • 你可以参考下面的示例语句编写查询逻辑,假设中间关联表命名为user_note_relation:
SELECT 
  n.id AS note_id, -- 这里就是你要获取的note对应id
  n.content, 
  u.username
FROM user_note_relation unr
INNER JOIN note n ON unr.fk_note = n.id
INNER JOIN users u ON unr.fk_users = u.id;
  • 注意事项:
    • 如果fk_note字段存在空值,INNER JOIN会自动过滤掉没有匹配到对应笔记的关联记录,如果你需要保留这部分记录可以把INNER JOIN换成LEFT JOIN。
    • 多表查询时建议给表设置别名,获取note表id时明确指定表归属(比如n.id),避免不同表存在同名字段时取值错误。

内容的提问来源于stack exchange,提问作者TadeoGavensky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 08:06:04