我需要计算分页的结果数量。
演示查询
select A.order_id,
IF(
E.assign_date IS NOT NULL AND E.assign_date != '0000-00-00',
DATE_FORMAT(E.assign_date , '%d-%b-%y'),
(select data from other tables with other conditions)
) AS assign_date,
.......
where
.....
and assign_date > 2013-08-01
我使用的计数查询
Select count(A.order_id) from order A, size B, production E ........... where ....... and assign_date > 2013-08-01
我需要补充一点,如果条件让我可以正确计算结果
更长的版本
我已经检查了SO上发布的问题,但无法找到答案。我正在制作一个我正在展示分页的页面。
对于分页我使用了计数,这是有效的。计数查询没有这个条件。
对于实际查询,我希望我可以在这里发布我的整个查询,但如果排序好,则超过200多行。
对于分页,我使用以下查询。
$strQuery = "SELECT COUNT(DISTINCT(A.order_id)) AS totalRecs FROM $tbls WHERE $whereClause $WhereExt";
$tbls
和$whereClause
很长。
在orders
表格中,我有assing_on
日期字段,表示已将某个订单分配给某个订单进行生产。我已经从数据创建了结果列表页面,并在PHP中添加了检查,如果assign_on
date为空/ null。如果是,我正在运行另一个查询以获得估计的生产开始日期。
估计的生产开始日期获得计算和参数数量的日期
以上四点都在查询中,没有PHP工作涉及
数据提取查询具有此条件,并且计数查询此时没有此条件。
IF(
E.assign_date IS NOT NULL AND E.assign_date != '$mysqlEmptyDate',
DATE_FORMAT(E.assign_date , '" . reporting_DateFormat . "'),
($mustLoomStartDateQry_fm)
) AS assign_date,
我需要在count查询的where子句中再添加一个条件来检查aasign_date > one week from today
我是否只想知道如何在count部分添加这么长的查询,所以我只执行查询。
**编辑**
如果有人有兴趣查看完整查询http://pastebin.com/zqzbpEei,但请我提供此信息,仅为您提供见解......
答案 0 :(得分:0)
如果您需要分页,请尝试这个.......
$Query="select * from table_name_here where colunm_name='content_which_you_find'";
例如
$Query="select * from android where type='Casual'";
如果您不需要这样的条件,请将其删除......
喜欢$Query="select * from android";
现在使用此
执行上述查询$Result=mysql_query($Query);
现在使用此
选择总行数$TotalRows=mysql_num_rows($Result);
$onepage=9;
将9以上更改为您希望在一个页面中显示记录的数量
现在粘贴以下代码以获取分页
$d=($page-1)*$onepage;
$SqlQuery="select * from android where type='Casual' order by id desc LIMIT $d, $onepage";
$ResultSql=mysql_query($SqlQuery) or die("error1?");
现在把循环打印到数据
while($row = mysql_fetch_array($ResultSql))
{
echo $row[1];
echo $row[2];
}
现在放在代码下面
for($i=1;$i<=$np;$i++)
{
echo "<a href='currnt_page_name_here.php?page=$i'> $i </a>";
}
如果有任何错误告诉我,请立即尝试