表:主键:id
"id""s_id""s_n""s_s"
1"001"112
2"001"211
3"001"3121
4"002"113
5"002"2132
6"003"155如何能求出这些s_n中按序号升序排列后2条数据
如:001的2—3,002的1—2,003的1—1的数据
即:
"id""s_id""s_n""s_s"
2"001"211
3"001"3121
4"002"113
5"002"2132
6"003"155

解决方案 »

  1.   

    表:student
    id s_id s_n s_s
    1 "001" 1 12
    2 "001" 2 11
    3 "001" 3 121
    4 "002" 1 13
    5 "002" 2 132
    6 "003" 1 55
    如何能求出这些s_n中按序号升序排列后2条数据
    如:001的2—3,002的1—2,003的1—1的数据
    即:
    人员     序号    成绩
    001       2       11
    001       3       121
    002       1       13
    002       2       132
    003       1       55
    请给出PL/SQL语句
      

  2.   

    你的字段无法区分,给你一部分吧,
    rownuber over(partition by 人员 order by 序号) rn
    where rn<=2