两张表[t_Class][t_Article]首先提取[t_Class]中的top 4
select top 4 c_Id,c_Name from [t_Class] order by c_Order ASC再根据查询到的 c_Id 来获取[t_Article]中的最新一篇文章与之一一对应
select top 1 a_Id,a_Title from [t_Article] where a_ClassId=[上面查询的到的c_Id] order by a_Addtime DESC求以上说明中的一个组合查询,谢谢

解决方案 »

  1.   

    select top 1 a_Id,a_Title from [t_Article] where a_ClassId=(select top 1 *
    from (select top 4 c_Id,c_Name from [t_Class] order by c_Order ASC) t
    order by a_Id desc)
      

  2.   

    select top 1 a_Id,a_Title from [t_Article] where a_ClassId=(select top 1 c_Id
    from (select top 4 c_Id,c_Name from [t_Class] order by c_Order ASC) t
    order by a_Id desc)手误修正
      

  3.   

    为什么不直接在t_Class查询TOP1 再对应?
      

  4.   

    select
     top 1 a_Id,a_Title 
    from
     [t_Article] t
    where
     a_ClassId=(select max(c_Id) from (select top 4 c_Id,c_Name from [t_Class] order by c_Order ASC)t)
      

  5.   

    --2005
    ;with t as
    (
      select top 4 rn=row_number()over(ORDER by c_Order),*
      from [t_Class]
    )
    select top 1 a.a_Id,a.a_Title
    from [t_Article] a,t
    where a.a_ClassId=t.c_Id
      

  6.   

    --2005
    ;with t as
    (
      select top 4 rn=row_number()over(ORDER by c_Order),*
      from [t_Class]
    )
    select top 1 a.a_Id,a.a_Title
    from [t_Article] a,t
    where a.a_ClassId=t.c_Id
      and t.rn=4MODIFY
      

  7.   

    select top 1 a.a_Id,a.a_Title 
    from t_Class c inner join t_Article a
    on c.c_Id=a.a_ClassId
    order by c.c_Order asc,a.a_Addtime DESC
      

  8.   

    select * from t_Article t,(select top 4 c_Id from [t_Class] order by c_Order ASC) t1
    where t.a_ClassId=t1.a_ClassId 
    and t.a_Id =(select top 1 a_Id 
                   from [t_Article] 
                   where t.a_ClassId=a_ClassId )
    order by a_Addtime DESC
    试试看,有数据吗
      

  9.   

    xys_777能得到数据
    只不过得到的3条,将 top 4 改成 5 就可以得到我想要的了
      

  10.   

    select top 1 a_Id,a_Title from [t_Article] where a_ClassId=(select top 1 *
    from (select top 4 c_Id,c_Name from [t_Class] order by c_Order ASC) t
    order by a_Id desc)