加入两个查询得到聚合函数错误

时间:2014-03-27 11:27:48

标签: sql sql-server

我有两个查询 1→ select top 10 * from transaction_tbl order by transactID desc这是我正在使用我的交易表中的最后10个交易 2→

select  avg( datediff(mi,t.dtime, t.PAICdate )) as 
Average  from transaction_tbl t where locid=6   

此查询用于获取两个日期之间的平均时间差异。 这两个查询工作正常..
我想平均时间差异只有最近10次交易

所以我尝试加入这两个查询:

select top 10 avg( datediff(mi,t.dtime, t.PAICdate )) as Average
from transaction_tbl t
where locid = 6
group by transactID
order by transactID desc;

但我得到的结果是这样的: enter image description here

我想获得最近10条记录的总平均值

2 个答案:

答案 0 :(得分:1)

使用这样的嵌套查询:

select  avg( datediff(mi,t.dtime, t.PAICdate )) as Average  
from (
    select top 10 * from transaction_tbl where locid=6 order by transactID desc
) t

答案 1 :(得分:0)

我想你想按TransactId分组:

select top 10 avg( datediff(mi,t.dtime, t.PAICdate )) as Average
from transaction_tbl t
where locid = 6
group by transactID
order by transactID desc;

您的查询失败,因为在汇总后不知道TransactID