- Модуль: main
- Путь к файлу: ~/bitrix/modules/main/classes/general/sql_util.php
- Класс: CSqlUtil
- Вызов: CSqlUtil::GetRowCount
static function GetRowCount(&$arSql, $tableName, $tableAlias = '', $dbType = '')
{
global $DB;
$tableName = strval($tableName);
$tableAlias = strval($tableAlias);
/*$dbType = strval($dbType);
if($dbType === '')
{
$dbType = 'MYSQL';
}
else
{
$dbType = strtoupper($dbType);
}*/
$query = 'SELECT COUNT('x') as CNT FROM '.$tableName;
if($tableAlias !== '')
{
$query .= ' '.$tableAlias;
}
if (isset($arSql['FROM'][0]))
{
$query .= ' '.$arSql['FROM'];
}
if (isset($arSql['WHERE'][0]))
{
$query .= ' WHERE '.$arSql['WHERE'];
}
if (isset($arSql['GROUPBY'][0]))
{
$query .= ' GROUP BY '.$arSql['GROUPBY'];
}
$rs = $DB->Query($query, false, 'File: '.__FILE__.'
Line: '.__LINE__);
//MYSQL, MSSQL, ORACLE
$result = 0;
while($ary = $rs->Fetch())
{
$result += intval($ary['CNT']);
}
return $result;
}