2012-04-20 3 views
1

Я пишу функцию CLR userdefinedAggregate для реализации медианы. Хотя я понимаю всю другую функцию, которую я должен реализовать. Я не понимаю, что такое функция слияния.Что такое использование функции Merge SQL Clr?

Я получаю неопределенное представление о том, что если агрегированная функция частично оценивается (т. Е. Оценивается для некоторых строк с одной группой, а другая - в другой), то значения должны быть агрегированы. Если в этом случае есть способ проверить это?

Пожалуйста, дайте мне знать, если что-либо из вышеизложенного не ясно или вам нужна дополнительная информация.

ответ

2

Ваша неопределенная идея верна.
От Requirements for CLR User-Defined Aggregates

Этот метод может быть использован, чтобы объединить другой экземпляр этого класса совокупного с текущим экземпляром. Обработчик запросов использует этот метод для объединения нескольких частичных вычислений агрегации.

Параметр для объединения - это еще один экземпляр вашего агрегата, и вы должны объединить агрегированные данные в этом экземпляре с вашим текущим экземпляром.
Вы можете взглянуть на образец string concatenate aggregate. Метод merge добавляет конкатенированные строки из этого параметра в текущий экземпляр класса aggregate.

Смежные вопросы