菜鸟一枚,求各位大侠帮忙,表数据如下:
id kc xh score
1 语文 0023 70
2 语文 0024 76
3 语文 0025 68
4 数学 0023 15
5 数学 0024 68
6 数学 0025 95
7 数学 0026 73
8 英语 0023 77
9 英语 0024 69
10 英语 0025 12
11 英语 0026 54
12 语文 0026 34
求一条sql,列出不同课程分数最高的2条数据.
另外想大侠们分享下学习方法,
语法懂,但复杂的sql就是写不好.
id kc xh score
1 语文 0023 70
2 语文 0024 76
3 语文 0025 68
4 数学 0023 15
5 数学 0024 68
6 数学 0025 95
7 数学 0026 73
8 英语 0023 77
9 英语 0024 69
10 英语 0025 12
11 英语 0026 54
12 语文 0026 34
求一条sql,列出不同课程分数最高的2条数据.
另外想大侠们分享下学习方法,
语法懂,但复杂的sql就是写不好.
from tb A
where 2>(select count(*) from tb B where A.kc=B.kc and A.score<B.score)多写就行了
[征集]分组取最大N条记录方法征集,及散分....