我试图从保险索赔数据库中提取一个样本。在oracle中进行采样
例如20%随机,来自100万个提供数据的样本,其中提供者类型是'25'且年份是'2012'。数据在sqldeveloper中。我是具有基本SQL知识的统计学家。
我试图从保险索赔数据库中提取一个样本。在oracle中进行采样
例如20%随机,来自100万个提供数据的样本,其中提供者类型是'25'且年份是'2012'。数据在sqldeveloper中。我是具有基本SQL知识的统计学家。
SQL具有内置的实施例的样本命令:
SELECT * FROM emp SAMPLE(25)
指EMP每一行具有被包括在所产生的组中的25%的几率。注:这并不意味着该行的整整25%必然选择
这blog是对采样
SQL,而不是PL/SQL –
这是公平的,编辑 –
更多信息快速阅读,您可以使用SAMPLE
从表中获得一个随机的行集。
SELECT *
FROM claim SAMPLE(20)
WHERE type ='25'
AND year = 2012;
谢谢阿伦for你的回复。当我不使用where子句时,sample()工作正常。但是一旦指定提供者类型和年份,它就不会带来随机样本。 – Kuusum
我有预感这是因为它是采样后采用过滤器。为了解决这个问题,在内部查询中进行过滤,然后在该示例上进行采样:即SELECT * FROM(SELECT * FROM WHERE ...)SAMPLE(20)。语法是生锈的,所以可能无法工作,但应该表达想法 –
@hubson:'SAMPLE'只能在桌面上工作,而不能在内联视图中工作。 –
什么是你的问题? –
检查http://stackoverflow.com/questions/733652/select-a-random-sample-of-results-from-an-oracle-query –