select a.id,b.name,b.desc,c.cdate from
tableA as a inner join tableB as b on a.id=b.id
inner join
(
select top 1 [id],cdate from tableC where id= a.id order by date desc
) as c on a.id=c.id这语句是错的,我的目地是,返回tableC 表中的日期最近的一个谢谢!
tableA as a inner join tableB as b on a.id=b.id
inner join
(
select top 1 [id],cdate from tableC where id= a.id order by date desc
) as c on a.id=c.id这语句是错的,我的目地是,返回tableC 表中的日期最近的一个谢谢!
tableA as a inner join tableB as b on a.id=b.id
inner join
(
select top 1 [id],cdate from tableC order by date desc
) as c on a.id=c.id
tableA as a inner join tableB as b on a.id=b.id
inner join
(
select top 1 [id],cdate from tableC order by date desc
) as c on a.id=c.id
tableA as a inner join tableB as b on a.id=b.id
CROSS APPLY
(
select top 1 [id],cdate from tableC where id= a.id order by date desc
) ;
--2000select a.id,b.name,b.desc,c.cdate from
tableA as a inner join tableB as b on a.id=b.id
inner join
(
select [id],MAX(cdate) AS cdate from tableC GROUP BY id
) as c on a.id=c.id
from tableA as a
inner join tableB as b
on a.id=b.id
inner join
(
select top 1 [id],cdate from tableC where id= a.id order by cdate desc
) c on a.id=c.id ??
select a.id,b.name,b.desc,c.cdate from
tableA as a inner join tableB as b on a.id=b.id
inner join
(
select [id],max(cdate) from tableC group by [id]
) as c on a.id=c.id try..
a.[id],b.[name],b.[desc],c.[cdate]
from
tableA as a
inner join
tableB as b
on
a.id=b.id
inner join
tableC as c
on
a.id=c.id and not exists(select 1 from tableC where id= a.id and date>c.[date])
select a.id,b.name,b.desc,c.cdate from
tableA as a inner join tableB as b on a.id=b.id
inner join
(
select [id],MAX(cdate) AS cdate from tableC GROUP BY id
) as c on a.id=c.id
tableA as a
inner join tableB as b on a.id=b.id
inner join
(
select [id],max(cdate) from tableC ordy by id
)
as c on a.id=c.id
tableA as a inner join tableB as b on a.id=b.id
inner join
(
select [id],MAX(cdate) AS cdate from tableC GROUP BY id
) as c on a.id=c.id 大家还有没更好的办法,谢谢!!!!!!
tableA as a inner join tableB as b on a.id=b.id
inner join
(
select [id],MAX(cdate) AS cdate from tableC GROUP BY id
) as c on a.id=c.id
inner join tbC AS D
ON c.id=D.id and c.cdate = D.cdate
select
a.[id],b.[name],b.[desc],c.[cdate]
from
tableA as a
inner join
tableB as b
on
a.id=b.id
inner join
tableC as c
on
a.id=c.id and not exists(select 1 from tableC where id= c.id and cdate>c.[cdate])
这样呢?
b.name,
b.[desc],
c.cdate
From tableA As a
Inner Join tableB As b On a.id=b.id
Inner Join tableC As c On c.id=a.id
And c.cdate=(Select Max(cdate) From tableC Where id=c.id)