我想知道创建CUSTOMER_RANDOM_VALUE(0到100之间)是否常见,以便处理随机样本而不是整个数据库。处理样本而不是整个数据库
我们举一个例子:管理Webstore的CDW并使用增量CustomerID。
如果你想知道谁访问特定产品的页面的用户数的,你需要做的是:
SELECT COUNT(DISTINCT CUSTOMER_ID)
FROM WEBSITE_TRAFFIC
WHERE PRODUCT_KEY= 134
问题是这样的表是如此巨大,这可能需要1小时就知道这一点,你必须整天回答很多这类问题。
为什么不为每个客户创建一个random_value:
Customer_Id | Random Value
1 13
2 41
3 8
4 87
和1%这样的一个样本工作:
SELECT COUNT(DISTINCT CUSTOMER_ID)
FROM WEBSITE_TRAFFIC
WHERE PRODUCT_KEY= 134
AND CUSTOMER_RANDOM_VALUE<1
问题:它是一个共同的初步实践时数据量很大,要使用CUSTOMER_RANDOM_VALUE进行采样。
一个好的做法是拥有一个空的数据库。然后,有可以发出一系列插入来加载示例数据的脚本。然后,任何开发人员都可以拥有自己的示例数据库来处理他的代码。 –
我永远不会做你正在考虑的事情。我会添加一个索引到我在where子句中使用的字段。另外,对于您的具体示例,我会在where子句中添加日期范围。 –