sql-server - 数据库设计: Is it a good idea to combine two tables with the same columns and too many data?

标签 sql-server sql-server-2008 database-design

我有两个相同列的表,一个用于保存银行金额,另一个用于保存收银台,它们都可能有很多数据,所以我担心数据检索速度。我不知道这样更好通过添加额外的列来组合它们以确定每条记录的类型或为每条记录创建一个单独的表?

最佳答案

您应该问的主要问题是 - 我如何查询表。 如果两个表之间没有真正的逻辑连接(您不想在同一查询中获取行) - 使用两个不同的表,因为您需要保留另一列来告诉您什么类型您正在处理的行,这会减慢您的速度并使您的查询更加复杂

此外,如果同一列的 FK 到 2 个不同的位置,则 FK 可能会出现问题

此外(第二) - 锁可能是一个问题 - 如果您使用一种类型,您可能会阻止另一种类型

结论 - 2 个表,不仅仅是为了速度

关于sql-server - 数据库设计: Is it a good idea to combine two tables with the same columns and too many data?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17520064/

相关文章:

sql-server - 在 Web 服务器上运行 SQL Server

python - 如何将具有多个结果集的 SQL Server 存储过程的输出保存到 pandas 中的每个数据帧中

sql - 防止添加另一个表中存在的值的约束

mysql - 这是将数组存储在数据库中的可接受情况吗?

sql-server - UNION ALL 在每个表中具有不同列数的 3 个表上 - 如何有效地这样做

sql-server - 展平/合并重叠的时间间隔

.net - sql如何同时选择和更新

sql - 如何在左连接中选择单个记录

sql - 将 varchar() 列限制为特定值?

database-design - 在 MySQL 数据库中存储空字符串与 NULL 值?