第1
select v.* from (
select t.*,
sum(t.inoutflag*t.tradecnt) over(partition by itemid order by t.tradedate,rowid) as Amounttradecnt
fromV_iteambasetradestock t ) v
where v.Amounttradecnt >5
能出来数据
第2
select count(*) from (
select t.*,
sum(t.inoutflag*t.tradecnt) over(partition by itemid order by t.tradedate,rowid) as Amounttradecnt
fromV_iteambasetradestock t ) v
能出来数据
第3
select count(*) from (
select t.*,
sum(t.inoutflag*t.tradecnt) over(partition by itemid order by t.tradedate,rowid) as Amounttradecnt
fromV_iteambasetradestock t ) v
where v.Amounttradecnt >5
出现内部错误
我总结了下 就是用 sum(t.inoutflag*t.tradecnt) over(partition by itemid order by t.tradedate,rowid) as Amounttradecnt 的字段 在where后面加条件以后 就不能在前面(第2个的count)用count max 等方法
怎么搞 如果我要 计算出 Amounttradecnt 满足where或者什么条件下的count 怎么算
|