• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/orm/query/query.php
  • Класс: BitrixMainORMQueryQuery
  • Вызов: Query::queryCountTotal
public function queryCountTotal()
{
	if ($this->query_build_parts === null)
	{
		$this->buildQuery();
	}

	$buildParts = $this->query_build_parts;

	//remove order
	unset($buildParts['ORDER BY']);

	//remove select
	$buildParts['SELECT'] = "1 cntholder";

	foreach ($buildParts as $k => &$v)
	{
		$v = $k . ' ' . $v;
	}

	$cntQuery = join("n", $buildParts);

	// select count
	$cntQuery = /** @lang text */
		"SELECT COUNT(cntholder) AS TMP_ROWS_CNT FROM ({$cntQuery}) xxx";

	return $this->entity->getConnection()->queryScalar($cntQuery);
}