id Datum Steuersatz Steuersatz%
1 1983-07-01 2 .07
2 1998-04-01 1 .16
3 2007-01-01 1 .19
它包含在另一个税率取代之前保持有效的税率(Steuersatz%)。因此,它可以随时扩展:
4 2015-01-01 2 .09
我有日期(Datum)和Steuersatz(值1或2)。现在,问题是,什么是正确的Steuersatz%值?
这是我到目前为止所做的:
SELECT \"Steuersatz%\" FROM USt
WHERE Steuersatz = 1
AND …
我需要在FileMaker中使用ExecuteSQL()
语句,其中只支持一些基本的SQL语法。
示例结果:
.16 <= Steuersatz = 1 , Date = 2006-12-31
.07 <= Steuersatz = 2 , Date = 2006-12-31
.07 <= Steuersatz = 2 , Date = 2014-12-31
非常感谢您的帮助!
加里
答案 0 :(得分:0)
您需要使用相关子查询(我希望它在FileMaker中得到支持)
select Steuersatz%
from USt
where Steuersatz = 1
and Datum = (select max(Datum)
from USt
where Steuersatz = 1
and Datum <= your_date)
答案 1 :(得分:0)
这就像FileMaker函数一样:
Let ( [ _sts = 1 ;
_d = Date ( 12 ; 31 ; 2014 ) ;
_query = "
SELECT \"Steuersatz%\" FROM USt
WHERE Steuersatz = ?
AND Datum = ( SELECT MAX(Datum)
FROM USt
WHERE Steuersatz = ?
AND Datum <= ?
)
" ;
_% = ExecuteSQL ( _query ; "" ; "" ; _sts ; _sts ; _d ) ;
] ;
_%
)