php - 在我的 php 项目中哪个更好? 1 个带有多个空字段的表 1 个带有多个空字段的表?

标签 php mysql database

我的 php 项目中哪个更好?

a. 1 个带有多个空字段的表:

表_a:

enter image description here

b.或 2 个包含任何空字段的表:

表_b_1、表_b_2:

enter image description here

最佳答案

这实际上取决于您的优先事项是什么。 另外,最好准确地告诉我们这两个字段是什么,而不是混淆您的数据

极速(避免连接):

如果您的主要要求是速度,那么最好使用一张表。然而,这只适用于对速度有如此大的要求并且需要非标准化数据的情况。

正确的标准化表:

如果您的主要要求是没有冗余,并且遵循约定,您应该使用这两个表,因为这提供了更标准化的解决方案,从而避免了冗余数据。

查看table_a,我注意到只要有名称,就没有价格,而只要有价格没有名称。基于此,似乎您已将两个不同的实体/概念/表合并为一个。这看起来几乎就像报告的结果(使用外连接)。

最后:

为了更好地帮助您,除了整个表包含哪些数据之外,我们还需要知道field1field2是什么。为了更好地理解上下文。如果没有这些信息,我们基本上只能猜测,只能提供简单的指导。

关于php - 在我的 php 项目中哪个更好? 1 个带有多个空字段的表 1 个带有多个空字段的表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16712616/

相关文章:

database - Oracle数据库如何引入异常(插入、删除和更新)?

php - 我如何检查包含 ip 地址(inet_aton)的 php 变量($stat_ip)是否位于两个 ip(inet_aton 格式)的范围内

javascript - Node.js 和 MySQL 函数使用

php - 选择仅包含部分产品的存储桶

c# - 无法用两个表创建外键

sql - Oracle SQL 填充时间维度

php - 通过php打开DS更新

具有十进制格式的 PHP Mysql SUM

php - 如何每 30 天使用触发器更新一次表?

mysql - 如何在 mysql 中选择 min 从 cast varchar 到 int