gpt4 book ai didi

oracle 分页 很棒的sql语句

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 24 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章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 分页 很棒的sql语句的文章就讲到这里了,如果你想了解更多关于oracle 分页 很棒的sql语句的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com