请参阅 Access 查询中的整个列
Refer to entire column in Access Query
我正在尝试使用引用 Excel 对象模型的自定义函数来计算 Access 查询中整个数据列的百分位数。这是我的代码:
Public Function myPercentile25(x As Double) As Double
myPercentile25 = Excel.WorksheetFunction.Percentile(x, 0.25)
End Function
我使用以下方法将 myPercentile25 函数添加到设计视图中的查询列,其中 x 等于 AgedSalary:
25P: myPercentile25([AgedSalary])
我遇到的问题是查询似乎只对每一行而不是整列取百分位数。我更熟悉 Excel,我会将列称为 AgedSalary:AgedSalary。我可以在 Access 中使用类似的语法来获取整个列的百分位数吗?
谢谢。
当您需要百分位数时,在 Access 中使用 TOP
更容易:
select top 25 percent
[agedSalary]
from [yourTable]
order by [agedSalary];
以上查询将 return 前 25% 的记录。如果您想要最高值(即第 25 个百分位数),您可以嵌套上述查询:
select max([agedSalary) as percentile
from (
select top 25 percent [agedSalary]
from [yourTable]
order by [agedSalary])
) as a
如果您想使用设计网格执行此操作:
第一个查询:
- 在 "Columns" 区域(设计视图的下半部分),在每一列下方,有一个 "Order by" 组合,您可以在其中 select "Ascending" 或 "Descending"
- 您可以在查询的 属性 sheet 中设置 TOP 值;在“设计”功能区中单击 "Property sheet" 按钮
一旦您确定您的查询有效(即它 select 是前 25% 行),您将需要打开 SQL 视图,剪切生成的 SELECT
指令并写下:
select a.*
from (
-- Paste HERE the SELECT you've just cut
) as a
然后 return 到设计网格,从列网格中删除 *
并将所需的字段拖到设计视图。单击设计功能区(那个大西格玛)中的总计按钮,然后在刚刚拖动的字段下方,在 "Total" 行 select "Max"
我正在尝试使用引用 Excel 对象模型的自定义函数来计算 Access 查询中整个数据列的百分位数。这是我的代码:
Public Function myPercentile25(x As Double) As Double
myPercentile25 = Excel.WorksheetFunction.Percentile(x, 0.25)
End Function
我使用以下方法将 myPercentile25 函数添加到设计视图中的查询列,其中 x 等于 AgedSalary:
25P: myPercentile25([AgedSalary])
我遇到的问题是查询似乎只对每一行而不是整列取百分位数。我更熟悉 Excel,我会将列称为 AgedSalary:AgedSalary。我可以在 Access 中使用类似的语法来获取整个列的百分位数吗?
谢谢。
当您需要百分位数时,在 Access 中使用 TOP
更容易:
select top 25 percent
[agedSalary]
from [yourTable]
order by [agedSalary];
以上查询将 return 前 25% 的记录。如果您想要最高值(即第 25 个百分位数),您可以嵌套上述查询:
select max([agedSalary) as percentile
from (
select top 25 percent [agedSalary]
from [yourTable]
order by [agedSalary])
) as a
如果您想使用设计网格执行此操作:
第一个查询:
- 在 "Columns" 区域(设计视图的下半部分),在每一列下方,有一个 "Order by" 组合,您可以在其中 select "Ascending" 或 "Descending"
- 您可以在查询的 属性 sheet 中设置 TOP 值;在“设计”功能区中单击 "Property sheet" 按钮
一旦您确定您的查询有效(即它 select 是前 25% 行),您将需要打开 SQL 视图,剪切生成的 SELECT
指令并写下:
select a.*
from (
-- Paste HERE the SELECT you've just cut
) as a
然后 return 到设计网格,从列网格中删除 *
并将所需的字段拖到设计视图。单击设计功能区(那个大西格玛)中的总计按钮,然后在刚刚拖动的字段下方,在 "Total" 行 select "Max"