1

这是表(后续):

在此处输入图像描述

我的问题是,我想fol_date为每个cust_name插入的数据选择最新的数据。我用红色箭头标记的示例结果。有人帮忙吗?

4

2 回答 2

4

这是一种可能的解决方案。

SELECT  a.*
FROM    tableName a
WHERE   a.fol_date =
        (
            SELECT  MAX(fol_date)
            FROM    tableName b
            WHERE   b.cust_name = b.cust_name
        )

或通过使用JOIN,

子查询的想法是fol_date为每个cust_name. 这已经为您提供了您想要的结果,但是如果您想获得行中的整个列,则需要将其连接到表本身,前提是它在两个条件下匹配,cust_name并且fol_date.

SELECT  a.*
FROM    tableName a
        INNER JOIN
        (
            SELECT  cust_name, MAX(fol_date) fol_date
            FROM    tableName 
            GROUP   BY cust_name 
        ) b ON  a.cust_name = b.cust_name AND
                a.fol_date = b.fol_date
于 2013-06-27T08:13:46.617 回答
1

尝试

SELECT cust_name, MAX(fol_date) as LatestDate
FROM FollowUp 
GROUP BY cust_name
于 2013-06-27T08:16:20.830 回答