访问查询以提取值变化超过一定百分比的记录

我当前有一个表(MV更改),如果两个表的市场价值不同,则该表将从两个表(当前和上一个)中提取。此外,查询还有一个附加列,该列列出了两个Market值之间的差异,使用的表达式为Expr1: [Current].[MARKET VALUE]-[Previous].[MARKET VALUE]。我正在寻找两件事;

  1. 是否可以创建一个查询或表达式来仅提取变化超过15%的记录? (例如,如果当前MV = 100且前一个= 55或当前MV = 25且前一个= 90,则查询将列出该记录。)

  2. 当表达式的结果为负数时,是否可以从表结果中删除()? (例如,当前MV = 30,上一个MV = 80,结果在表格中显示为(50),而不是50)

以下是一些示例数据:

当前表

ID Market Value 
1    $100   
2    $100
3    $100
4    $100    
5    $100
6    $50

上一张表

ID Market Value 
1    $100   
2    $90
3    $50
4    $110  
5    $150

我要查询的查询仅提取ID 3和5,因为两个市场价值的变化都超过15%。由于上表中没有市场价值,因此ID 6不在其中

任何帮助将不胜感激。

我当前的SQL查询如下;

SELECT [mv change].[id],[mv change].[new mv],[mv change].[old mv],[mv change].[change in mv],FROM   [mv change]
WHERE  (( [mv change].[new mv] - [mv change].[old mv] >= 1.15 ))
        OR (( [mv change].[new mv] - [mv change].[old mv] >=- 1.15 )); 
zhongchuan000 回答:访问查询以提取值变化超过一定百分比的记录

要求未指定百分比?差异/当前或差异/上一个???

使用ABS([Current].[MARKET VALUE] - [Previous].[MARKET VALUE])获得正值。

如果是(Diff / Previous) > 1.15(Diff / Previous) < 0.85,请进行报告。

本文链接:https://www.f2er.com/3019392.html

大家都在问