- Модуль: clouds
- Путь к файлу: ~/bitrix/modules/clouds/lib/filehash.php
- Класс: BitrixCloudsFileHashTable
- Вызов: FileHashTable::getDuplicatesStat
static function getDuplicatesStat($bucketId)
{
$bucketId = intval($bucketId);
$connection = BitrixMainApplication::getConnection();
$sql = "
select sum(DUP_COUNT) DUP_COUNT, sum(DUP_SIZE) DUP_SIZE
from (
select
b_file_hash.FILE_SIZE
,b_file_hash.FILE_HASH
,count(distinct b_file.SUBDIR, b_file.FILE_NAME)-1 DUP_COUNT
,(count(distinct b_file.SUBDIR, b_file.FILE_NAME)-1) * b_file_hash.FILE_SIZE DUP_SIZE
from
b_file_hash
inner join b_file on
b_file.ID = b_file_hash.FILE_ID
where
b_file.HANDLER_ID = " . $bucketId . "
group by
b_file_hash.FILE_SIZE, b_file_hash.FILE_HASH
having
count(distinct b_file.SUBDIR, b_file.FILE_NAME) > 1
) t
";
return $connection->query($sql)->fetch();
}