首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >数据库对等关系

数据库对等关系
EN

Stack Overflow用户
提问于 2017-09-21 00:33:13
回答 3查看 109关注 0票数 0

我有一个表case,它具有案例Id案例名称

代码语言:javascript
运行
复制
caseId | CaseName
------ |---------
1      | Case 1
-------|-------
2      |Case2
-------|-------
3      |Case 3
-------|-------
4      |Case 4

我有一个要求,所有这些案件都是相关的,比如:

代码语言:javascript
运行
复制
1-2
1-3
1-4
2-3
2-4
3-4

如何以有效的方式存储记录

EN

回答 3

Stack Overflow用户

发布于 2017-09-21 00:36:29

再做一张桌子。案例Id和相关案例Id列应与第一个表中的案例Id具有相同的数据类型。

代码语言:javascript
运行
复制
Case Id   Related Case Id
1          4
2          4
2          3
票数 0
EN

Stack Overflow用户

发布于 2017-09-21 00:37:05

因为它是多对多关系,所以您可以创建一个具有两个列的连接表作为case的外键。

case_relation (case_id_1,case_id_2)。就像这样。

票数 0
EN

Stack Overflow用户

发布于 2017-09-21 00:47:14

如果caseId列具有唯一值

代码语言:javascript
运行
复制
with t( caseId  )as (
select 1 from dual union all 
select 2 from dual union all 
select 3  from dual union all 
select 4 from dual  
) 

select t1.caseId, t2.caseId from t t1
cross join t t2
where
t1.caseId <  t2.caseId
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46327382

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档