【问题标题】:Sql grabbing most recent recordSql抓取最近的记录
【发布时间】:2015-03-24 14:10:49
【问题描述】:

我目前正在使用 DBISAM sql 编译器。它与 ms sql 编译器非常非常相同,唯一的区别是我不能有任何嵌套的连接语句。

下面的查询是一个嵌套查询,它获取最近的贷款记录和利率。我想知道是否有另一种方法可以在没有嵌套 select 语句的情况下编写它。

select * from 
(select Loan_Id, Max(effectiveDate) as EffectiveDate from InterestTerms 
group by Loan_Id) as Y
join InterestTerms as X on Y.Loan_Id = X.Loan_Id and Y.EffectiveDate = X.EffectiveDate
order by Y.Loan_Id

【问题讨论】:

标签: sql dbisam


【解决方案1】:

您可以尝试以下方法:

select 
    X.*
FROM
    InterestTerms AS X
WHERE
    X.effectiveDate IN (
     select 
          Max(Y.effectiveDate) as MaxED  
     from 
          InterestTerms as Y
     WHERE
          Y.Loan_Id = X.Loan_Id
    ) 
order by 
    X.Loan_Id

(更新)

【讨论】:

  • 很抱歉 - 我没有注意到 DBISAM 中缺少 TOP 支持 - 请找到我的更新答案。
  • 没问题,我无法使用 DBISAM 休息一下...DBISAM Engine Error # 11949 SQL parsing error - Expected column name but instead found Y.Loan_Id in SELECT SQL statement 不过感谢您的帮助,非常感谢
  • 没问题。我希望你能找到解决办法。如果我知道更多,我会写。问候。
  • 你认为这可以使用左外连接来完成吗?
猜你喜欢
  • 2020-09-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多