Получаем столбцы типа date в SQL-запросе

Если воспользоваться функцией Sql.Database с вложенным SQL-запросом, то при наличии в исходной таблице столбцов типа date в ответе мы получим столбцы типа datetime:

Source = Sql.Database(SQL-Server, DataBase, [Query="SELECT TOP (1000) *#(lf) FROM [myTable]"])

Ответ на запрос.
Читать далее →

Параметры функции Web.Contents()

Функция Web.Contents() используется для получения данных из Интернета, чаще всего её используют для запросов к REST API различных сервисов.

Функция имеет ряд параметров и… скудную официальную документацию.
Поэтому некоторые аспекты использования Web.Contents() иногда вызывают вопросы.

Читать далее →

Дней между событиями (с доп. условием)

Часто бывает нужно посчитать количество дней между покупками, заказами, поставками и д.т., когда для вычисления используется один столбец дат. Но плюс к этому ещё нужно учесть сегмент пользователей, филиал или категорию товара, в общем есть дополнительное условие (столбец) для расчёта.

Часто такие вычисления реализуют с помощью индексных столбцов. DAX позволяет рассчитать это непосредственно, без дополнительных колонок.

Читать далее →

Работа со строками

В статье описаны базовые функции языка R для работы со строковыми данными.

1.Получение длины строки.

nchar("Тестовая строка")

Функцию length использовать неправильно — она возвращает длину вектора.

Читать далее →

Использование функции Table.ColumnNames при слиянии таблиц

При работе с данными мержить таблицы между собой приходиться довольно часто. Обычно следующим шагом после слияния таблиц идёт распаковка столбцов присоединённой таблицы. Проблем не возникает, если эта таблица всегда имеет одинаковый набор столбцов. Но как быть, если вторая таблица это какие-нибудь пользовательские выгрузки и количество столбцов в ней может изменяться?

Решить проблему поможет функция Table.ColumnNames.

Читать далее →

API. Постраничный запрос данных.

Довольно часто встречаются API, которые отдают данные постранично. С учётом того, что в Power Query отсутствует цикл типа do while, приходится искать альтернативные способы загрузки всех страниц.

Для примера рассмотрим гипотетический API, который отдает данные с ограниченным количеством строк на одной странице (в одном запросе).

Читать далее →