![]() |
1
27
如果你要同时按森林和植物进行搜索,听起来你会从一个完整的多对多关系中受益。丢掉你的饭碗
然后可以从任意一方查找关系,并使用简单联接从任意一个表中获取相关数据。不需要在类似的条件下胡闹来弄清楚它是否在名单上,诸如此类。我在那里是为了一个遗留数据库。没有乐趣。最大限度地利用SQL。 |
![]() |
2
7
表:植物
表:面积
表:厂区地图
要查找所有具有灌木林(植物2)的区域,请执行以下操作:
|
![]() |
3
3
通常,一个表会有一个areaplants表:area\u ID,plant\u ID,这两个表上有一个唯一的约束和其他两个表的外键。这个“链接”表提供了多对多或多对一的关系。
|
![]() |
4
2
您的关系属性应该是原子的,而不是像列表那样由多个值组成。搜索它们太难了。您需要一个新的关系,将植物映射到area\u ID,area\u ID/植物组合是主键。 |
![]() |
5
2
使用多对多关系:
这与MySQL无关。这只是一个糟糕的数据库设计问题。在每个RDBMS(MySQL、Oracle、MSSQL、PostgreSQL等)中,都应该使用交集表和多对多关系。 |
|
kaiselwyvrn · 我无法打开Visual Studio项目 1 年前 |
![]() |
4SadMemeXD · 无法在Django中选择相关类别 2 年前 |
![]() |
Agrim Singh · 用户数据。名称未显示用户名 2 年前 |
![]() |
Peloucvo · 用数据库中的数据填充JTable 2 年前 |
![]() |
Montaser Majid · 用于从多行中提取单行的SQL查询 2 年前 |
![]() |
Max J. · 用整数作为键将dict写入csv 2 年前 |