zoukankan      html  css  js  c++  java
  • 一条sql语句,查询出全部分类各前10记录

    一条sql语句,查询出全部分类各前10记录

    如一班级成绩表

    现建立课程表 tableA

    sid           sname
    1             语文
    2             数学
    3             英语
    .......

    在建学生成绩库 tableB

    id         sid           fen            name
    1          1             100           张三
    2          1              89            李四
    3          1              95            王五
    4          2             89             张三
    5          3             78             王五
    6          2             99             王五
    .....

    现使用


    可以显示出所有科目前10名单

    select a.sid,sname,id,fen,name from tableA a inner join
    (
    select * from tableB b
    where id in(
        
    select top 10 id from tableB where sid=b.sid
        
    order by fen desc)) as b
    on a.sid=b.sid
    order by a.sid,fen desc

    SELECT sid, sname, fen,name
    FROM (SELECT px =
                      (
    SELECT COUNT(1+ 1
                     
    FROM tableB
                     
    WHERE sid = b.sid AND fen > b.fen), a.sid, a.sname, b.fen,b.name
            
    FROM tableA a JOIN
                  tableB b 
    ON a.sid = b.sid) t
    WHERE (px <= 10)
    ORDER BY sid, fen DESC
  • 相关阅读:
    我要把铁路修到威斯特摩兰
    1新建空白jasperreport模板
    oracle权限
    swagger配置
    lombok插件基本使用
    oracle与sqlserver的区别
    yaml语法学习
    第一个SpringBoot
    spring多环境切换
    JSR303数据校验
  • 原文地址:https://www.cnblogs.com/tangself/p/1654623.html
Copyright © 2011-2022 走看看