SQL表与max

时间:2018-05-04 11:53:16

标签: sql asp.net join max

我正在使用两张桌子。我在表A中有一个完整的组列表,以及表B中已审查过的每个组成员的列表。因此,表B是每个组成员的所有审阅记录的日志。

select a.Group_Name, Max(b.Request_Review_Date)
From GroupTable a
Left Outer Join GroupReviews b ON a.Group_Name = b.Group_Name
Group By a.Group_Name

我想要返回的是表A中的完整组列表,并从表B中找到每个组的最新审核日期。

我研究并尝试了所有或大部分的内部和外部外连接,应用方法......但它只是没有给我结果。谁能指出我正确的方向?或者我必须带回两个结果集并在我的ASP代码中进行比较?

2 个答案:

答案 0 :(得分:0)

如果您需要所有a.group名称行的max值,则ypu应该加入子查询以获取最大日期

select a.Group_Name, t.max_date 
left join (

select b.Group_Name, Max(b.Request_Review_Date) max_date
from GroupReviews b 
Group By b.Group_Name
) t  on t.Group_Name = a.Group_Name

答案 1 :(得分:0)

尝试CTE然后再加入

   WITH Recent AS
  (

  select group_name, max(Request_Review_Date) AS 'MaxReviewDate'
  from GroupReviews
  group by  group_name


  )
    select a.group_name, MaxReviewDate
    from GroupTable a left join Recent 
    on group_name = a.group_name