查询语句如下:
select * from love_vote l
having sum(l.Votecount)=max(select sum(Votecount) from love_vote
where (Votecontent is null) and VoteId=l.id)
order by ID desc
想实现对Votecount字段先按id字段分组求和,然后再求结果的最大值。可运行中报错,max函数中的表达式好像不能是子查询。各位弟兄看看应该怎样做?急!!
select * from love_vote l
having sum(l.Votecount)=max(select sum(Votecount) from love_vote
where (Votecontent is null) and VoteId=l.id)
order by ID desc
想实现对Votecount字段先按id字段分组求和,然后再求结果的最大值。可运行中报错,max函数中的表达式好像不能是子查询。各位弟兄看看应该怎样做?急!!
解决方案 »
- SSIS中如何调用存储过程返回
- sqlserver 返回字符 ansi 码
- 问一个简单问题.两表连接的问题.
- cast((实际表.数量/部件日经验数.经验数) as decimal(12,2)) AS 评分。出错了?
- SQL存储过程中要考虑并发问题,要怎么做?
- 这样的触发器怎样写?在线等...........................
- 关系型数据库之父 Edgar F. Codd逝世
- 请教大侠利用SQL语句如何判断一个数据库中有某个表和一个表中有某个字段?
- 我想将两个表分别group by后,再将相关的行组合在一起,如何写SQL
- 来帮个小忙吧!分一定给哦……
- 求一sql
- 跨服务器数据更新问题!!!
group by id
order by ID desc
(
id int,
num int
)insert into #t
select 1,3 union
select 2,5 union
select 1,6 union
select 2,11select id,max(num) from
(select id,sum(num) as num from #t
group by id)a
group by iddrop table #t
go--结果
1 9
2 16
select max(num) from
(select id,sum(num) as num from #t
group by id)a
报错:不能对包含聚合或子查询的表达式执行聚合函数。
FROM t
GROUP BY id
ORDER BY a DESC
INNER JOIN
(SELECT MAX(sv) ms,VoteID FROM
(SELECT SUM(VoteCount) sv,VoteId FROM love_vote GROUP BY VoteId) x
GROUP BY VoteID
) b
ON a.VoteId=b.VoteId
INNER JOIN
(SELECT sv,VoteID FROM
(SELECT SUM(VoteCount) sv,VoteId FROM love_vote GROUP BY VoteId) a
INNER JOIN
(SELECT MAX(sv) ms FROM
(SELECT SUM(VoteCount) sv,VoteId FROM love_vote GROUP BY VoteId) x
) b
ON a.sv=b.ms
) b
ON a.VoteId=b.VoteId
INNER JOIN
(SELECT sv,VoteID FROM
(SELECT SUM(VoteCount) sv,VoteId FROM love_vote GROUP BY VoteId) a
INNER JOIN
(SELECT MAX(sv) ms FROM
(SELECT SUM(VoteCount) sv,VoteId FROM love_vote GROUP BY VoteId) x
) b
ON a.sv=b.ms
) b
ON a.VoteId=b.VoteId