AG广东会,山东十一选五,大发

?
  • AG广东会400电话
  • 微网小程序
  • AI电话山东十一选五
  • 电商代运营
  • AG广东会,山东十一选五,大发:全 部 栏 目

    AG广东会400电话 网络优化推广 AI电话山东十一选五 呼叫中心 网站建设 商标?知产 微网小程序 电商运营 彩铃?短信 增值拓展业务
    oracle 分页 很棒的sql语句
    CREATE OR REPLACE PROCEDURE PROC6338196642095312503719(输入新闻主题 Varchar2,输入新闻内容 Varchar2,输入发布时间 Varchar2,输入当前页码 Number,输入每页行数 Number,输出当前页码 OUT Number,输出总行行数 OUT Number,输出总页页数 OUT Number,输入是否下页 Number,输入新闻编号 Varchar2,RETURN_CURSOR OUT CUSTOMTYPE.MYRCTYPE)
    --功能描述:
    --编写人:
    --编写日期:

    --如果返回结果集,必须使用自定义游标Return_Cursor
    IS --OR AS

    --变量定义区

    v_cPageCount integer; -- 要显示的数据总行数
    v_cPage integer; -- 要显示数据的当前页

    BEGIN

    --存储过程主体
    if 输入新闻编号 is null then
    begin
    --- 输出总行行数
    select max(rownum) into 输出总行行数 from(
    select * from xtnews where 1=1
    and 输入新闻主题 is null or (输入新闻主题 is not null and V_XWZT like '%'||输入新闻主题||'%')
    and 输入发布时间 is null or (输入发布时间 is not null and D_FBSJ = to_date(输入发布时间,'yyyy-mm-dd'))
    )where 输入新闻内容 is null or (输入新闻内容 is not null and V_XWNR like '%'||输入新闻内容||'%');

    -- 输出总页页数
    select ceil(输出总行行数/输入每页行数) into 输出总页页数 from dual;
    exception when no_data_found then
    null;
    end;
    -- 计算 输入当前页码 要显示的数据总行数
    if 输入当前页码 is not null then
    -- xia一页
    if 输入是否下页 = 1 then
    -- 计算 获取数据的当前页
    v_cPage := (输入当前页码 + 1);
    -- 最后一页
    if v_cPage > 输出总页页数 then
    v_cPage := 输出总页页数;
    end if;
    end if;
    -- shang一页
    if 输入是否下页 = 0 then
    -- 计算 获取数据的当前页
    v_cPage := (输入当前页码 - 1);
    -- 最前一页
    if v_cPage = 0 then
    v_cPage := 1;
    end if;
    end if;
    -- 要显示的数据总行数
    v_cPageCount := v_cPage * 输入每页行数;
    end if;
    end if;
    -- 执行查询 获取 要显示的数据
    begin
    open return_cursor for
    select nts.* from(
    select nt.* from (
    select rownum 序号,n.* from(
    select * from(
    select * from(
    select
    I_ID 新闻编号,
    V_XWZT 新闻主题,
    V_XWNR 新闻内容,
    D_FBSJ 发布时间,
    D_YXSJ 有效时间,
    V_FBBM 发布部门
    from xtnews
    where 1=1 and 输入新闻主题 is null or (输入新闻主题 is not null and V_XWZT like '%'||输入新闻主题||'%')
    )where 输入新闻内容 is null or (输入新闻内容 is not null and 新闻内容 like '%'||输入新闻内容||'%')
    )where 输入发布时间 is null or (输入发布时间 is not null and 发布时间 = to_date(输入发布时间,'yyyy-mm-dd'))
    )n where 输入新闻编号 is null or (输入新闻编号 is not null and 新闻编号 = 输入新闻编号)
    order by rownum
    )nt where nt.序号 = v_cPageCount order by 序号 desc
    )nts where nts.序号 > (v_cPageCount-输入每页行数) order by 序号;
    exception when no_data_found then
    null;
    end;

    -- 输出最后计算的当前页码
    if 输入新闻编号 is null and v_cPage is not null then
    输出当前页码 := v_cPage;
    end if;

    END;
    您可能感兴趣的文章:
    • oracle,mysql,SqlServer三种数据库的分页查询的实例
    • Oracle实现分页查询的SQL语法汇总
    • Oracle中使用Rownum分页详细例子
    • Oracle row_number() over()解析函数高效实现分页
    • 浅析Oracle和Mysql分页的区别
    • Oracle与Mysql主键、索引及分页的区别小结
    • Oracle、MySQL和SqlServe三种数据库分页查询语句的区别介绍
    • 分页技术原理与实现之Java+Oracle代码实现分页(二)
    • oracle分页存储过程 oracle存储过程实例
    • oracle实现一对多数据分页查询筛选示例代码
    上一篇:oracle dba 应该熟悉的命令
    下一篇:Oracle 存储过程总结(一、基本应用)
  • 相关文章
  • ?

    ? 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    oracle 分页 很棒的sql语句 oracle,分页,很,棒,的,sql,

    AG广东会官网入口(中国)官方网站-IOS/Android通用版(2026已更新)