2011-12-20 33 views
1

我有一个工会类型查询。我如何计算它查询的行数?计数mysql工会类型查询

mysql_query(
    " (SELECT 1 as sort_col,performerid,pic0 
      FROM $table 
      WHERE performerid IS NOT NULL $performeridSql) 
    UNION 
     (SELECT 2 as sort_col,performerid,pic0 
      FROM $table 
      WHERE performerid IS NOT NULL 
       $categorySql $buildSql 
       $breastsize $haircolor $age $ethnicity 
       $willingnessSql) 
      ORDER BY sort_col"); 
+0

IS NOT NULL之后,所有这些变量的含义是什么? – 2011-12-20 18:19:43

+0

如何做到这一点的一个例子:http://www.php.net/manual/en/function.mysql-query.php#81348或者你在寻找更多的解释计划? – 2011-12-20 18:20:08

+0

请注意,mysql扩展已过时,正在弃用。应该使用PDO或mysqli,这两种方法都有很多优点,例如准备好的语句。 – outis 2011-12-20 18:20:20

回答

0

简单地计算子查询结果...

SELECT COUNT(t.*) FROM 
( (SELECT 1 AS sort_col,performerid,pic0 
     FROM $table 
     WHERE performerid IS NOT NULL 
     $performeridSql) 
    UNION 
    (SELECT 2 AS sort_col,performerid,pic0 
     FROM $table 
     WHERE performerid IS NOT NULL 
     $categorySql $buildSql 
     $breastsize $haircolor $age $ethnicity 
     $willingnessSql) 
    ORDER BY sort_col) 
) AS t 
+0

它似乎不工作:( – webmasters 2011-12-20 18:28:01

+0

是的,正如你所看到的,我已经使用“AS t”为了告诉MySQL使用你的别名子查询。 – 2011-12-20 19:41:41