zoukankan      html  css  js  c++  java
  • 查询数据库中第n行数据

    一般情况下分页的时候是需要的关键字。Oracle中则是rownum,MSSQL中是top关键字,MySQL中是limit关键字。

    查第n条数据,如:(1)select * from (SELECT ROWNUM rn,A.* FROM TABLE A )b where b.rn=n;
    (2)select top 1 * from TABLE A where id not in(select top n-1 id from TABLE A );

    (3)用mysql数据库查询第n条数据, select * from  TABLE A  limit n-1,1;

    (4)还有种方法是查询表中所有数据,放入list中,然后从list中取第n-1行数据;

    使用 ROWNUM 实现分页显示 SELECT * FROM (SELECT ROWNUM AS ROW_NUM, A.* FROM (SELECT * FROM tab3 T ORDER BY a DESC) A ) B WHERE B.ROW_NUM BETWEEN 1 AND 3;

    伪列是指那些可以像表中的列一样用在SELECT中但不作为用户数据在表中存储的特殊标识, 它们可以被选择(使用SELECT),但不能被删除(DELETE)和更新(UPDATE)。
    ROWNUM的本质是一个伪列,它的作用是对结果集加的一个伪列(即先查到结果集之后再加上去的一个列)简单的说rownum是对符合条件结果集添加的序列号。
    它总是从1开始排起的,所以选出的结果中不可能没有1,而有其他大于1的值。
    任何时候想把 rownum = 1 这条记录抛弃是不对的,它在结果集中是不可或缺的,少了rownum=1 就像空中楼阁一般不能存在,所以你的 rownum 条件要包含到 1。
    那么,如果想要用 rownum > 5 这种条件的话就要用子查询,把rownum先生成,然后再对生成结果进行查询。
    示例:
    SELECT * FROM (
    SELECT e.*, rownum r FROM employee WHERE rownum <= 10
    ) t WHERE t.r > 5;

  • 相关阅读:
    System.Net.Http.HttpClient POST 未能创建 SSL/TLS 安全通道
    SQL Server用户权限查询
    IIS 7 Deploy .Net Framework 4.8 Application
    System.Net.Http.HttpClient 模拟登录并抓取弹窗数据
    HtmlAgilityPack Sample
    嵌套 struct & class 的遍历
    SQL循环插入测试数据
    windows文本转语音 通过java 调用python 生成exe可执行文件一条龙
    Centos8 删除了yum.repos.d 下面的文件
    nacos 配置
  • 原文地址:https://www.cnblogs.com/fzdsy/p/10384485.html
Copyright © 2011-2022 走看看