尝试获取时SQl有问题 [英] SQl proble m when try to fetch
本文介绍了尝试获取时SQl有问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
大家好我在SQL中有一个表,如下所示。我希望每周显示最多的投票图像。
投票imagename一周
4 a 1
3 b 1
1 c 1
1 d 1
2 c 2
3 d 2
答案
第1周-a
第2周-d
请帮助
解决方案
这样的事情应该有效
SELECT vote,imagename,weekd FROM< tableName> GROUP BY投票,一周ORDER BY投票DESC
CREATE 表 #Temp
(投票 int ,imagename varchar (< span class =code-digit> 20 ),weekid int )
INSERT INTO #Temp
SELECT 4 ,' a', 1
UNION
SELECT 3 ,' b', 1
UNION
选择 1 ,' c', 1
< span class =code-keyword> UNION
选择 1 ,< span class =code-string>' d', 1
UNION
选择 2 , ' c', 2
UNION
选择 3 ,' d', 2
SELECT T. * FROM #Temp T
INNER JOIN ( SELECT max(投票) as vote,weekid FROM #Temp GROUP BY weekid)SQ ON SQ.weekid = T .Weekid AND SQ.vote = T.Vote
ORDER BY weekid
删除 表 #Temp
Hi All i have a table in SQL as shown below. I want to display top most vote getting image per week.
vote imagename weekd
4 a 1
3 b 1
1 c 1
1 d 1
2 c 2
3 d 2
Ans
Week 1 -a
Week 2 -d
Please help
解决方案
something like this should work
SELECT vote, imagename, weekd FROM <tableName> GROUP BY vote, weekd ORDER BY vote DESC
CREATE Table #Temp ( vote int,imagename varchar(20),weekid int) INSERT INTO #Temp SELECT 4,'a',1 UNION SELECT 3,'b',1 UNION SElect 1,'c',1 UNION Select 1,'d',1 UNION SElect 2,'c',2 UNION Select 3,'d',2 SELECT T.* FROM #Temp T INNER JOIN (SELECT max(vote) as vote, weekid FROM #Temp GROUP BY weekid) SQ ON SQ.weekid = T.Weekid AND SQ.vote = T.Vote ORDER BY weekid Drop TABLE #Temp
这篇关于尝试获取时SQl有问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文