今日弄了点小东西,需要做一个sqlsrv的分页函数

最后也没弄成,算了,干脆有些东西写死了...

pdo_exequery为自己弄的一个pdo的查询封装函数

主要是基于这个处理:

preg_replace("/(t|T)(o|O)(p|P])\s\d{1,12}/","","select top 100 *");

首先要接收pageid及pagesize

if(isset($_GET["pageid"]))$intCurrentPage = $_GET["pageid"];

else

$intCurrentPage = 1;

$intPageSize = 20;

然后

设置一个分页时一个基准的orderid

$orderbyid="FItemID";

然后构建一个SQL用于获得总行数且包含分页的处理

$curcuror=$intCurrentPage*$intPageSize;

$SQL="select top $curcuror a.FNumber,a.FItemID,a.FName,a.FModel,d.fname as measureunits,e.fname as secmeasureunits from ".$tablename." a left join t_MeasureUnit d on a.FUnitID=d.FMeasureUnitID left join t_MeasureUnit e on a.FSecUnitID=e.FMeasureUnitID where 1=1 ";

然后进行替换,查询总行数

$newSQL=preg_replace("/(t|T)(o|O)(p|P])\s\d{1,12}/","",$SQL);

$ROW=pdo_exequery($pdo_msconnection,$newSQL);

$inumber=0;

if($ROW)$inumber=count($ROW);

最后是进行SQL的处理

if($intCurrentPage ==null)$intCurrentPage=1;

$intRecordTotal = $inumber;

if($intCurrentPage!="all"){

$intPageCount = intval(($intRecordTotal-1) / $intPageSize)+1;

if($intPageCount==0)$intPageCount=1;

if ($intCurrentPage > $intPageCount) {$intCurrentPage = $intPageCount;}

$intStart = $intPageSize * ($intCurrentPage - 1);

$offset=$intPageSize*($intCurrentPage-1);

if ($offset<0){$offset=0;}

//主要在于这里,进行了分页的SQL合并

$SQL="select * from (select top $intPageSize * from ($SQL)o1 order by $orderbyid desc)o2 order by $orderbyid asc";

}

else

{

$intCurrentPage=1;

$intPageCount=1;

}

$ROW=pdo_exequery($pdo_msconnection,$SQL);

$inumber=0;

if($ROW)$inumber=count($ROW);

此处即可进行数据的处理了

缺陷在于只能进行一个order by的处理,如果有其他需要,依样画葫芦,应该是没问题的

php pdo查询sqlserver,php pdo sqlserver分页sql的处理相关推荐

  1. PHP pdo查询sqlite,PHP PDO 操作 sqlite数据库 案例

    PHP PDO 操作 sqlite数据库 案例 1.需求: 已知: 1).一个json文件,里面是一个二维数组,数组解析出来为: array ( 0 => array ( 'title' =&g ...

  2. mysql pdo查询语句,PHP PDO准备语句 – mysql LIKE查询

    这是我的第一篇文章Overflow,但我发现现有的知识体系非常有帮助.无论如何,这里是我的问题: 我试图做一个搜索通过php的PDO类(mysql驱动程序).我有以下查询使用mysql客户端(表名改为 ...

  3. php pdo 查询语句,PHP PDO准备的语句-MySQL LIKE查询

    我正在尝试通过php的PDO类(mysql驱动程序)进行搜索.我在MySQL客户端上使用以下查询(更改表名以保护无辜者): SELECT    hs.hs_pk, hs.hs_text, hs.hs_ ...

  4. sql server与oracle的分页,详解SQLServer和Oracle的分页查询

    不管是DRP中的分页查询代码的实现还是面试题中看到的关于分页查询的考察,都给我一个提示:分页查询是重要的.当数据量大的时候是必须考虑的.之前一直没有花时间停下来好好总结这里.现在又将Oracle视频中 ...

  5. sqlserver+go(gin 框架) 分页查询

    使用方法: page, _ := strconv.Atoi(c.DefaultPostForm("page", "1")) // 页码 起始页为1limit, ...

  6. SQL快速入门、查询(SqlServer)[郝斌SqlServer完整版]

    文章目录 SQL学前导图 一 .基本信息 1 相关名词 数据库相关基本概念:字段.属性.记录(元祖).表.主键.外键 2 基本语句 3 约束:主键约束.外键约束.check约束.default约束.唯 ...

  7. pdo mysql防注入_Php中用PDO查询Mysql来避免SQL注入风险的方法

    当我们使用传统的 mysql_connect .mysql_query方法来连接查询数据库时,如果过滤不严,就有SQL注入风险,导致网站被攻击,失去控制.虽然可以用mysql_real_escape_ ...

  8. php mysql PDO 查询操作的实例详解

    php mysql PDO 查询操作的实例详解 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 ...

  9. php$this-conn可以不先定义吗,CodeIgniter 是不是支持PDO 查询?还是本来就不支持

    CodeIgniter 是否支持PDO 查询?还是本来就不支持? 本帖最后由 default7 于 2014-11-15 19:34:55 编辑 配置CodeIgniter 的database 连接方 ...

  10. Oracle、DB2、SQLSERVER、Mysql、Access分页SQL语句梳理

    最近把平时在项目中常用到的数据库分页sql总结了下.大家可以贴出分页更高效的sql语句. sqlserver分页 第一种分页方法 需用到的参数: pageSize 每页显示多少条数据 pageNumb ...

最新文章

  1. 网友评选2020年人生十大遗憾,考好大学列在第一
  2. 一文看懂全球半导体格局
  3. 算法导论之每对顶点间的最短路径
  4. c语言实现排列组合:实现matlab中的nchoosek函数
  5. ASP将查询数据导出EXCEL
  6. weevely-------linux中的菜刀(转载)
  7. jmap, jhat, jvisualvm:java堆内存对象分析利器
  8. 微信iOS版内测暗黑模式;涉嫌恶意举报,社交平台Soul运营合伙人被批捕;AWS推出基于Linux开源操作系统 | 极客头条...
  9. 世界计算机模拟 波粒,光的波粒二象性的计算机模拟.pdf
  10. spring对redis的操作
  11. ECMAScript 5 —— 基本包装类型之String(下)
  12. 群晖nas存储系统原理_群晖NAS入门教程第四节:群晖存储空间管理员功能和磁盘阵列类型的简介...
  13. 在线播放m3u8和ts的方法
  14. Python爬取天堂网图片
  15. 深眸分享——一文看懂倍频器的原理及其应用
  16. 2021年山东省安全员C证模拟考试及山东省安全员C证作业模拟考试
  17. Multi class ovr or ovo
  18. 【目标检测竞赛总结】IEEE UV 2022 “Vision Meets Algae” Object Detection Challenge
  19. js gbk与UTF8 转换
  20. C#WinForm实现对Excel的数据处理

热门文章

  1. 安装MYSQL出现checking for termcap functions
  2. 关于母板页中runnat=server 窗体标记的问题
  3. 将图片上传到数据库 因File.Open遭遇System.UnauthorizedAccessException
  4. node.js环境搭建超详细图文教程
  5. linux网络防火墙-iptables基础详解
  6. faster rcnn源码阅读笔记2
  7. day-1 用python编写一个简易的FTP服务器
  8. 初步了解python
  9. MySQL如何使用索引 较为详细的分析和例子
  10. 关于sql server 代理(已禁用代理xp)