|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
Memory所有数据置于内存的存储引擎,拥有极高的插入,更新和查询效率。但是会占用和数据量成正比的内存空间。并且其内容会在Mysql重新启动时丢失最年夜值伴侣出了个题,各有A,B,C三人做游戏,纪录第次得分,经几十次游戏后,成就以下:
IDNameScore
1a88
2b76
3c66
4c90
5b77
6a56
7b77
8c67
9a44
......
固然另有良多
请求搜刮A,B,C三人各最好成就,而且要列出最好成就的序号即ID号
如:
IDNameScore
1a88
5b77
4c90
最后我以为好象是低级的题,把目光放在最年夜值上,但随后就以为这重点不在最年夜值上,而是最年夜值地点的ID号。
标题难点:搜刮出最年夜值地点的ID号
破例情形:每一个人都大概呈现几个最年夜的值
动脑:入手下手先想到这MAX函数:
SELECTMAX(Score),[Name]GROUPBY[Name]
但这活该的ID号怎样也拔出不了
一线但愿:用了个子查询:
SELECT[ID],[Name],Score
FROMTable1a
WHEREScoreIN
(SELECTMAX(b.Score)ASMAXScore
FROMTable1b
GROUPBYb.[Name])
但是,这ID号仍是多出来了,缘故原由是因为该搜刮是以最年夜值的汇合作根据,如77这个最年夜值,多是B的最年夜值,可是A和C大概也会呈现77这个数,但不是最年夜值,以是......
成功,最初加了个前提,使最年夜值汇合中的Name值,与搜刮的Name值符合合
SELECT[ID],[Name],Score
FROMTable1a
WHEREScoreIN
(SELECTMAX(b.Score)ASMAXScore
FROMTable1b
GROUPBYb.[Name]HAVINGa.[Name]=b.[Name])
了局顺遂出来了局
常常是不起眼的成绩,很费脑
Memory所有数据置于内存的存储引擎,拥有极高的插入,更新和查询效率。但是会占用和数据量成正比的内存空间。并且其内容会在Mysql重新启动时丢失 |
|