我有一个表格,其中包含以下(大规模简化)行的数据:
User | Value
-----|------
UsrA | 100
UsrA | 102
UsrB | 100
UsrA | 100
UsrB | 101
并且,由于远非模糊的原因,我需要将每个值的COUNT
存储在一个表中以供将来检索 - 最后用
User | Value100Count | Value101Count | Value102Count
-----|---------------|---------------|--------------
UsrA | 2 | 0 | 1
UsrB | 1 | 1 | 0
但是,最多可能有255个不同的Value
s - 意味着可能有255个不同的ValueXCount
列。我知道这是一种可怕的做事方式,但是有一种简单的方法可以将数据转换为可以轻松INSERT
到目标表中的格式吗?有没有更好的方法来存储每个用户的COUNT
值(不幸的是我确实需要存储这些信息;每次都不能从源表中获取它)?
答案 0 :(得分:2)
整个事情并不是很漂亮,但是你知道,而不是你的255列表我会考虑设置另一个表:
User | Value | CountOfValue
并在用户和值上设置主键。
然后,您可以将给定用户/值组合的计数插入CountOfValue字段
正如我所说的那样,设计很糟糕,感觉你会从头开始,正常化并做现场直播会更好。
答案 1 :(得分:0)
查看索引视图。您可以使用完整性自动维护表,作为奖励,它可以在已经对该数据计数(*)的查询中使用。