小编Mit*_*hir的帖子

保留在表中更新的值是否可以?

我们正在开发一个预付卡平台,该平台主要保存有关卡及其余额、付款等的数据。

到目前为止,我们有一个 Card 实体,它有一个 Account 实体的集合,每个 Account 都有一个 Amount,它在每次存款/取款时更新。

现在团队中有一场辩论;有人告诉我们,这违反了Codd 的 12 条规则,并且在每次付款时更新其价值很麻烦。

这真的有问题吗?

如果是,我们如何解决这个问题?

rdbms database-design

31
推荐指数
4
解决办法
2966
查看次数

如果属性通常为空,我应该添加一列还是 1-1 表

我们需要添加一个新的独特属性,它仅与特定子集(小于 1%)相关。我们认为最好添加一个 1-1 的新表,而不是添加一个 99% 的时间为 Null 的新列。

新表是首选方式吗?

database-design sql-server

7
推荐指数
1
解决办法
1290
查看次数

为什么以下查询在性能方面如此糟糕

问完这个问题后,我开始思考为什么某个查询会出现所有问题。

简而言之,有一个查询需要 500 毫秒,我运行了一些执行计划并应用了推荐的索引,但它只截断了大约 50-60 毫秒。

再次运行后,我发现以下查询(发生在多个位置)真的很慢:

SELECT @TempCardNumber = CardNumber 
FROM Cards 
WHERE (CardNumber=@CardNumber or FullCardNumber=@CardNumber)
Run Code Online (Sandbox Code Playgroud)

当我把它改成

SELECT @TempCardNumber = CardNumber 
FROM Cards 
WHERE (CardNumber=@CardNumber)
Run Code Online (Sandbox Code Playgroud)

它跑得超级快,甚至删除索引也没有太大关系,让我相信这是主要的瓶颈,但我不明白..这有什么问题?

performance sql-server query-performance

2
推荐指数
1
解决办法
256
查看次数