建设银行招聘网站,微信怎么创建公众号需要多少钱,潍坊网站制作发,网站开发要多少钱当使用ThinkPHP的分页查询时#xff0c;如果与having同时使用#xff0c;可能会出现错误。这是因为having会影响分页查询的结果。
解决方法是#xff0c;先不要使用分页查询#xff0c;先查询出所有数据#xff0c;再使用array_slice函数对数据进行分页。示例代码如下如果与having同时使用可能会出现错误。这是因为having会影响分页查询的结果。
解决方法是先不要使用分页查询先查询出所有数据再使用array_slice函数对数据进行分页。示例代码如下
$Model M(table);
$count $Model-where($map)-having($having)-count();//查询总数
$list $Model-where($map)-having($having)-select();//查询所有数据
$list array_slice($list, ($page-1)*$rows, $rows);//分页处理这样就可以避免由于having影响分页查询导致的错误。
还有一种方法 先获取执行的sql语句再使用子查询的方法参考代码如下
$sql db(adminloginlog)-field(admin_id,admin_name, FROM_UNIXTIME(login_time,%Y-%m-%d) AS login_date, COUNT(*) AS login_count, group_concat(distinct ip) AS ip_str,group_concat(distinct city,district) AS city_srt,COUNT(distinct ip) AS ip_count)-where($map)-group(admin_id, login_date)-having(login_count 2 and ip_count 1)-order(login_time DESC)-buildSql();
$res Db::table($sql)-alias(a)-paginate(20);
$lists $res-items();