如何在每个表中存储的令牌列表字段上加入两个表?

问题描述 投票:0回答:1

products
字符串字段与the the clage the the the the the-cling字段,以及诸如
sales_country
的值,以及使用相同字段的Application用户帐户设置(表
CZ;SK;HU;PL;DE;SI;GR
)...
为用户选择允许的产品的合理效率方法是什么?
我正在考虑使用

users

表和

product_sales_country_map

字段创建

user_sales_country_map
表,后来是与令牌字段分开的单个国家代码。然后,将使用四个表的联接和产品代码进行分组(或对同一产品编号,仅选择一个类似的产品)。大约有10,000种产品和大约200个用户。每30分钟定期刷新餐桌;因此,曾经有一段时间可以重建产品的映射表。用户帐户有时会手动更新。因此,还可以重建用户的映射表的时间瞬间。
结果数据集是构建Web UI的来源。因此,我不是在狩猎微秒。无论如何...
是否有更简单,还具有合理效率的SQL语言方法来获取允许产品的子集?
    
就像我在评论中提到的那样,最好的建议是使您的数据正常化;设计是问题。但是,您不能说,我建议您回馈那些为
fix

iT设计的那种脱颖而出的设计的人。 但是,您可以稍微绕过一个范围的视图,以使您的数据归一化,然后

product_code

。不幸的是,我们无法使用

country_code

,因为我们需要
sql sql-server
1个回答
0
投票
,并且您无法在索引视图中使用

INDEX。但是,我们可以与STRING_SPLIT

一起使用

APPLY

有些编造,过度简化的数据(由于我们缺乏示例数据),您的
APPLY
S,
JOIN
LIKE
Es可能看起来像这样。还要注意,这确实会强制执行参考完整性;如果将值
TABLE
将其添加到
VIEW
中,则该行将简单地出现在

INDEX

中。但是,它确实暗中强制执行各国的独特性。如果您将值

INSERT
将其添加到
'PQ,RS'
中,则会遇到错误。
dbo.DenormalisedTable
DB<>小提琴
	
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.