日期:2014-05-20  浏览次数:20501 次

给高手送分:30分求一sql语句!!!!!!!!!!!!!!!!!!!!!!!
表a(仓库信息表):sno(仓库编号)   cno(摄象头编号,主键)   cname(摄象头名称)
表b(摄象时间表):id(标识列)   cno(摄象头编号)   time(摄象时间,主键)
上面类型都是字符型,除了标识列整形,time为datetime型
sql语句要求出:某一sno下所有摄象头的cno和cname以及对应摄象头的最近一次的摄象时间!
高手帮帮我!

------解决方案--------------------
select a.cno,a.cname,c.time from a ,
(select cno,min(time) time from b group by cno) c
where a.sno = ' ' and a.cno =c.cno
------解决方案--------------------
Select a.sno,a.cno,a.cname
From a,b
Where a.cno = b.cno
group by a.sno,a.cno
Having b.cno=(Select cno From b where DateDiff(second,time,getdate())=(Select min(DateDiff(second,time,getdate()) From b)

试试这个看看行不行
------解决方案--------------------
select ta.sno,ta.cno,ta.cname,tb.maxt as [最近一次的摄象时间]
from (select sno,cno,cname from a where sno=@param) as ta
left join (select b.cno,max(time) as maxt from b
inner join ta on b.cno=ta.cno group by b.cno) as tb on ta.cno=b.cno

在你的查询中给出 @param 参数的值。

没有摄像时间的时候,那里会填入null。

------解决方案--------------------
select a.cno,a.cname,c.time from a , b where a.cno=c.cno and a.sno=@sno and c.time in (select max(c.time) from c where a.cno=c.cno and a.sno=@sno)
------解决方案--------------------
楼上的是不是有错啊,表c在哪啊
------解决方案--------------------
高人啊
这么多了 就不写 了
------解决方案--------------------
select a.cno,a.name,max(b.time) from a inner join b on a.cno = b.cno where a.sno= '谷仓name ' group by a.cno,a.name
------解决方案--------------------
-_-!