У меня есть запрос типа объединения. Как я могу подсчитать количество строк, которые он запрашивает?
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");
Просто подсчитайте результаты подзапроса …
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
Если вам нужны результаты в дополнение к счету, такие как mysqli_result::num_rows
или PDOStatement::rowCount
вернут то, что вы хотите. В противном случае запустите запрос в качестве подзапроса, а затем примените функцию агрегации COUNT
к результату.