|
Расчет перцентилей по числовому массиву | ☑ | ||
---|---|---|---|---|
0
Lepochkin
05.12.16
✎
15:06
|
Всем доброго времени суток. Столкнулся с задачкой описанной в теме. Собственно в стандартных инструментах sql или Excel этот механизм реализован. В 1с никак не могу найти.
|
|||
1
PLUT
05.12.16
✎
15:11
|
(0) рассчитай перцентиль в Excele. 1C умеет Excel юзать
|
|||
2
b_ru
05.12.16
✎
15:17
|
Открой википедию, почитай, реализуй. Делов то на два часа.
|
|||
3
Lepochkin
05.12.16
✎
15:25
|
А никто случайно в скульный запрос не пихал таблицу значений 1совскую?
|
|||
4
bolobol
05.12.16
✎
15:33
|
(3) Регулярно так делаем.
|
|||
5
Lepochkin
05.12.16
✎
15:34
|
(4) Не поделитесь примерчиком?
|
|||
6
bolobol
05.12.16
✎
15:40
|
(5) А пожалуйста:
Запрос.УстановитьПараметр("ТЗ", ТЗ); Всё, ТЗ в запросе! Ежели база скульная - ТЗ окажется в скульном запросе. |
|||
7
Lepochkin
05.12.16
✎
15:42
|
Это то понятно. Мне нужно в родной sql запрос ее пихнуть. В нем есть готовая функция расчета перцентиля...
|
|||
8
Lepochkin
05.12.16
✎
17:33
|
Решил вопрос вот так.
СсылкаНаОбъект = Справочники.ВнешниеОбработки.НайтиПоНаименованию("ADODB"); ИмяФайла = ПолучитьИмяВременногоФайла(); ДвоичныеДанные = СсылкаНаОбъект.ХранилищеВнешнейОбработки.Получить(); ДвоичныеДанные.Записать(ИмяФайла); ADODB = ВнешниеОбработки.Создать(ИмяФайла); ADODB.База = "PRICE_MANAGER_V2"; ADODB.Сервер = "omega"; ADODB.Пользователь = "sa"; ADODB.Пароль = "Zwergnase2014"; ADODB.MSSQL_Подключение(); ТекстЗапроса = "select | [tt].[kod], | PERCENTILE_DISC(0.5) WITHIN GROUP (ORDER BY [tt].[Price]) OVER (PARTITION BY [tt].[Kod]) AS MedianCont |from |("; Для Каждого Стр Из ТаблицаДанных Цикл Если Стр.НомерСтроки > 1 Тогда ТекстЗапроса = ТекстЗапроса + " |union |" КонецЕсли; ТекстЗапроса = ТекстЗапроса + "select |"+формат(Стр.Код,"ЧГ=0")+" as [Kod], |"+?(Стр.Цена=0,"0",формат(Стр.Цена,"ЧГ=0"))+" as [Price] |"; КонецЦикла; ТекстЗапроса = ТекстЗапроса + ") [tt]"; тзПерцентили = ADODB.MSSQL_ВыполнитьЗапросИВернутьТаблицуЗначений(ТекстЗапроса); тзПерцентили.ВыбратьСтроку(); |
|||
9
b_ru
05.12.16
✎
17:37
|
||||
10
Lepochkin
05.12.16
✎
17:38
|
покажи другое решение
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |