如何使用 SQL 在 FileMaker 中查找最近的日期
How do I find Closest dates in FileMaker using SQL
找到两个表之间最接近的日期匹配的明确方法
你好,我有一个学校项目,我必须将数学导出的天数添加到高日期和低日期,然后评估导出的转折点到我的历史结果。我在 FileMaker 19 中有三个表:
带有 TurnDate 字段的 HighLowData
有20个公式的数学
TurningPoints 由使用 HighLowDate::TurnDate.
循环数学公式的脚本创建
因此每个 HighLowDate::TurnDate 产生 20 TurningPoints::cTPdate 个条目。
我在 TurningPoints cLookup 中有一个字段,我希望在其中计算 HighLowData 中最接近我的 cTPdate 的 TurnDate。
我已经尝试执行SQL ( "SELECT TurnDate FROM HighLowData JOIN TurningPoints ORDER BY ABS (HighLowDate::TurnDate - TurningPoints::cTPdate) FETCH FIRST 1 ROW ONLY"; "";"")
我承认 SQL 在我的舒适区之外。有没有其他方法可以完成任务,或者我的 SQL 可以整理一下工作吗?我知道 DATEDIFF 不适用于 FileMaker。
我尝试了 LookupNext,但它只是返回了所选行的实际 TurnDate。
提前致谢
SQL 没问题。我会使用不同的方法。
开始于
ExecuteSQL
("SELECT cTPdate
FROM TurningPoints
WHERE cTPdate >=?
ORDER BY cTPdate DESC
FETCH FIRST 1 ROW ONLY
";
"";"";HighLowDate::TurnDate)
这将为您提供未来日期最接近的匹配项
反转查询,您将获得过去最接近的匹配
然后你可以比较这两天和你的日期之间的差异,得到最接近的匹配。
如果需要作为计算器可以使用 Let 语句
找到两个表之间最接近的日期匹配的明确方法 你好,我有一个学校项目,我必须将数学导出的天数添加到高日期和低日期,然后评估导出的转折点到我的历史结果。我在 FileMaker 19 中有三个表:
带有 TurnDate 字段的 HighLowData
有20个公式的数学
TurningPoints 由使用 HighLowDate::TurnDate.
循环数学公式的脚本创建因此每个 HighLowDate::TurnDate 产生 20 TurningPoints::cTPdate 个条目。
我在 TurningPoints cLookup 中有一个字段,我希望在其中计算 HighLowData 中最接近我的 cTPdate 的 TurnDate。
我已经尝试执行SQL ( "SELECT TurnDate FROM HighLowData JOIN TurningPoints ORDER BY ABS (HighLowDate::TurnDate - TurningPoints::cTPdate) FETCH FIRST 1 ROW ONLY"; "";"")
我承认 SQL 在我的舒适区之外。有没有其他方法可以完成任务,或者我的 SQL 可以整理一下工作吗?我知道 DATEDIFF 不适用于 FileMaker。
我尝试了 LookupNext,但它只是返回了所选行的实际 TurnDate。 提前致谢
SQL 没问题。我会使用不同的方法。
开始于
ExecuteSQL
("SELECT cTPdate
FROM TurningPoints
WHERE cTPdate >=?
ORDER BY cTPdate DESC
FETCH FIRST 1 ROW ONLY
";
"";"";HighLowDate::TurnDate)
这将为您提供未来日期最接近的匹配项
反转查询,您将获得过去最接近的匹配
然后你可以比较这两天和你的日期之间的差异,得到最接近的匹配。
如果需要作为计算器可以使用 Let 语句