Для чего нужны sql запросы в excel

Представьте себе ситуацию, Вы получили целевую выборку из одной базы данных, но для полноты картины, как всегда, нужны дополнительные данные. Проблема может быть в том, что нужная информация хранится в другой базе данных и возможности создать на ней свою таблицу нет, подключиться используя link тоже нельзя, да и количество элементов, по которым нужно получить данные, несколько больше, чем допустимое на данном источнике. Вот и получается, что возможность написать SQL запрос и получить нужные данные есть, но написать придется не один запрос, а потом потратить время на объединение полученных данных.

Выйти из подобной ситуации поможет Excel.

Уверен, что ни для кого не секрет, что MS Excel имеет встроенный модуль VBA и надстройки, позволяющие подключаться к внешним источникам данных, то есть по сути является мощным инструментом для аналитики, а значит идеально подходит для решения подобных задач.

Для того чтобы обойти проблему, нам потребуется таблица с целевой выборкой, в которой содержатся идентификаторы, по которым можно достаточно корректно получить недостающую информацию (это может быть уникальный идентификатор, назовем его ID, или набор из данных, находящихся в разных столбцах), ПК с установленным MS Excel, и доступом к БД с недостающей информацией и, конечно, желание получить ту самую информацию.

Создаем в MS Excel книгу, на листе которой размещаем таблицу с идентификаторами, по которым будем в дальнейшем формировать запрос (если у нас есть уникальный идентификатор, для обеспечения максимальной скорости обработки таблицу лучше представить в виде одного столбца), сохраняем книгу в формате *.xlsm, после чего приступаем к созданию макроса.

Через меню «Разработчик» открываем встроенный VBA редактор и начинаем творить.

Sub job_sql() — Пусть наш макрос называется job_sql.

Пропишем переменные для подключения к БД, записи данных и запроса:

Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim sql As String

Опишем параметры подключения:

sql = «Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;Data Source=Storoge.company.ru Storoge.»

Объявим процедуру свойства, для присвоения значения:

Set cn = New ADODB.Connection
cn.Provider = » SQLOLEDB.1″
cn.ConnectionString = sql
cn.ConnectionTimeout = 0
cn.Open

Вот теперь можно приступать непосредственно к делу.

Организуем цикл:

For i = 2 To 1000

Как вы уже поняли конечное значение i=1000 здесь только для примера, а в реальности конечное значение соответствует количеству строк в Вашей таблице. В целях унификации можно использовать автоматический способ подсчета количества строк, например, вот такую конструкцию:

Dim LastRow As Long
LastRow = ActiveSheet.UsedRange.Row — 1 + ActiveSheet.UsedRange.Rows.Count

Тогда открытие цикла будет выглядеть так:

For i = 2 To LastRow

Как я уже говорил выше MS Excel является мощным инструментом для аналитики, и возможности Excel VBA не заканчиваются на простом переборе значений или комбинаций значений. При наличии известных Вам закономерностей можно ограничить объем выгружаемой из БД информации путем добавления в макрос простых условий, например:

If Cells(i, 2) = «Ваше условие» Then

Итак, мы определились с объемом и условиями выборки, организовали подключение к БД и готовы формировать запрос. Предположим, что нам нужно получить информацию о размере ежемесячного платежа [Ежемесячный платеж] из таблицы [payments].[refinans_credit], но только по тем случаям, когда размер ежемесячного платежа больше 0

sql = «select [Ежемесячный платеж] from [PAYMENTS].[refinans_credit] » & _
«where [Ежемесячный платеж]>0 and [Номер заявки] ='» & Cells(i, 1) & «‘ «

Если значений для формирования запроса несколько, соответственно прописываем их в запросе:

«where [Ежемесячный платеж]>0 and [Номер заявки] = ‘» & Cells(i, 1) & «‘ » & _
» and [Дата платежа]='» & Cells(i, 2) & «‘»

В целях самоконтроля я обычно записываю сформированный макросом запрос, чтобы иметь возможность проверить его корректность и работоспособность, для этого добавим вот такую строчку:

Cells(i, 3) = sql

в третьем столбце записываются запросы.

Выполняем SQL запрос:

Set rs = cn.Execute(sql)

А чтобы хоть как-то наблюдать за выполнением макроса выведем изменение i в статус-бар

Application.StatusBar = «Execute script …» & i
Application.ScreenUpdating = False

Теперь нам нужно записать полученные результаты. Для этого будем использовать оператор Do While:

j = 0
Do While Not rs.EOF
For ii = 0 To rs.Fields.Count — 1
Cells(i, 4 + j + ii) = rs.Fields(0 + ii) ‘& «;»

Указываем ячейки для вставки полученных данных (4 в примере это номер столбца с которого начинаем запись результатов)

Next ii
j = j + rs.Fields.Count
s.MoveNext
Loop
rs.Close
End If

— закрываем цикл If, если вводили дополнительные условия

Next i
cn.Close
Application.StatusBar = «Готово»
End Sub

— закрываем макрос.

В дополнение хочу отметить, что данный макрос позволяет обращаться как к БД на MS SQL так и к БД Oracle, разница будет только в параметрах подключения и собственно в синтаксисе SQL запроса.

В приведенном примере для авторизации при подключении к БД используется доменная аутентификация.

А как быть если для аутентификации необходимо ввести логин и пароль? Ничего невозможного нет. Изменим часть макроса, которая отвечает за подключение к БД следующим образом:

sql = «Provider= SQLOLEDB.1;Password=********;User ID=********;Data Source= Storoge.company.ru Storoge;APP=SFM»

Но в этом случае при использовании макроса возникает риск компрометации Ваших учетных данных. Поэтому лучше программно удалять учетные данные после выполнения макроса. Разместим поля для ввода пароля и логина на листе и изменим макрос следующим образом:

sql = «Provider= SQLOLEDB.1;Password=» & Sheets(«Лист аутентификации»).TextBox1.Value & «;User ID=» & Sheets(«Лист аутентификации «).TextBox2.Value & «;Data Source= Storoge.company.ru Storoge;APP=SFM»

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

Sheets(«Выгрузка»).TextBox1.Value = «« Sheets(»Выгрузка«).TextBox2.Value = »»

То есть просто присваиваем текстовым полям пустые значения, таким образом после выполнения макроса поля для ввода пароля и логина окажутся пустыми.

Вот такое вполне жизнеспособное решение, позволяющее сократить трудозатраты при получении и обработке данных, я использую. Надеюсь мой опыт применения SQL запросов в Excel будет полезен и вам в решении текущих задач.

Содержание

  • Создание SQL запроса в Excel
    • Способ 1: использование надстройки
    • Способ 2: использование встроенных инструментов Excel
    • Способ 3: подключение к серверу SQL Server
  • Вопросы и ответы

SQL в Microsoft Excel

SQL – популярный язык программирования, который применяется при работе с базами данных (БД). Хотя для операций с базами данных в пакете Microsoft Office имеется отдельное приложение — Access, но программа Excel тоже может работать с БД, делая SQL запросы. Давайте узнаем, как различными способами можно сформировать подобный запрос.

Читайте также: Как создать базу данных в Экселе

Язык запросов SQL отличается от аналогов тем, что с ним работают практически все современные системы управления БД. Поэтому вовсе не удивительно, что такой продвинутый табличный процессор, как Эксель, обладающий многими дополнительными функциями, тоже умеет работать с этим языком. Пользователи, владеющие языком SQL, используя Excel, могут упорядочить множество различных разрозненных табличных данных.

Способ 1: использование надстройки

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

Скачать надстройку XLTools

  1. После того, как вы скачали файл надстройки xltools.exe, следует приступить к его установке. Для запуска инсталлятора нужно произвести двойной щелчок левой кнопки мыши по установочному файлу. После этого запустится окно, в котором нужно будет подтвердить согласие с лицензионным соглашением на использование продукции компании Microsoft — NET Framework 4. Для этого всего лишь нужно кликнуть по кнопке «Принимаю» внизу окошка.
  2. Принятие лицензиного соглашение на использование компонента Microsoft NET Framework 4

  3. После этого установщик производит загрузку обязательных файлов и начинает процесс их установки.
  4. Загрузка обязательных файлов

  5. Далее откроется окно, в котором вы должны подтвердить свое согласие на установку этой надстройки. Для этого нужно щелкнуть по кнопке «Установить».
  6. Окно подтверждения согласия на установку надстройки

  7. Затем начинается процедура установки непосредственно самой надстройки.
  8. Установка надстройки

  9. После её завершения откроется окно, в котором будет сообщаться, что инсталляция успешно выполнена. В указанном окне достаточно нажать на кнопку «Закрыть».
  10. Закрытие окна установщика надстройки

  11. Надстройка установлена и теперь можно запускать файл Excel, в котором нужно организовать SQL запрос. Вместе с листом Эксель открывается окно для ввода кода лицензии XLTools. Если у вас имеется код, то нужно ввести его в соответствующее поле и нажать на кнопку «OK». Если вы желаете использовать бесплатную версию на 14 дней, то следует просто нажать на кнопку «Пробная лицензия».
  12. Окно лицензии надстройки XLTools

  13. При выборе пробной лицензии открывается ещё одно небольшое окошко, где нужно указать своё имя и фамилию (можно псевдоним) и электронную почту. После этого жмите на кнопку «Начать пробный период».
  14. Окно активации пробного периода надстройки XLTools

  15. Далее мы возвращаемся к окну лицензии. Как видим, введенные вами значения уже отображаются. Теперь нужно просто нажать на кнопку «OK».
  16. Активация пробной лицензии надстройки XLTools

  17. После того, как вы проделаете вышеуказанные манипуляции, в вашем экземпляре Эксель появится новая вкладка – «XLTools». Но не спешим переходить в неё. Прежде, чем создавать запрос, нужно преобразовать табличный массив, с которым мы будем работать, в так называемую, «умную» таблицу и присвоить ей имя.
    Для этого выделяем указанный массив или любой его элемент. Находясь во вкладке «Главная» щелкаем по значку «Форматировать как таблицу». Он размещен на ленте в блоке инструментов «Стили». После этого открывается список выбора различных стилей. Выбираем тот стиль, который вы считаете нужным. На функциональность таблицы указанный выбор никак не повлияет, так что основывайте свой выбор исключительно на основе предпочтений визуального отображения.
  18. Переход к созданию умной таблицы в Microsoft Excel

    Lumpics.ru

  19. Вслед за этим запускается небольшое окошко. В нем указываются координаты таблицы. Как правило, программа сама «подхватывает» полный адрес массива, даже если вы выделили только одну ячейку в нем. Но на всякий случай не мешает проверить ту информацию, которая находится в поле «Укажите расположение данных таблицы». Также нужно обратить внимание, чтобы около пункта «Таблица с заголовками», стояла галочка, если заголовки в вашем массиве действительно присутствуют. Затем жмите на кнопку «OK».
  20. Окно форматирования таблицы в Microsoft Excel

  21. После этого весь указанный диапазон будет отформатирован, как таблица, что повлияет как на его свойства (например, растягивание), так и на визуальное отображение. Указанной таблице будет присвоено имя. Чтобы его узнать и по желанию изменить, клацаем по любому элементу массива. На ленте появляется дополнительная группа вкладок – «Работа с таблицами». Перемещаемся во вкладку «Конструктор», размещенную в ней. На ленте в блоке инструментов «Свойства» в поле «Имя таблицы» будет указано наименование массива, которое ему присвоила программа автоматически.
  22. Наименование таблицы по умолчанию в Microsoft Excel

  23. При желании это наименование пользователь может изменить на более информативное, просто вписав в поле с клавиатуры желаемый вариант и нажав на клавишу Enter.
  24. Измененное наименование таблицы в Microsoft Excel

  25. После этого таблица готова и можно переходить непосредственно к организации запроса. Перемещаемся во вкладку «XLTools».
  26. Переход во вкладку XLTools в Microsoft Excel

  27. После перехода на ленте в блоке инструментов «SQL запросы» щелкаем по значку «Выполнить SQL».
  28. Переход в окно выполнения SQL надстройки XLTools в программе Microsoft Excel

  29. Запускается окно выполнения SQL запроса. В левой его области следует указать лист документа и таблицу на древе данных, к которой будет формироваться запрос.

    В правой области окна, которая занимает его большую часть, располагается сам редактор SQL запросов. В нем нужно писать программный код. Наименования столбцов выбранной таблицы там уже будут отображаться автоматически. Выбор столбцов для обработки производится с помощью команды SELECT. Нужно оставить в перечне только те колонки, которые вы желаете, чтобы указанная команда обрабатывала.

    Далее пишется текст команды, которую вы хотите применить к выбранным объектам. Команды составляются при помощи специальных операторов. Вот основные операторы SQL:

    • ORDER BY – сортировка значений;
    • JOIN – объединение таблиц;
    • GROUP BY – группировка значений;
    • SUM – суммирование значений;
    • DISTINCT – удаление дубликатов.

    Кроме того, в построении запроса можно использовать операторы MAX, MIN, AVG, COUNT, LEFT и др.

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

    После того, как запрос составлен и соответствующие настройки произведены, жмем на кнопку «Выполнить» в нижней части окна. После этого введенная операция будет произведена.

Окно выполнения SQL запроса надстройкой XLTools в Microsoft Excel

Урок: «Умные» таблицы в Экселе

Способ 2: использование встроенных инструментов Excel

Существует также способ создать SQL запрос к выбранному источнику данных с помощью встроенных инструментов Эксель.

  1. Запускаем программу Excel. После этого перемещаемся во вкладку «Данные».
  2. Переход во вкладку Данные в Microsoft Excel

  3. В блоке инструментов «Получение внешних данных», который расположен на ленте, жмем на значок «Из других источников». Открывается список дальнейших вариантов действий. Выбираем в нем пункт «Из мастера подключения данных».
  4. Переход в Мастер подключения данных в Microsoft Excel

  5. Запускается Мастер подключения данных. В перечне типов источников данных выбираем «ODBC DSN». После этого щелкаем по кнопке «Далее».
  6. Окно Мастера подключения данных в Microsoft Excel

  7. Открывается окно Мастера подключения данных, в котором нужно выбрать тип источника. Выбираем наименование «MS Access Database». Затем щелкаем по кнопке «Далее».
  8. Окно выбора типа источника Мастера подключения данных в Microsoft Excel

  9. Открывается небольшое окошко навигации, в котором следует перейти в директорию расположения базы данных в формате mdb или accdb и выбрать нужный файл БД. Навигация между логическими дисками при этом производится в специальном поле «Диски». Между каталогами производится переход в центральной области окна под названием «Каталоги». В левой области окна отображаются файлы, расположенные в текущем каталоге, если они имеют расширение mdb или accdb. Именно в этой области нужно выбрать наименование файла, после чего кликнуть на кнопку «OK».
  10. Окно выбора базы данных в Microsoft Excel

  11. Вслед за этим запускается окно выбора таблицы в указанной базе данных. В центральной области следует выбрать наименование нужной таблицы (если их несколько), а потом нажать на кнопку «Далее».
  12. Окно выбора таблицы базы данных в Microsoft Excel

  13. После этого открывается окно сохранения файла подключения данных. Тут указаны основные сведения о подключении, которое мы настроили. В данном окне достаточно нажать на кнопку «Готово».
  14. Окно сохранения файла подключения данных в Microsoft Excel

  15. На листе Excel запускается окошко импорта данных. В нем можно указать, в каком именно виде вы хотите, чтобы данные были представлены:
    • Таблица;
    • Отчёт сводной таблицы;
    • Сводная диаграмма.

    Выбираем нужный вариант. Чуть ниже требуется указать, куда именно следует поместить данные: на новый лист или на текущем листе. В последнем случае предоставляется также возможность выбора координат размещения. По умолчанию данные размещаются на текущем листе. Левый верхний угол импортируемого объекта размещается в ячейке A1.

    После того, как все настройки импорта указаны, жмем на кнопку «OK».

  16. Окно импорта данных в Microsoft Excel

  17. Как видим, таблица из базы данных перемещена на лист. Затем перемещаемся во вкладку «Данные» и щелкаем по кнопке «Подключения», которая размещена на ленте в блоке инструментов с одноименным названием.
  18. Переход в окно подключений в Microsoft Excel

  19. После этого запускается окно подключения к книге. В нем мы видим наименование ранее подключенной нами базы данных. Если подключенных БД несколько, то выбираем нужную и выделяем её. После этого щелкаем по кнопке «Свойства…» в правой части окна.
  20. Переход в свойства базы данных в Microsoft Excel

  21. Запускается окно свойств подключения. Перемещаемся в нем во вкладку «Определение». В поле «Текст команды», находящееся внизу текущего окна, записываем SQL команду в соответствии с синтаксисом данного языка, о котором мы вкратце говорили при рассмотрении Способа 1. Затем жмем на кнопку «OK».
  22. Окно свойств подключения в Microsoft Excel

  23. После этого производится автоматический возврат к окну подключения к книге. Нам остается только кликнуть по кнопке «Обновить» в нем. Происходит обращение к базе данных с запросом, после чего БД возвращает результаты его обработки назад на лист Excel, в ранее перенесенную нами таблицу.

Отправка запроса к базе данных в окне подключения к книге в Microsoft Excel

Способ 3: подключение к серверу SQL Server

Кроме того, посредством инструментов Excel существует возможность соединения с сервером SQL Server и посыла к нему запросов. Построение запроса не отличается от предыдущего варианта, но прежде всего, нужно установить само подключение. Посмотрим, как это сделать.

  1. Запускаем программу Excel и переходим во вкладку «Данные». После этого щелкаем по кнопке «Из других источников», которая размещается на ленте в блоке инструментов «Получение внешних данных». На этот раз из раскрывшегося списка выбираем вариант «С сервера SQL Server».
  2. Переход к окну подключения к серверу SQL Server в Microsoft Excel

  3. Происходит открытие окна подключения к серверу баз данных. В поле «Имя сервера» указываем наименование того сервера, к которому выполняем подключение. В группе параметров «Учетные сведения» нужно определиться, как именно будет происходить подключение: с использованием проверки подлинности Windows или путем введения имени пользователя и пароля. Выставляем переключатель согласно принятому решению. Если вы выбрали второй вариант, то кроме того в соответствующие поля придется ввести имя пользователя и пароль. После того, как все настройки проведены, жмем на кнопку «Далее». После выполнения этого действия происходит подключение к указанному серверу. Дальнейшие действия по организации запроса к базе данных аналогичны тем, которые мы описывали в предыдущем способе.

Окно Мастера подключения данных в программе Microsoft Excel

Как видим, в Экселе SQL запрос можно организовать, как встроенными инструментами программы, так и при помощи сторонних надстроек. Каждый пользователь может выбрать тот вариант, который удобнее для него и является более подходящим для решения конкретно поставленной задачи. Хотя, возможности надстройки XLTools, в целом, все-таки несколько более продвинутые, чем у встроенных инструментов Excel. Главный же недостаток XLTools заключается в том, что срок бесплатного пользования надстройкой ограничен всего двумя календарными неделями.

Еще статьи по данной теме:

Помогла ли Вам статья?

You can do a lot of powerful things with Excel, for example connecting to other data sources. In this article, we are going to look at how we can use SQL within Excel.

What is SQL?

SQL stands for “Structured Query Language.” Microsoft SQL Server is just one of the many databases that use it. In a database:

  • you store data in tables
  • you can run SQL queries to retrieve data.

The advantages of using a database such as Microsoft SQL Server to store your data include:

  • The data is strongly typed, meaning that you cannot store a number in a date field. This makes your data instantly validated.
  • It can be a central data repository for your data on multiple projects.
  • Multiple people can access the same data at the same time. This reduces duplication and inconsistencies.
  • It is also well-protected with built-in security within the Relational Database Management Systems. Microsoft SQL Server offers several layers of security.

For more information, please see my Udemy article “Excel vs SQL Server.”

How do you access an SQL Server? First, you need a data connection. If you are using a work SQL Server, then you will be given details of your server by your IT department. This will include:

  • The Server Name: It can also take this from the Connection String if you have it.
  • Authentication Method: You will use either:
    • Windows Authentication, using your Windows username and password
    • SQL Server Authentication, using a separate username and password

If you have Microsoft SQL Server on your own computer, then the server name could be “localhost” or “.”, and you will probably use Windows Authentication.

You can use this connection to retrieve the Microsoft SQL Server data.

There are three different places in Excel where you can load SQL data:

  • In the main Excel window
  • In the Get and Transform window (also known as the Power Query editor)
  • In the Power Pivot window (also known as the Data Model)

We will have a look at each of these places.

Connecting SQL to the main Excel window

The main Excel window is the one you use every time you open Excel. To load data from SQL Server, go to Data – Get Data – From Database – From SQL Server Database. This has superseded previously used methods such as Microsoft Query.

You will then have to provide the Server Name.

There are four SQL Server data sources that you could query to return the results.

  1. You may want the data from a table. This is the raw data.
  2. You may want the query results from a previously created view. This results from an SQL Server data analysis.
  3. You may want the results from a stored procedure. This could be a more complex analysis, or one that involves parameters. For example, you may just want all sales from the state of Florida. Here, ‘Florida’ would be a parameter.
  4. You may want to run an ad hoc SQL query using the SELECT statement.

If you want to run a Stored Procedure or an ad hoc query, then at this stage, you will need to click on “Advanced options” and write the query in the box provided. You will also need to enter the name of the database as well.

Next, you need to provide the Authentication mode and any credentials required:

If you want to retrieve the results of a table or query, you can select the table or query. If you then click “Load,” it will be loaded into your Excel Workbook. We will look at what happens if you click “Transform Data” in the next section of this article.

Once you have made the link, it will load the data into an Excel Table. You can then use it just like other data stored in a table.

You can refresh the data whenever you want by right-hand clicking inside the table and choosing Refresh, or by going to Table Design – Refresh.

Connecting SQL to Get and Transform

The second way to connect to SQL data is by using the Get and Transform window.

This follows the same process for connecting to SQL Server as mentioned above, except that you press “Transform Data” instead of Load.

Once you have done this, then the data is in the Get and Transform window, also known as the Power Query Editor. 

You can also load data directly from the Power Query Editor. To do this, go to Home – New Source.

You can then perform additional manipulations before the data transfer into Excel. For example, you might want to:

  • Hide some columns or rows (by going to Home – Choose/Remove Columns)
  • Add additional columns using formulas. (However, Power Query uses a language called M, which differs significantly from Excel.)
  • Summarise the data using the Group By function

If you do this in Power Query, it will reduce the amount of data that goes into Excel. Power Query reduces the amount of data that it receives from SQL Server through a process called Query Folding. For example, you could retrieve all the contents of a table into Power Query, limit the number of rows to just 50, and reduce the number of columns used to just two. 

This reduction will be incorporated into the SQL statement so that Excel only retrieves the needed rows and columns from SQL Server. This reduces network traffic and increases the speed of retrieving that data.

When you leave the Power Query window by going to Home – Close & Load, it would then load the data into an Excel Table as before. 

However, if you go to “Home – Close & Load To…” instead, you could then:

  • Use it in a Pivot Table or Chart without loading the data in Excel as a Table.
  • Save it as a Connection (without loading the data into an Excel Table).

If you save it as a connection, you can use it later as the data source in any new Pivot Tables.

In “Save & Load To…”, there is a checkbox for “Add this data to the Data Model.” If you click on this, Excel will then export the data into Power Pivot, also known as the Data Model. We’ll have a look at the Data Model in the next part of this Article.

Connecting SQL to Power Pivot

The third way of connecting SQL to Excel directly is by using the Data Model, also known as Power Pivot. To open the Data Model, you need to go to Data – Manage Data Model. 

Then you can import the data into Power Pivot by going to Home – Get External Data – From Database – From SQL Server. You then connect to SQL Server in a similar process as before.

Once you have imported the data, you can then create calculation columns or measures. Power Pivot uses a formula language called DAX to build formulas. DAX is an extended version of the Excel formulas.

Once you have finished, you can then create a Power Pivot Table by going to Home – PivotTable – PivotTable.

This allows you to create Pivot Tables or charts from this data.

Where to go for more information

I hope that you have enjoyed this article.

Are you interested in Power Query or Power Pivot? Then why not join me in my “Analyzing and Visualizing Data with Microsoft Excel” course, where we have a look at these topics, together with Pivot Tables.

Do you want to learn SQL statements quickly? Please have a look at my “SQL Server Essentials in an hour” course. We will look at the six principal clauses of the SQL SELECT Statement: SELECT, FROM, WHERE, GROUP BY, HAVING, and ORDER BY.

Используйте возможности SQL для создания запросов в Excel и напрямую к таблицам Excel

XLTools SQL Запросы: SELECT к таблице Excel

Порой таблицы Excel постепенно разрастаются настолько, что с ними становится неудобно работать. Поиск дубликатов, группировка, сложная сортировка, объединение нескольких таблиц в одну, т.д. — превращаются в действительно трудоёмкие задачи. Теоретически эти задачи можно легко решить с помощью языка запросов SQL… если бы только можно было составлять запросы напрямую к данным Excel.

Инструмент XLTools «SQL запросы» расширяет Excel возможностями языка структурированных запросов:

Перед началом работы добавьте «Всплывающие часы» в Excel

«SQL запросы» – это один из 20+ инструментов в составе надстройки XLTools для Excel. Работает в Excel 2019, 2016, 2013, 2010, десктоп Office 365.

Начните работу с инструментами XLTools

Как превратить данные Excel в реляционную базу данных и подготовить их к работе с SQL запросами

По умолчанию Excel воспринимает данные как простые диапазоны. Но SQL применим только к реляционным базам данных. Поэтому, прежде чем создать запрос, преобразуйте диапазоны Excel в таблицу (именованный диапазон с применением стиля таблицы):

Выберите таблицу Откройте вкладку «Конструктор» Напечатайте имя таблицы.

Повторите эти шаги для каждого диапазона, который планируете использовать в запросах.

Напр., «КодТовара», «ЦенаРозн», «ОбъемПродаж», т.д.

XLTools SQL Запросы: подготовка данных и формат таблиц

Как создать и выполнить запрос SQL SELECT к таблицам Excel

Надстройка «SQL запросы» позволяет выполнять запросы к Excel таблицам на разных листах и в разных книгах. Для этого убедитесь, что эти книги открыты, а нужные данные отформатированы как именованные таблицы.

В левой части окна находится дерево данных со всеми доступными таблицами Excel.

Нажатием на узлы открываются/сворачиваются поля таблицы (столбцы).

Выберите целые таблицы или конкретные поля.

XLTools SQL Запросы: SELECT к таблице Excel

Операторы Left Join, Order By, Group By, Distinct и другие SQLite команды в Excel

XLTools использует стандарт SQLite. Пользователи, владеющие языком SQLite, могут создавать самые разнообразные запросы:

Как объединить две и более Excel таблиц с помощью надстройки «SQL запросы»

Вы можете объединить несколько таблиц Excel в одну, если у них есть общее ключевое поле. Предположим, вам нужно объединить несколько таблиц по общему столбцу «КодТовара»:

Нажмите Выполнить SQL на вкладке XLTools Выберите поля, которые нужно включить в объединённую таблицу.

По мере выбора полей, автоматически генерируется запрос SELECT и LEFT JOIN.

Создание, загрузка и изменение запроса в Excel (Power Query)

Совет Чтобы упросить, сформированы ли данные на этом плане с помощью Power Query, выберите ячейку с данными, а если появится вкладка Лента контекстного запроса, данные загружаются из Power Query.

Выбор ячейки в запросе для вкладки "Запрос"

Знать, в какой среде вы сейчас? Power Query хорошо интегрирован с пользовательским интерфейсом Excel, особенно при импорте данных, работе с подключениями и редактировании таблиц, таблиц с Excel и именовых диапазонов. Чтобы избежать путаницы, важно в любой момент времени знать, в какой среде вы находитесь, в какой Excel или Power Query.

Знакомые Excel, лента и сетка

Лента редактора Power Query и предварительный просмотр данных

Например, работа с данными на Excel значительно отличается от Power Query. Кроме того, подключенные данные, которые вы видите на Excel, могут не работать с Power Query для их обработки. Это происходит только при загрузке данных на таблицу или в модель данных из Power Query.

Переименование я вкладок на таблицах Ямы лучше переименовывать по своему смыслу, особенно если их много. Особенно важно пояснить разницу между данными и данными, загруженными из редактора Power Query. Даже если у вас всего два листа: с таблицей Excel «Лист1»и запросом, созданным путем импорта таблицы Excel Таблица1,ее легко запутать. Всегда имеет смысл изменить названия ярлыков по умолчанию на более понятное. Например, переименуйте Лист1 в Таблицу данных и Таблицу1 в Таблицу запросов. Теперь понятно, какая вкладка с данными, а какая вкладка с запросом.

Вы можете создать запрос из импортируемых данных или пустой запрос.

Создание запроса из импортируемых данных

Это самый распространенный способ создания запроса.

Выберем ячейку в данных и выберите запрос> изменить.

Создание пустого запроса

Вы можете начать с нуля. Это можно сделать двумя способами.

Выберите Данные> Получить данные >из других источников > пустой запрос.

Выберите Данные> получить данные >запуск редактора Power Query.

На этом этапе вы можете вручную добавлять шаги и формулы, если хорошо знаете язык формул Power Query M.

Кроме того, можно выбрать команду На главная в группе Новый запрос. Выполните одно из указанных ниже действий.

Выберите Новый источник, чтобы добавить источник данных. Эта команда выглядит так же, как> «Получить данные» на Excel ленте.

Выберите Последние источники, чтобы выбрать источник данных, с помощью который вы работали. Эта команда выглядит так же, как> последние источники на Excel ленте.

Чтобы ввести данные вручную, выберите Ввести данные. Вы можете выбрать эту команду, чтобы попробовать редактор Power Query независимо от внешнего источника данных.

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

Загрузка запроса из редактора Power Query

В редакторе Power Query сделайте следующее:

Чтобы загрузить на таблицу, выберите Главная> Закрыть & Загрузить > Закрыть & Загрузить.

Чтобы загрузить данные в модель данных, выберите Главная> Закрыть & Загрузить > Закрыть & Загрузка.

В диалоговом окне Импорт данных выберите добавить эти данные в модельданных.

Совет Иногда команда «Загрузить в» неатривна или отключена. Это может произойти при первом создании запроса в книге. В этом случае нажмите кнопку Закрыть & Загрузить, на новом > запросы данных & Connections > Запросы, щелкните запрос правой кнопкой мыши и выберите загрузить в . Кроме того, на ленте редактора Power Query выберите запрос> Загрузить в.

Загрузка запроса из области «Запросы и подключения»

В Excel может потребоваться загрузить запрос на другой таблицу или в модель данных.

В Excel выберите Запросы> запросы & Connections, а затем выберите вкладку Запросы.

В списке запросов найдите запрос, щелкните его правой кнопкой мыши и выберите загрузить в. Появится диалоговое окно Импорт данных.

Выберите, как вы хотите импортировать данные, а затем выберите ОК. Чтобы получить дополнительные сведения об использовании этого диалогового окна, выберите знак вопроса (?).

Существует несколько способов изменить запрос, загруженный на таблицу.

Изменение запроса на Excel данных

Чтобы изменить запрос, найдите ранее загруженную из редактора Power Query, выйдите ячейку в данных и выберите запрос > Изменить.

Изменение запроса в области «Запросы & подключения»

Возможно, вы & области Запросы и подключения удобнее использовать, если в одной книге много запросов и вы хотите быстро найти его.

В Excel выберите Запросы> запросы & Connections, а затем выберите вкладку Запросы.

В списке запросов найдите запрос, щелкните его правой кнопкой мыши и выберите изменить.

Изменение запроса в диалоговом окне «Свойства запроса»

В Excel выберите Data> Data & Connections > Запросы, щелкните запрос правой кнопкой мыши и выберите Свойства ,выберите вкладку Определение в диалоговом окне Свойства и нажмите кнопку Изменить запрос.

Совет Если вы работаете с запросом на > данных, в диалоговом окнеСвойства выберите вкладку Определение, а затем — Изменить запрос.

Модель данных обычно содержит несколько таблиц, расположенных в связи. Запрос загружается в модель данных с помощью команды Загрузить, чтобы отобразить диалоговое окно Импорт данных, а затем в поле Добавить эти данные в режим данныхl. Дополнительные сведения о моделях данных см. в дополнительных сведениях о том, какие источники данных используются в модели данных книги,Создание модели данных в Excelи Создание таблиц с помощью нескольких таблиц.

Чтобы открыть модель данных, выберите Power Pivot > Управление.

В нижней части окна Power Pivot выберите вкладку нужной таблицы.

Подтвердим, что отображается правильная таблица. Модель данных может иметь много таблиц.

Обратите внимание на имя таблицы.

Чтобы закрыть окно Power Pivot, выберите файл> Закрыть. Чтобы освободить память, может потребоваться несколько секунд.

Выберите > подключения & свойства >Запросы, щелкните запрос правой кнопкой мыши и выберите изменить.

Завершив внесение изменений в редакторе Power Query, выберите файл > Закрыть & загрузить.

Запрос на этом и в таблице в модели данных обновляются.

Если вы заметили, что загрузка запроса в модель данных занимает намного больше времени, чем загрузка на лист, проверьте действия Power Query, чтобы узнать, фильтруется ли текстовый столбец или структурированный столбец списка с помощью оператора Contains. Это действие приводит Excel повторно прогонять весь набор данных для каждой строки. Более того, Excel не могут эффективно использовать многопрочитанные выполнения. В качестве обходного решения попробуйте использовать другой оператор, например Равно или Начинает с.

Корпорация Майкрософт знает об этой проблеме и находится в стадии исследования.

Вы можете загрузить Power Query:

На один из них. В редакторе Power Query выберите Home> Close & Load > Close & Load.

В модель данных. В редакторе Power Query выберите Home> Close & Load > Close & Load To.

По умолчанию Power Query загружает запросы на новый таблицу при загрузке одного запроса и одновременно загружает несколько запросов в модель данных. Вы можете изменить поведение по умолчанию для всех книг или только для текущей книги. При настройке этих параметров Power Query не меняет результаты запроса на месте или в данных модели данных и примечаниях.

Кроме того, динамически переопределять стандартные параметры запроса можно в диалоговом окне Импорт, которое отображается после выбора параметра & Загрузитьв.

Глобальные параметры, которые применяются во всех книгах

В редакторе Power Query выберите Файл > параметры и параметры >параметры запроса.

В диалоговом окне Параметры запроса в левой части в разделе GLOBAL выберите Загрузка данных.

В разделе Загрузка Параметры запроса по умолчанию сделайте следующее:

Выберите Использовать стандартные параметры загрузки.

Выберите Указать настраиваемые параметры загрузкипо умолчанию, а затем выберите или отобирать параметр Загрузить на таблицу или Загрузить в модель данных.

Совет В нижней части диалогового окна можно выбрать восстановить параметры по умолчанию, чтобы вернуться к настройкам по умолчанию.

Параметры книги, которые применяются только к текущей книге

В диалоговом окне Параметры запроса в левой части в разделе ТЕКУЩАЯ КНИГА выберите Загрузка данных.

Выполните одно или несколько из указанных ниже действий.

В области Обнаружение типоввыберите или сберем для обнаружения типов столбцов и их заглавных колонок для неструктурированных источников.

По умолчанию они обнаруживаются. Если вы предпочитаете формировать данные самостоятельно, отоставьте этот параметр.

В области Связивыберите или отоберем создать связи между таблицами при первом добавлении в модель данных.

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

В области Связивыберите или отоберете update relationships when refreshing queries loaded to the Data Model (Связи) при обновлении запросов, загруженных в модель данных.

По умолчанию отношения не обновляются. При обновлении запросов, уже загруженных в модель данных, Power Query находит существующие связи между таблицами, например внешние ключи, в реляционной базе данных и обновляет их. Это может привести к удалению связей, созданных вручную после импорта данных, или к новым связям. Тем не менее, если вы хотите сделать это, выберите этот параметр.

В области Фоновыеданные выберите или отпустите разрешение предварительного просмотра данных для скачивания в фоновом режиме.

По умолчанию предварительный просмотр данных загружается в фоновом режиме. Если вы хотите сразу же видеть все данные, отобираем этот параметр.

Запрос на выборку данных (формулы) в EXCEL

Суть запроса на выборку – выбрать из исходной таблицы строки, удовлетворяющие определенным критериям (подобно применению стандартного Фильтра ). Произведем отбор значений из исходной таблицы с помощью формул массива . В отличие от применения Фильтра ( CTRL+SHIFT+L или Данные/ Сортировка и фильтр/ Фильтр ) отобранные строки будут помещены в отдельную таблицу.

В этой статье рассмотрим наиболее часто встречающиеся запросы, например: отбор строк таблицы, у которых значение из числового столбца попадает в заданный диапазон (интервал); отбор строк, у которых дата принаждежит определенному периоду; задачи с 2-мя текстовыми критериями и другие. Начнем с простых запросов.

1. Один числовой критерий (Выбрать те Товары, у которых цена выше минимальной)

Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист Один критерий — число ).

Необходимо отобразить в отдельной таблице только те записи (строки) из Исходной таблицы, у которых цена выше 25.

Решить эту и последующие задачи можно легко с помощью стандартного фильтра . Для этого выделите заголовки Исходной таблицы и нажмите CTRL+SHIFT+L . Через выпадающий список у заголовка Цены выберите Числовые фильтры. , затем задайте необходимые условия фильтрации и нажмите ОК.

Будут отображены записи удовлетворяющие условиям отбора.

Другим подходом является использование формул массива . В отличие от фильтра отобранные строки будут помещены в отдельную таблицу — своеобразный Отчет , который, например, можно отформатировать в стиль отличный от Исходной таблицы или производить другие ее модификации.

Критерий (минимальную цену) разместим в ячейке Е6 , таблицу для отфильтрованных данных — в диапазоне D10:E19 .

Теперь выделим диапазон D11:D19 (столбец Товар) и в Строке формул введем формулу массива :

Вместо ENTER нажмите сочетание клавиш CTRL+SHIFT+ENTER .

Те же манипуляции произведем с диапазоном E11:E19 куда и введем аналогичную формулу массива :

В результате получим новую таблицу, которая будет содержать только товары, у которых цены попадают в интервал, указанный в ячейках Е5 и Е6 .

Чтобы показать динамизм полученного Отчета (Запроса на выборку) введем в Е6 значение 65. В новую таблицу будет добавлена еще одна запись из Исходной таблицы, удовлетворяющая новому критерию.

Если в Исходную таблицу добавить новый товар с Ценой в диапазоне от 25 до 65, то в новую таблицу будет добавлена новая запись.

В файле примера также содержатся формулы массива с обработкой ошибок, когда в столбце Цена содержится значение ошибки, например #ДЕЛ/0! (см. лист Обработка ошибок ).

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

3. Один критерий Дата (Выбрать те Товары, у которых Дата поставки совпадает заданной)

Пусть имеется Исходная таблица с перечнем Товаров и Датами поставки (см. файл примера, лист Один критерий — Дата ).

Для отбора строк используются формулы массива, аналогичные Задаче1 (вместо критерия =$B$12:$B$20)*(СТРОКА($B$12:$B$20)-СТРОКА($B$11));$J$12-СТРОКА(A12)+СТРОКА($B$11)+1))

Примечание : После ввода формулы вместо клавиши ENTER (ВВОД) нужно нажать сочетание клавиш CTRL+SHIFT+ENTER. Это сочетание клавиш используется для ввода формул массива.

Скопируйте формулу массива вниз на нужное количество ячеек. Формула вернет только те значения Товаров, которые были поставлены в диапазоне указанных дат. В остальных ячейках будут содержаться ошибки #ЧИСЛО! Ошибки в файле примера (Лист 4.Диапазон Дат) скрыты с помощью Условного форматирования .

Аналогичную формулу нужно ввести и для дат в столбец E.

В ячейке J12 вычислено количество строк исходной таблицы, удовлетворяющих критериям:

Решение2 : Для отбора строк можно использовать формулы массива, аналогичные Задаче2 (т.е. формулы массива, возвращающие несколько значений ):

Для ввода первой формулы выделите диапазон ячеек G12:G20 . После ввода формулы вместо клавиши ENTER (ВВОД) нужно нажать сочетание клавиш CTRL+SHIFT+ENTER.

Решение3 : Если столбец Дат СОРТИРОВАН, то можно не использовать формулы массива.

Сначала необходимо вычислить первую и последнюю позиции строк, которые удовлетворяют критериям. Затем вывести строки с помощью функции СМЕЩ() .

Этот пример еще раз наглядно демонстрирует насколько предварительная сортировка данных облегчает написание формул.

5. Один критерий Дата (Выбрать те Товары, у которых Дата поставки не раньше/ не позже заданной)

Пусть имеется Исходная таблица с перечнем Товаров и Датами поставки (см. файл примера, лист Один критерий — Дата (не позже) ).

Для отбора строк, дата которых не раньше (включая саму дату), используется формула массива:

= ИНДЕКС(A12:A20;НАИМЕНЬШИЙ(ЕСЛИ($E$7 C15;И($B$7>=B15;$B$7 =$B$13:$B$21)*($B$13:$B$21>0);СТРОКА($B$13:$B$21);»»);СТРОКА($B$13:$B$21)-СТРОКА($B$12)) -СТРОКА($B$12))

Условие $E$7=$A$13:$A$21 гарантирует, что будут отобраны товары только определенного типа. Условие $E$8>=$B$13:$B$21 гарантирует, что будут отобраны даты не позже заданной (включая). Условие $B$13:$B$21>0 необходимо, если в диапазоне дат имеются пустые ячейки. Знак * (умножение) используется для задания Условия И (все 3 критерия должны выполняться для строки одновременно).

Примечание . Случай, когда список несортирован, рассмотрен в статье Поиск ДАТЫ (ЧИСЛА) ближайшей к заданной, с условием в MS EXCEL. Несортированный список .

7. Один Текстовый критерий (Выбрать Товары определенного вида)

Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист Один критерий — Текст ).

Задача решается аналогично Задачам 1 и 3. Более подробное решение см. в статье Поиск ТЕКСТовых значений в MS EXCEL с выводом их в отдельный список. Часть1. Обычный поиск .

8. Два Текстовых критерия (Выбрать Товары определенного вида, поставленные в заданный месяц)

Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист 2 критерия — текст (И) ).

Для отбора строк используется формула массива:

Выражение ($F$6=$A$11:$A$19)*($F$7=$B$11:$B$19) задает оба условия (Товар и Месяц).

Выражение СТРОКА(ДВССЫЛ(«A1:A»&ЧСТРОК($A$11:$A$19))) формирует массив последовательных чисел , т.е. номера строк в таблице.

9. Два Текстовых критерия (Выбрать Товары определенных видов)

Пусть имеется Исходная таблица с перечнем Товаров и Ценами (см. файл примера, лист 2 критерия — текст (ИЛИ) ).

В отличие от Задачи 7 отберем строки с товарами 2-х видов ( Условие ИЛИ ).

Для отбора строк используется формула массива:

= ИНДЕКС(A$11:A$19; НАИБОЛЬШИЙ((($E$6=$A$11:$A$19)+($E$7=$A$11:$A$19))*(СТРОКА($A$11:$A$19)-СТРОКА($A$10)); СЧЁТЕСЛИ($A$11:$A$19;$E$6)+СЧЁТЕСЛИ($A$11:$A$19;$E$7)-ЧСТРОК($A$11:A11)+1))

Условие ($E$6=$A$11:$A$19)+($E$7=$A$11:$A$19) гарантирует, что будут отобраны товары только заданных видов из желтых ячеек (Товар2 и Товар3). Знак + (сложение) используется для задания Условие ИЛИ (должен быть выполнен хотя бы 1 критерий).

Вышеуказанное выражение вернет массив . Умножив его на выражение СТРОКА($A$11:$A$19)-СТРОКА($A$10) , т.е. на массив последовательных чисел , получим массив позиций (номеров строк таблицы), удовлетворяющих критериям. В нашем случае это будет массив .

С помощью функции НАИБОЛЬШИЙ() выведем 3 значения из позиции 5 (строка 15 листа), 6 (16) и 7 (17), т.е. значения Товар2, Товар2 и Товар3. Для этого используем выражение СЧЁТЕСЛИ($A$11:$A$19;$E$6)+СЧЁТЕСЛИ($A$11:$A$19;$E$7)-ЧСТРОК($A$11:A11)+1 , которое последовательно (начиная со строки 11) будет возвращать числа 3; 2; 1; 0; -1; -2; . Формула НАИБОЛЬШИЙ(. ;3) вернет число 5, НАИБОЛЬШИЙ(. ;2) вернет число 6, НАИБОЛЬШИЙ(. ;1) вернет число 7, а НАИБОЛЬШИЙ(. ;0) и далее вернет ошибку, которую мы скроем условным форматированием .

И наконец, с помощью функции ИНДЕКС() последовательно выведем наши значения из соответствующих позиций: = ИНДЕКС(A$11:A$19;5) вернет Товар2, = ИНДЕКС(A$11:A$19;6) вернет Товар2, = ИНДЕКС(A$11:A$19;7) вернет Товар3.

10. Отбор значений с учетом повторов

В разделе Отбор на основании повторяемости собраны статьи о запросах с группировкой данных. Из повторяющихся данных сначала отбираются уникальные значения, а соответствующие им значения в других столбцах — группируются (складываются, усредняются и пр.).

Наиболее популярные статьи из этого раздела:

В качестве примера приведем решения следующей задачи: Выбрать Товары, цена которых лежит в определенном диапазоне и повторяется заданное количество раз или более.

В качестве исходной возьмем таблицу партий товаров.

Предположим, что нас интересует сколько и каких партий товаров поставлялось по цене от 1000р. до 2000р. (критерий 1). Причем, партий с одинаковой ценой должно быть минимум 3 (критерий 2).

Решением является формула массива:

Эта формула возвращает номера строк, которые удовлетворяют обоим критериям.

Формула =СУММПРОИЗВ(($C$14:$C$27>=$B$7)*($C$14:$C$27 =$B$10)) подсчитывает количество строк, которые удовлетворяют критериям.

В файле примера на листе «10.Критерий — колич-во повторов» настроено Условное форматирование , которое позволяет визуально определить строки удовлетворяющие критериям, а также скрыть ячейки, в которых формула массива возвращает ошибку #ЧИСЛО!

11. Используем значение критерия (Любой) или (Все)

В фильтре Сводных таблиц MS EXCEL используется значение (Все), чтобы вывести все значения столбца. Другими словами, в выпадающем списке значений критерия содержится особое значение, которое отменяет сам критерий (см. статью Отчеты в MS EXCEL , Отчет №3).

В файле примера на листе «11. Критерий Любой или (Все)» реализован данный вариант критерия.

Формула в этом случае должна содержать функцию ЕСЛИ() . Если выбрано значение (Все), то используется формула для вывода значений без учета данного критерия. Если выбрано любое другое значение, то критерий работает обычным образом.

Остальная часть формулы аналогична рассмотренным выше.

12. Актуальная цена

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

Чтобы иметь перечень товаров с актуальными ценами придется использовать формулы:

2) определяем последнюю (максимальную) дату для каждого товара с помощью формулы массива =МАКС((Таблица1[товар]=E8)*Таблица1[дата])

3) наконец, выводим актуальную цену =СУММЕСЛИМН(Таблица1[цена];Таблица1[товар];E8;Таблица1[дата];F8)

Для товара не должно быть повторов дат, иначе цены будут суммироваться (если повторяется последняя дата).

Время на прочтение
7 мин

Количество просмотров 31K

image
Всем привет.
Наступил новый 2016 год, а значит пора обновить инструменты для упрощения скучной механической работы. Отделы аналитики, маркетинга, продаж часто сталкиваются со следующими трудностями при обновлении отчетности:
1. Данные приходится собирать воедино из нескольких источников.
2. Отчеты составляются в Excel, что накладывает значительные ограничения на объем обрабатываемых данных.
3. Внесение изменений в заранее настроенные разработчиками выгрузки дело как правило не самое быстрое.

Если отчеты нужно обновлять еженедельно или даже ежедневно, то эта процедура становится весьма напряжной даже для самых терпеливых. С помощью надстройки Excel Power Query и записи данных в MySQL можно свести обновление большинства отчетов до простого нажатия кнопки «Обновить»:
1. Данные из любого количества источников импортируются через SQL-запросы в обычные таблицы Excel.
2. Даже из большой базы можно записывать в Excel только небольшую часть данных (например, итоговые суммы за нужный диапазон дат с группировкой только по нужным столбцам).
3. Изменения в отчет можно вносить просто поменяв SQL-запрос. Далее формируем нужный отчет стандартными средствами Excel.

В этой статье я покажу как настраивать и автоматически заполнять простые базы данных MySQL (на примере выгрузки статистики всех ключевых слов из Яндекс Метрики), а потом одной кнопкой обновлять отчеты в Excel, используя надстройку Power Query. Power Query имеет весьма странные особенности работы при составлении SQL-запросов (особенно динамических), которые мы разберем во второй части статьи.

Выбор MySQL (или любой другой популярной базы данных) вполне очевиден — бесплатно, относительно просто, возможность работать с довольно большими базами данных без технических хитростей. В качестве примера будем использовать Amazon Web Services: дешево (в большинстве случаев используемый инстанс будет бесплатен для вас в течение 12 месяцев).

Итак, начнем (если у вас уже есть базы данных с готовыми данными, то можно сразу переходить к разделу с Excel):
1. Регистрируемся на AWS (если еще нет учетки), запускаем самый простой инстанс t2.micro и заходим на него по SSH. Можно посмотреть краткую инструкцию в прошлом посте habrahabr.ru/post/265383. Обратите внимание, что нам потребуется первый в списке вариант инстанса на Amazon Linux AMI. Необходимо выставить правила, разрешающие обращение к инстансу по нужным портам:
image

В целях безопасности лучше выставлять ограничения на IP-адрес. Если у вас динамический IP, то это проблемная опция. Также иногда ограничение доступа к MYSQL по IP вызывает ошибку в Excel. Если выставить любой IP, то все работает.

2. Исполняем подряд команды, описанные в документации docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-ug.pdf. Нам нужна глава «Tutorial: Installing a LAMP Web Server on Amazon Linux». Запомните пароль, который вводите при выполнении команды «sudo mysql_secure_installation». Для удобства установите phpMyAdmin как описано в конце этой главы. Если будете копипастить из документации строчку «sudo sed -i -e ‘s/127.0.0.1/your_ip_address/g’ /etc/ht tpd/conf.d/phpMyAdmin.conf», то обратите внимание, что иногда при копировании в «httpd» появляется лишний пробел.

После этих действий на вашем инстансе должна открываться такая страница:
image

3. Заходим под пользователем root и паролем, который вводили при настройке. Для доступа к базе данных «извне» (т. е. из Excel) нам потребуется пользователь, отличный от root. Заводим его в интерфейсе phpMyAdmin в меню Пользователи —> Добавить пользователя. Добавим пользователя stats, зададим пароль и назначим ему привилегии SELECT и INSERT. Итого получим:
image

4. Теперь создадим базу данных data:
image

5. В данном примере будем наполнять базу статистикой посещений по ключевым словам из Яндекс Метрики. Для этого создадим таблицу seo (обратите внимание, что у столбца id надо отметить опцию A_I (auto increment)):
image

6. Для получения статистики по ключевым словам из Яндекс Метрики можно использовать следующий скрипт. В качестве параметров нужно указать начальную и конечную дату выгрузки (переменные $startDate и $endDate), авторизационный токен (в коде есть описание как его получить), номер счетчика, из которого нужно получить статистику, и параметры базы данных: ID инстанса, логин (у нас «stats»), пароль и название базы (у нас «data»). Скопируйте в корневую папку инстанса этот код и запустите командой «php seo.php».

Код PHP для выгрузки данных Яндекс Метрики

<?php

// начало и конец периода выгрузки
$startDate = '2015-10-01';
$endDate = '2015-12-31';

// токен для запросов к API Яндекс Метрики
// для получения токена создаем приложение на https://oauth.yandex.ru/
// даем приложению разрешение на чтение статистики Яндекс Метрики
// после создания берем параметр ID приложения и подставляем в конец https://oauth.yandex.ru/authorize?response_type=token&client_id=
// жмем Разрешить и получаем токен
$atoken = '';

// номер счетчика
$project = '';

// соединяемся с базой данных и проверяем все ли в порядке
$con = mysqli_connect("ec2-....compute.amazonaws.com","stats","здесь пароль", "data");

if (mysqli_connect_errno()) {
	echo "Failed to connect to MySQL: " . mysqli_connect_error();
	exit();
} else {
	echo "Connection successfull n";
}

if ($con->query("SET NAMES 'utf8'")) {
	echo "Names set n";
} else {
	printf("Error: %sn", $con->error);
	exit();
}

// файл, в который записываем результаты выгрузки (в случае ошибки записи в базу данных по нему можно увидеть какая строчка записалась последней и соответственно дала ошибку)
$fname = "data.txt";
$fp = fopen($fname, "w");
fclose($fp);

function getBatch($startDate, $endDate, $project, $offset, $limit, $atoken, $fname, $con) {
	// делаем запрос к API Яндекс Метрики
	// документация https://tech.yandex.ru/metrika/doc/api2/api_v1/attributes/visitssource_/search-docpage/
	$ch = curl_init();
	$options = array(
		CURLOPT_URL => 'https://api-metrika.yandex.ru/stat/v1/data?oauth_token='.$atoken.'&id='.$project.'&accuracy=full&date1='.$startDate.'&date2='.$endDate.'&dimensions=ym:s:<attribution>SearchPhrase&metrics=ym:s:visits&limit='.$limit.'&offset='.$offset,
		CURLOPT_RETURNTRANSFER => TRUE
	);

	curl_setopt_array($ch, $options);
	$data = curl_exec($ch);
	curl_close($ch);

	// переводим ответ запроса формата JSON в массив
	$data = json_decode($data, true);

	// смотрим какой ответ получили от Яндекс Метрики
	//var_dump($data);

	// проходим по массиву $data['data'] и записываем период выгрузки, ключевую фразу и количество визитов
	for ($i=0; $i < count($data['data']); $i++) {
		file_put_contents($fname, $startDate."t".$endDate."t".$data['data'][$i]['dimensions'][0]['name']."t".$data['data'][$i]['metrics'][0]."n", FILE_APPEND);

		if ($con->query("INSERT INTO seo (startDate, endDate, query, visits) VALUES ('".$startDate."', '".$endDate."', '".mysqli_real_escape_string($con, substr($data['data'][$i]['dimensions'][0]['name'], 0, 255))."', ".$data['data'][$i]['metrics'][0].")")) {
			//echo "Record done n";
	    } else {
	    	printf("Error: %sn", $con->error);
	    	exit();
	    }
	}

	if (count($data['data']) == 0) {
		return 'done';
	} else {
		return 'more';
	}
}

// https://tech.yandex.ru/metrika/doc/api2/api_v1/data-docpage/
// максимальное количество строк в одной таблице - 10 000
// в цикле выгружается по $limit строк, увеличивая при этом первую строчку выгрузки $offset на значение $limit
$offset = 1;
$limit = 10000;

$res = 'more';
do {
	$res = getBatch($startDate, $endDate, $project, $offset, $limit, $atoken, $fname, $con);
	$offset += $limit;
} while ($res == 'more');

mysqli_close($con);

Если возникнут ошибки при соединении с базой, то они отобразятся в консоли и выполнение будет прервано. В случае успешного выполнения получим статистику ключевых слов за выбранный период:
image

Отлично, данные получены. Посмотрим как получать их в Excel.

Использование Power Query для выгрузки данных в Excel
Power Query представляет собой надстройку, которая расширяет возможности Excel по выгрузке данных. Скачать можно тут www.microsoft.com/en-us/download/details.aspx?id=39379. Для работы с MySQL может потребоваться MySQL Connector и Visual Studio (предлагаются при установке из дистрибутива).

1. После установки выбираем MySQL:
image

2. В качестве базы указываем ID нашего инстанса (как было в скрипте) ec2-….compute.amazonaws.com. База данных data. Для ввода логина выбираем «База данных»:
image

3. В открывшемся окне дважды кликаем на таблицу seo и получаем:
image

В этом окне можно управлять запросами, изменяя столбцы и количество строчек. Когда база данных небольшая, то это работает. Однако если размер данных превышает даже 20MB, то Excel на большинстве компьютеров просто повиснет от такого запроса. К тому же неплохо бы менять даты запроса или другие параметры.

Динамические запросы в Power Query можно делать с помощью встроенного языка M msdn.microsoft.com/en-us/library/mt253322.aspx, однако запросы крайне неустойчивы в плане изменения каких-либо параметров в них. Чтобы запрос оставался «постоянным» сделаем следующий прием:

1. Сначала составляем таблицу, в которой указываем нужные нам параметры. В нашем примере это дата выгрузки. Формат ячеек со значениями лучше выставить как тестовый, т. к. Excel любит изменять формат ячеек по своему усмотрению:
image

2. Создадим запрос Power Query «Из таблицы», который будет просто дублировать эту таблицу:
image

3. В опциях запроса обязательно укажите формат второго столбца как Текст, иначе последующий SQL-запрос будет некорректным. Далее жмем «Закрыть и загрузить».
image

Итого мы получили запрос Power Query к обычной таблице, из которого будет брать значение начала и конца выгрузки.

Чтобы сделать SQL-запрос потребуется отключить одну опцию: заходим в Параметры и настройки —> Параметры запроса —> Конфиденциальность и выбираем «Игнорировать уровни конфиденциальности для возможного улучшения производительности». Жмем Ок.
image

4. Теперь делаем запрос к нашей базе данных, указывая в качестве начала и конца периода значения таблицы из пункта 3. Снова подключаемся к базе в Power Query и нажимаем «Расширенный редактор» в меню.
image

Например, мы хотим получить сумму визитов, которые принесли ключевые слова, содержащие «2015». На языке M запрос выглядит так:
let
Source = MySQL.Database("ec2-....compute.amazonaws.com", "data", [Query="select sum(visits) from seo where startDate>='"&Text.From(Таблица1{0}[Значение])&"' and endDate<='"&Text.From(Таблица1{1}[Значение])&"' and query like '%2015%';"])
in
Source

В параметрах startDate и endDate указываются значения в таблице из пункта 3. При запросе «Для выполнения этого собственного запроса к базе данных необходимы разрешения» жмем «Редактировать разрешение», проверяем, что все параметры подтянулись корректно и выполняем запрос. Теперь полученный ответ от SQL-запроса можно обработать обычными формулами Excel в привычном вам виде.

5. Важно! Когда вы будете обновлять выгрузку в следующий раз, то это приходится делать следующим способом (другие почему-то дают ошибку):
— меняем даты в таблице из пункта 1
— заходим в меню Данные —> Подключения и нажимаем «Обновить все»:
image

В этом случае все запросы выполнятся корректно и ваши отчеты обновятся автоматически. Итого для обновления отчета вам потребуется только изменить параметры запроса и нажать «Обновить все».

SQL запросы в Microsoft Excel

SQL в Microsoft Excel

​Смотрите также​ разграничения прав на​ все как там​ там уже имя​, из которой вы​ вам полезна. Просим​ помощью доступ к​ подключения к данным​ безопасности.​База данных Microsoft SQL​, нажмите кнопку​ именно будет происходить​ перемещаемся во вкладку​ Выбираем наименование​. Нужно оставить в​ таблицы. Как правило,​

​ непосредственно самой надстройки.​SQL – популярный язык​

​ просмотр разными пользователями​ написано. Excel файл​ запроса или таблицы​

Создание SQL запроса в Excel

​ хотите импортировать данные​ вас уделить пару​ источнику данных.​ и завершение работы​На вкладке​укажите SQL Server,​Создать запрос​ подключение: с использованием​«Данные»​«MS Access Database»​ перечне только те​ программа сама «подхватывает»​После её завершения откроется​ программирования, который применяется​ отчета. Например, сотрудники​ создается, но не​ — Далее /​

Способ 1: использование надстройки

​ с помощью запросов​ секунд и сообщить,​Примечание:​    ​Данные​ к которому нужно​и выберите пункты​ проверки подлинности Windows​и щелкаем по​. Затем щелкаем по​ колонки, которые вы​ полный адрес массива,​ окно, в котором​ при работе с​ каждого региона будут​ сохраняется и не​ Готово.​ на языке базы​ помогла ли она​

  1. ​ Параметры проверки подлинности используются​При необходимости в поле​​в группе​​ подключиться, в поле​Из базы данных​ или путем введения​ кнопке​ кнопке​ желаете, чтобы указанная​ даже если вы​ будет сообщаться, что​ базами данных (БД).​ видеть только то,​ закрывается и так​После у тебя​ данных.​ вам, с помощью​ только службы Excel,​Имя файла​​Получить внешние данные​​Имя сервера​

    Принятие лицензиного соглашение на использование компонента Microsoft NET Framework 4

  2. ​->​ имени пользователя и​«Подключения»​«Далее»​

    Загрузка обязательных файлов

  3. ​ команда обрабатывала.​ выделили только одну​ инсталляция успешно выполнена.​ Хотя для операций​ что касается непосредственно​ остается висеть в​ выведет окно с​​Разверните поле​​ кнопок внизу страницы.​

    Окно подтверждения согласия на установку надстройки

  4. ​ а не Excel.​измените предложенное имя​

    Установка надстройки

  5. ​нажмите кнопку​. При необходимости вы​Из базы данных SQL​ пароля. Выставляем переключатель​, которая размещена на​.​Далее пишется текст команды,​​ ячейку в нем.​​ В указанном окне​

    Закрытие окна установщика надстройки

  6. ​ с базами данных​ их. Да и​ процессах и запрос​ выбором способа предоставления​Инструкцию SQL​ Для удобства также​Нажмите кнопку​ файла. Нажмите кнопку​Из других источников​ также можете указать​ Server​ согласно принятому решению.​ ленте в блоке​Открывается небольшое окошко навигации,​​ которую вы хотите​​ Но на всякий​ достаточно нажать на​ в пакете Microsoft​ в целом для​ не прекращает выполняться.​​ данных: таблица или​​и вставьте или​

    Окно лицензии надстройки XLTools

  7. ​ приводим ссылку на​ОК​Обзор​и выберите пункт​имя базы данных​.​ Если вы выбрали​ инструментов с одноименным​ в котором следует​​ применить к выбранным​​ случай не мешает​

    Окно активации пробного периода надстройки XLTools

  8. ​ кнопку​ Office имеется отдельное​ отчетов это куда​И вот на​ сводная таблица.​ введите запрос на​​ оригинал (на английском​​.​

    Активация пробной лицензии надстройки XLTools

  9. ​, чтобы изменить место​С сервера SQL Server​.​В диалоговом окне​ второй вариант, то​​ названием.​​ перейти в директорию​ объектам. Команды составляются​ проверить ту информацию,​«Закрыть»​ приложение — Access,​ более удобный инструмент.​ это еще(http://www.maxprecision.com/download/sp_Excel.txt), но​Для обновления отчёта​ языке базы данных,​ языке) .​
    ​Нажмите кнопку​ хранения файла, используемое​.​Если данные нужно импортировать​​База данных Microsoft SQL​​ кроме того в​​После этого запускается окно​​ расположения базы данных​ при помощи специальных​ которая находится в​​.​​ но программа Excel​ Я сейчас постепенно​ здесь ругается на​ потом можно просто​ а затем нажмите​Примечание:​Готово​ по умолчанию («Мои​Откроется мастер подключения данных,​ с использованием запроса​укажите SQL Server,​

    Переход к созданию умной таблицы в Microsoft Excel

  10. ​ соответствующие поля придется​ подключения к книге.​ в формате mdb​ операторов. Вот основные​ поле​Надстройка установлена и теперь​ тоже может работать​ туда свои перевожу.​ ошибки при выполнении​ открыть этот эксель​кнопку ОК​ ​, чтобы закрыть окно​ источники данных»).​​ включающий три страницы.​​ на языке базы​ к которому нужно​ ввести имя пользователя​​ В нем мы​​ или accdb и​ операторы SQL:​«Укажите расположение данных таблицы»​ можно запускать файл​ с БД, делая​​А если кому​​ T-SQL DECLARE @xlApp​

    Окно форматирования таблицы в Microsoft Excel

  11. ​ файл и обновить​.​Power Query​ мастера подключения к​При необходимости введите в​Страница 1. Подключение к​ данных, укажите его​ подключиться, в поле​ и пароль. После​ видим наименование ранее​ выбрать нужный файл​ORDER BY​. Также нужно обратить​ Excel, в котором​ SQL запросы. Давайте​​ надо будет именно​​ int, @xlBook int,​​Если что обращайся​​Если вы подключаетесь к​известна как​ данным.​​ поля​​ серверу базы данных​​ в поле​​Имя сервера​ того, как все​ подключенной нами базы​

    Наименование таблицы по умолчанию в Microsoft Excel

  12. ​ БД. Навигация между​– сортировка значений;​ внимание, чтобы около​ нужно организовать SQL​ узнаем, как различными​ в Excel отчет​ @xlSheet int, @xlRange​​ — я импортом​​ серверу в первый​

    Измененное наименование таблицы в Microsoft Excel

  13. ​Получение и преобразование​Откроется диалоговое окно​Описание​    ​Инструкция SQL​​. При необходимости вы​​ настройки проведены, жмем​

    Переход во вкладку XLTools в Microsoft Excel

  14. ​ данных. Если подключенных​ логическими дисками при​​JOIN​​ пункта​​ запрос. Вместе с​​ способами можно сформировать​

    Переход в окно выполнения SQL надстройки XLTools в программе Microsoft Excel

  15. ​ посмотреть — нет​ int, @RC int​ данных в эксель​ раз, вы увидите​в Excel 2016.​Импорт данных​,​На шаге 1 в​

    ​. Дополнительные сведения см.​ также можете указать​ на кнопку​ БД несколько, то​ этом производится в​– объединение таблиц;​«Таблица с заголовками»​ листом Эксель открывается​ подобный запрос.​ преград для патриотов.​ EXEC @RC=sp_Excel @Method=’Workbook.Initialize’,​ каждый день занимаюсь.​​ запрос на выберите​​ Приведенные ниже сведения​.​Имя​ поле​ в статье Импорт​

    ​имя базы данных​«Далее»​ выбираем нужную и​ специальном поле​GROUP BY​, стояла галочка, если​ окно для ввода​

    • ​Скачать последнюю версию​​ Пусть выгрузит. Там​
    • ​ @[email protected] output, @[email protected]​​В 2003-м точно​
    • ​ режим проверки подлинности​​ относятся к оба.​
    • ​В разделе​​и​
    • ​Имя сервера​​ данных из базы​

    ​.​. После выполнения этого​ выделяем её. После​​«Диски»​​– группировка значений;​​ заголовки в вашем​​ кода лицензии XLTools.​​ Excel​​ нормально отчеты экспортируются.​​ output EXEC @RC=sp_Excel​​ не помню как,​​ для подключения к​​ Подробнее об этом​

    ​Выберите способ представления данных​Ключевые слова поиска​введите имя компьютера​ данных с помощью​Если данные нужно импортировать​ действия происходит подключение​ этого щелкаем по​. Между каталогами производится​SUM​ массиве действительно присутствуют.​ Если у вас​Читайте также: Как создать​Diana_Who​

    ​ @Method=’Workbook.Save’, @[email protected] output,​ но похоже с​ базе данных. Выберите​ читайте в статье​​ в книге​​описание файла, имя​ SQL Server, к​ запроса на ее​ с использованием запроса​

Окно выполнения SQL запроса надстройкой XLTools в Microsoft Excel

​ к указанному серверу.​ кнопке​

Способ 2: использование встроенных инструментов Excel

​ переход в центральной​– суммирование значений;​ Затем жмите на​ имеется код, то​ базу данных в​

  1. ​: Помогите пожалуйста! Весь​ @[email protected] output, @FileName=’c:filename.xls’Может​ подключением с 2007-м.​​ режим проверки подлинности​​ Получение и преобразование​

    Переход во вкладку Данные в Microsoft Excel

  2. ​выполните одно из​​ и слова для​​ которому требуется подключиться.​ языке.​ на языке базы​​ Дальнейшие действия по​​«Свойства…»​ области окна под​DISTINCT​​ кнопку​​ нужно ввести его​

    Переход в Мастер подключения данных в Microsoft Excel

  3. ​ Экселе​​ материал, интернет перерыла,​​ подскажите в чем​P.S. в сводной​​ и продолжить.​​ в Excel 2016.​ следующих действий:​​ поиска.​​На шаге 2 в​

    Окно Мастера подключения данных в Microsoft Excel

  4. ​Нажмите кнопку​​ данных, укажите его​​ организации запроса к​в правой части​ названием​​– удаление дубликатов.​​«OK»​ в соответствующее поле​​Язык запросов SQL отличается​​ не могу найти​

    Окно выбора типа источника Мастера подключения данных в Microsoft Excel

  5. ​ проблема?​ таблице помещается около​Примечание:​Power Query обеспечивает гибкость,​Чтобы создать таблицу Excel,​Чтобы гарантировать, что файл​ разделе​ОК​ в поле​ базе данных аналогичны​ окна.​​«Каталоги»​​Кроме того, в построении​.​ и нажать на​ от аналогов тем,​​ код для экспорта​​pincet​ 3-5 млн. строк​ Если не имеет доступа​ чтобы импортировать данные​ щелкните элемент​ подключения всегда будет​Учетные сведения​.​Инструкция SQL​ тем, которые мы​​Запускается окно свойств подключения.​​. В левой области​

    Окно выбора базы данных в Microsoft Excel

  6. ​ запроса можно использовать​После этого весь указанный​ кнопку​ что с ним​ данных из SQL​: стесняюсь спросить -​ в 2003 офисе.​ к источнику данных​ из самых разных​​Таблица​​ использоваться при обновлении​

    Окно выбора таблицы базы данных в Microsoft Excel

  7. ​выполните одно из​Выберите режим проверки подлинности​. Дополнительные сведения см.​ описывали в предыдущем​ Перемещаемся в нем​ окна отображаются файлы,​ операторы​ диапазон будет отформатирован,​​«OK»​​ работают практически все​

    Окно сохранения файла подключения данных в Microsoft Excel

  8. ​ в Excel с​ а зачем выгрузка​ в 2007-м говорили​ (​ видов баз данных,​(вариант по умолчанию).​ данных, установите флажок​
    • ​ следующих действий:​​ для подключения к​
    • ​ в статье Импорт​​ способе.​
    • ​ во вкладку​​ расположенные в текущем​

    ​MAX​ как таблица, что​. Если вы желаете​ современные системы управления​ помощью запроса! (Это​ в excel? Какая​ что до 10​сервер​ которые он поддерживает​Чтобы создать отчет сводной​Всегда пытаться использовать этот​Чтобы использовать текущие имя​ базе данных SQL​ данных из базы​​Как видим, в Экселе​​«Определение»​

    ​ каталоге, если они​,​ повлияет как на​​ использовать бесплатную версию​​ БД. Поэтому вовсе​

    Окно импорта данных в Microsoft Excel

  9. ​ необходимо для автоматизации)​ цель преследуется?​ млн. строк, но​и​​ (не содержит Microsoft​​ таблицы, щелкните​ файл для обновления​​ пользователя и пароль​​ Server.​ данных с помощью​ SQL запрос можно​. В поле​

    Переход в окно подключений в Microsoft Excel

  10. ​ имеют расширение mdb​MIN​ его свойства (например,​ на 14 дней,​ не удивительно, что​ (Это же возможно,​carga2​ я не видел.​Da​ Access). Запуск запросов​Отчет сводной таблицы​​ данных​​ Microsoft Windows, выберите​Windows​

    Переход в свойства базы данных в Microsoft Excel

  11. ​ запроса на ее​ организовать, как встроенными​«Текст команды»​​ или accdb. Именно​​,​​ растягивание), так и​​ то следует просто​ такой продвинутый табличный​ ведь да?)​: Отчеты надо делать.​judarical​йства базы данных​ языке базы данных,​​.​​. Включение этого параметра​ вариант​​: этот режим используется​​ языке.​

    Окно свойств подключения в Microsoft Excel

  12. ​ инструментами программы, так​, находящееся внизу текущего​ в этой области​AVG​ на визуальное отображение.​​ нажать на кнопку​​ процессор, как Эксель,​Желательно таблицы из​ Я знаю вы​: Здравствуйте!​), вы увидите в​ которые можно сэкономить​Чтобы создать сводную диаграмму​ гарантирует, что все​Использовать проверку подлинности Windows​

Отправка запроса к базе данных в окне подключения к книге в Microsoft Excel

Способ 3: подключение к серверу SQL Server

​ по умолчанию. Выберите​Нажмите кнопку​ и при помощи​ окна, записываем SQL​ нужно выбрать наименование​,​ Указанной таблице будет​«Пробная лицензия»​ обладающий многими дополнительными​ СКЛь в Эксель.​ будете говорить, мол​в этом топике​

  1. ​ строке, чтобы запросить​ время, необходимое для​​ и отчет сводной​​ книги, использующие данный​.​​ это значение, если​​ОК​ сторонних надстроек. Каждый​ команду в соответствии​​ файла, после чего​​COUNT​ присвоено имя. Чтобы​.​​ функциями, тоже умеет​​ Но именно запросом​

    Переход к окну подключения к серверу SQL Server в Microsoft Excel

  2. ​ так не делают​ есть один из​ доступ к серверу​​ создания запросов с​​ таблицы, щелкните​ файл подключения, всегда​Чтобы указать имя пользователя​ вы хотите подключаться,​​.​​ пользователь может выбрать​ с синтаксисом данного​ кликнуть на кнопку​,​ его узнать и​При выборе пробной лицензии​ работать с этим​ из СКЛь.​ и т.д. и​ вариантов решения проблемы​ или базы данных​ помощью интерфейса Power​Сводная диаграмма и отчет​ будут использовать его​ и пароль для​ используя проверку подлинности​Выберите режим проверки подлинности​​ тот вариант, который​​ языка, о котором​«OK»​LEFT​ по желанию изменить,​ открывается ещё одно​ языком. Пользователи, владеющие​Или необходимо ещё​ т.п. Ну а​Генератор SQL запросов​

Окно Мастера подключения данных в программе Microsoft Excel

​ (если сведения о​ Query. Эта функция​ сводной таблицы​ обновления.​ доступа к базе​ Windows.​ для подключения к​ удобнее для него​ мы вкратце говорили​.​и др.​ клацаем по любому​ небольшое окошко, где​ языком SQL, используя​ Delphi задействовать?​ почему нет? Это​ для MS SQL​ запросе доступа указан​ особенно полезна для​.​Чтобы задать параметры доступа​ данных, выберите вариант​База данных: выберите это​

​ базе данных SQL​

lumpics.ru

Подключение базы данных SQL Server к книге (Power Query)

​ и является более​​ при рассмотрении​Вслед за этим запускается​В нижней части окна​ элементу массива. На​ нужно указать своё​ Excel, могут упорядочить​MihaelK​ что плохо работает?​ Server​ в Power BI​ работы с сложных​Примечание:​ к внешнему источнику​Использовать следующие имя пользователя​ значение, если вы​ Server.​ подходящим для решения​Способа 1​ окно выбора таблицы​ следует указать, куда​ ленте появляется дополнительная​

​ имя и фамилию​​ множество различных разрозненных​: зачем это нужно?​​ Или моветон?​Надеюсь, мой ответ​ для источника данных).​

​ запросов, которые уже​ Вариант​ данных для отчета​

  1. ​ и пароль​​ хотите подключаться, используя​​Windows​​ конкретно поставленной задачи.​​. Затем жмем на​​ в указанной базе​​ именно будет выводиться​​ группа вкладок –​ (можно псевдоним) и​​ табличных данных.​ обычно из базы​​cygapb-007​​ будет вам чем-то​​ Дополнительные сведения о​​ существуют — и​​Только создать подключение​​ сводной таблицы при​​и введите соответствующие​ проверку подлинности SQL​​: этот режим используется​

  2. ​ Хотя, возможности надстройки​​ кнопку​​ данных. В центральной​ результат обработки. Это​«Работа с таблицами»​​ электронную почту. После​​Но для начала давайте​ получаются данные, затем​​:​​ полезен​

  3. ​ запросе доступа к​ могут хотите или​доступен только для​ публикации книги на​ данные в поля​​ Server. Затем укажите​​ по умолчанию. Выберите​ XLTools, в целом,​«OK»​ области следует выбрать​ может быть новый​. Перемещаемся во вкладку​

    Диалоговое окно подключения к базе данных SQL Server с помощью Power Query

  4. ​ этого жмите на​​ рассмотрим вариант, когда​​ с помощью какойлибо​

  5. ​carga2​carga2​ источнику данных читайте​ не знаете, как​

    Учетные данные для подключения к SQL Server

    1. ​ базы данных OLAP.​​ службы Excel и​Имя пользователя​ имя пользователя и​ это значение, если​ все-таки несколько более​.​

    2. ​ наименование нужной таблицы​ лист книги (по​«Конструктор»​ кнопку​ из Экселя можно​ либы делается преобразование​, я из Excel​: Здравствуйте, ребята!​ Запросов на доступ​

  6. ​ перестроить с помощью​​В группе​​ ее открытии через​и​ пароль для подключения​ вы хотите подключаться,​ продвинутые, чем у​После этого производится автоматический​ (если их несколько),​ умолчанию) или определенный​, размещенную в ней.​​«Начать пробный период»​​ создать SQL запрос​

    ​ в эксель формат.​ подключаюсь к SQL,​Требуется экспортировать таблицу​ к внутренним источникам​ интерфейса Power Query.​Куда следует поместить данные?​​ службы Excel, нажмите​​Пароль​ к экземпляру SQL​ используя проверку подлинности​

​ встроенных инструментов Excel.​

​ возврат к окну​​ а потом нажать​​ диапазон на текущем​​ На ленте в​​.​

​ не с помощью​
​Diana_Who​

  1. ​ выполняю запрос, и​​ из MSSQL в​​ данных.​​Примечание по безопасности:​​выполните одно из​​ кнопку​.​​ Server.​

    Параметры

  2. ​ Windows.​​ Главный же недостаток​​ подключения к книге.​ на кнопку​ листе. В последнем​​ блоке инструментов​​Далее мы возвращаемся к​ стандартного инструментария, а​​: Дело в том,​​ форматирую результат запроса​

  3. ​ Excel. Я поняла,​Если установить подключение данных​ Один цели запросов на​ следующих действий:​Параметры проверки подлинности​​Примечание по безопасности:​​По умолчанию установлен флажок​База данных: выберите это​ XLTools заключается в​ Нам остается только​«Далее»​ случае нужно переставить​

    Диалоговое окно подключения к базе данных SQL Server с помощью Power Query

  4. ​«Свойства»​​ окну лицензии. Как​​ воспользовавшись сторонней надстройкой.​

  5. ​ что я не​ на листе отчета.​ что это можно​ результат возвращается в​

    Учетные данные для подключения к SQL Server

    1. ​ языке базы данных​​Чтобы поместить данные на​и выберите один​ ​Шифрование соединения​ значение, если вы​ том, что срок​

    2. ​ кликнуть по кнопке​.​ переключатель в соответствующую​в поле​ видим, введенные вами​ Одной из лучших​ могу настроить импортэкспорт​ Из SQL сформировать​ делать разными способами.​

  6. ​Редакторе запросов​​ — не стороне​​ существующий лист, выберите​ из следующих вариантов​Используйте надежные пароли, состоящие​, то есть Power​ хотите подключаться, используя​ бесплатного пользования надстройкой​«Обновить»​После этого открывается окно​ позицию и указать​​«Имя таблицы»​​ значения уже отображаются.​

    ​ надстроек, выполняющих эту​ через выборку внешних​ файл .XLSM не​ Хотела выполнить это​.​ действием. Тем не​​ вариант​​ подключения к источнику​ из букв в​ Query подключается к​

​ проверку подлинности SQL​

​ ограничен всего двумя​​в нем. Происходит​​ сохранения файла подключения​​ координаты этого диапазона.​​будет указано наименование​

​ Теперь нужно просто​
​ задачу, является комплекс​

​ данных в Excel,​ пробовал даже, ибо​ с помощью ДТС​Фигуры данных как​ менее Power Query​На существующий лист​ данных:​ верхнем и нижнем​ базе данных через​ Server. Затем укажите​ календарными неделями.​ обращение к базе​ данных. Тут указаны​После того, как запрос​ массива, которое ему​ нажать на кнопку​ инструментов XLTools, который​ отбивка приходит, что​ незачем..​

  1. ​ пакета, но мне​​ вы предпочитаете, затем​​ не гарантирует, что​​и введите имя​​Проверка подлинности Windows.​​ регистре, цифр и​​ зашифрованное соединение. Если​​ имя пользователя и​​Автор: Максим Тютюшев​

    Изображение ленты Excel

    ​ данных с запросом,​ основные сведения о​

    ​ составлен и соответствующие​ присвоила программа автоматически.​​«OK»​

  2. ​ кроме указанной возможности,​ такой сервер не​​Можно вообще замутить​​ надо создавать файл​ нажмите кнопку​ запрос не влияет​

  3. ​ первой ячейки в​    Выберите этот вариант,​​ символов. В ненадежных​​ вы не хотите​ пароль для подключения​

    • ​Примечание:​ после чего БД​ подключении, которое мы​ настройки произведены, жмем​​При желании это наименование​​.​

    • ​ предоставляет массу других​ найден или не​ стартовое меню (надстройка​ Excel с различными​​Применить и закрыть​ на базе данных.​​ нужном диапазоне.​ чтобы использовать имя​​ паролях не используются​​ использовать зашифрованное соединение,​​ к экземпляру SQL​​Мы стараемся как​

      ​ возвращает результаты его​​ настроили. В данном​

      • ​ на кнопку​ пользователь может изменить​После того, как вы​ функций. Правда, нужно​ существует. Но не​ в отдельным файле),​ именами, например с​для сохранения изменений​ При запуске запроса​Кроме того, можно нажать​ и пароль Windows​ сочетания таких элементов.​ снимите этот флажок,​ Server.​ можно оперативнее обеспечивать​ обработки назад на​

      • ​ окне достаточно нажать​«Выполнить»​ на более информативное,​ проделаете вышеуказанные манипуляции,​ заметить, что бесплатный​ в этом суть.​ из которого будут​ текущей датой и​ и импортировать данные​ на ее языке​

      ​ кнопку​ текущего пользователя. Этот​​ Надежный пароль: Y6dh!et5.​

  4. ​ а затем нажмите​​По умолчанию установлен флажок​ вас актуальными справочными​​ лист Excel, в​ на кнопку​​в нижней части​​ просто вписав в​ в вашем экземпляре​

    ​ период пользования инструментом​ Дело в том,​​ открываться все реализованные​​ не поняла как​ листа.​ записи другим пользователем,​Свернуть диалоговое окно​ способ является наиболее​ Ненадежный пароль: house1.​

    ​ кнопку​Шифрование соединения​ материалами на вашем​​ ранее перенесенную нами​

  5. ​«Готово»​​ окна. После этого​​ поле с клавиатуры​ Эксель появится новая​​ составляет всего 14​​ что эта транзакция​ отчеты, с указанием​ это сделать. Предполагала​Импорт данных из внешних​

  6. ​ вам будет предложено,​, выбрать ячейку​​ безопасным, но он​​ Пароль должен состоять​​Подключить​​, то есть Power​​ языке. Эта страница​​ таблицу.​.​ введенная операция будет​

  7. ​ желаемый вариант и​ вкладка –​ дней, а потом​ (экспортимпорт) лишь часть​​ в каждом конкретном​ создать хранимку и​ источников​​ чтобы убедиться, что​ на листе, а​ может плохо сказаться​ не менее чем​.​ Query подключается к​

  8. ​ переведена автоматически, поэтому​Кроме того, посредством инструментов​На листе Excel запускается​ произведена.​ нажав на клавишу​«XLTools»​ придется покупать лицензию.​ механизма, который целиком​ отчете параметров его​​ засунуть ее в​​undll​ вы знаете, запросов,​ затем нажать кнопку​ на производительности при​

    • ​ из 8 знаков.​​Если подключение к SQL​ базе данных через​ ее текст может​ Excel существует возможность​ окошко импорта данных.​Урок: «Умные» таблицы в​Enter​. Но не спешим​После того, как вы​ и полностью необходимо​

    • ​ запуска.​​ Job, но опять​: День добрый, столкнулся​ которые будут вычисляться​Развернуть диалоговое окно​ одновременном подключении к​ Лучше всего использовать​​ Server не установлено​​ зашифрованное соединение. Если​ содержать неточности и​ соединения с сервером​ В нем можно​ Экселе​.​ переходить в неё.​ скачали файл надстройки​ будет запустить лишь​pincet​ же не пойму​

    • ​ с такой проблемой.​​ с учетными данными.​.​ серверу многих пользователей.​ парольную фразу длиной​

      ​ через зашифрованное соединение,​​ вы не хотите​ грамматические ошибки. Для​ SQL Server и​ указать, в каком​Существует также способ создать​После этого таблица готова​ Прежде, чем создавать​xltools.exe​ нажатием 1 кнопки​: про SSRS слышали?​

      ​ как. Подскажите пожалуйста,​​Есть sql запросы,​Power Query позволяет задать​Чтобы поместить данные на​

  9. ​Единый вход.​​ не менее 14​​ Power Query предлагает​

  10. ​ использовать зашифрованное соединение,​​ нас важно, чтобы​​ посыла к нему​ именно виде вы​ SQL запрос к​

    ​ и можно переходить​​ запрос, нужно преобразовать​​, следует приступить к​

  11. ​ (не буквально).​​carga2​ как?​​ которые формируют отчеты,​ запрос языке базы​

    • ​ новый лист, начиная​    Выберите этот​​ знаков.​​ подключиться, используя незашифрованное​

    • ​ снимите этот флажок,​ эта статья была​​ запросов. Построение запроса​​ хотите, чтобы данные​

    • ​ выбранному источнику данных​ непосредственно к организации​ табличный массив, с​​ его установке. Для​Уже думала из​​:​

      ​AndreyVorobey​​ необходимо результаты закинуть​​ данных в поле​​ с ячейки A1,​ параметр, чтобы использовать​

  12. ​Очень важно запомнить пароль,​​ соединение. Нажмите кнопку​​ а затем нажмите​ вам полезна. Просим​

    • ​ не отличается от​ были представлены:​ с помощью встроенных​​ запроса. Перемещаемся во​​ которым мы будем​ запуска инсталлятора нужно​ SQL в Delphi,​

      ​cygapb-007​: Что именно не​​ в excel.​ Изображение кнопки​Инструкцию SQL​ установите переключатель​ единый вход (SSO),​​ поскольку корпорация Майкрософт​ Изображение кнопки​ОК​

    • ​ кнопку​ вас уделить пару​ предыдущего варианта, но​Таблица​​ инструментов Эксель.​​ вкладку​

  13. ​ работать, в так​ произвести двойной щелчок​ а потом из​, отчеты должны создаваться​ понимаете? Как создать​​Получилось выгрузить результаты​​, при подключении к​На новый лист​​ а затем введите​​ не сможет помочь​в окне сообщения,​​Подключить​​ секунд и сообщить,​

    ​ прежде всего, нужно​;​

support.office.com

Импорт данных из базы данных с помощью запроса на ее языке (Power Query)

​Запускаем программу Excel. После​​«XLTools»​ называемую, «умную» таблицу​ левой кнопки мыши​ него в Excel.​ автоматически. Я сделала​ хранимую процедуру или​ в excel через​ базе данных. В​.​ соответствующий идентификатор в​ в его восстановлении.​ чтобы использовать незашифрованное​.​ помогла ли она​ установить само подключение.​Отчёт сводной таблицы​ этого перемещаемся во​.​ и присвоить ей​ по установочному файлу.​ Не могу додумать​

​ excel файл с​​ как впихнуть её​​ job, проблема в​​ приведенном ниже примере​​При необходимости можно изменить​​ поле​ Все записанные пароли​ соединение.​Если подключение к SQL​ вам, с помощью​ Посмотрим, как это​;​

​ вкладку​После перехода на ленте​ имя.​ После этого запустится​ рациональный маршрут.​ макросами, этот файл​ в Job?​ том что данные​ мы Импорт данных​ свойства подключения (вместе​Код SSO​ следует хранить в​Пример формулы​ Server не установлено​ кнопок внизу страницы.​ сделать.​Сводная диаграмма​«Данные»​ в блоке инструментов​Для этого выделяем​ окно, в котором​

​__________________​​ засунула в майкрософт​pincet​ выгружаются в первый​ из базы данных​ с файлом подключения).​. Администратор может настроить​ надежном месте вдали​Для написания формул​ через зашифрованное соединение,​ Для удобства также​Запускаем программу Excel и​.​.​«SQL запросы»​ указанный массив или​ нужно будет подтвердить​

​Ситуация такая, есть​ шедулер, он запускается​: создать источник данных​​ столбец, т.е. без​​ SQL Server, с​ Для этого нажмите​ сайт Windows SharePoint Services​ от сведений, для​Power Query​ Power Query предлагает​ приводим ссылку на​ переходим во вкладку​Выбираем нужный вариант. Чуть​В блоке инструментов​щелкаем по значку​

  1. ​ любой его элемент.​ согласие с лицензионным​ таблица в SQL,​ в определенное время,​​ в excel не​​ разделителя. Как можно​​ помощью запроса на​​ кнопку​​ для использования базы​ защиты которых они​​можно также использовать​

    Получение внешних данных из базы данных

  2. ​ подключиться, используя незашифрованное​​ оригинал (на английском​​«Данные»​

    1. ​ ниже требуется указать,​​«Получение внешних данных»​​«Выполнить SQL»​​ Находясь во вкладке​​ соглашением на использование​ необходимо извлечь от​ заполняется данными и​ предлагать?​ реализовать выгрузку в​

    2. ​ ее языке. Процедура​​Свойства​​ данных единого входа,​ предназначены.​редактор запросов​ соединение. Нажмите кнопку​​ языке) .​​. После этого щелкаем​

      Выполнение запросов на языке базы данных

  3. ​ куда именно следует​, который расположен на​.​«Главная»​ продукции компании Microsoft​ туда данные в​ сохраняется под определенным​carga2​ excel, есть небольшой​

    ​ работает аналогично всех​​, внесите изменения в​ в которой могут​Страница 2. Выбор базы​​.​​ОК​​Использование Excel​​ по кнопке​​ поместить данные: на​ ленте, жмем на​Запускается окно выполнения SQL​щелкаем по значку​ — NET Framework​ Excel да так,​ именем. В принципе​:​ нюанс, job будет​ баз данных, поддерживаемые​ диалоговом окне​ храниться имя пользователя​ данных и таблицы​= Sql.Databases(«.»)​

  4. ​в окне сообщения,​Получение и преобразование (Power​​«Из других источников»​​ новый лист или​
    ​ значок​ запроса. В левой​«Форматировать как таблицу»​​ 4. Для этого​​ чтобы по полю​ то работает нормально,​AndreyVorobey​

    Редактор запросов

См. также

​ запускаться ежедневно, соответственной​ Power Query.​

support.office.com

Выгрузка результатов SQL запроса в Excel

​Свойства подключения​​ и пароль. Этот​    ​
​= Sql.Database(«.»,»Contoso»)​ чтобы использовать незашифрованное​ Query)​, которая размещается на​
​ на текущем листе.​«Из других источников»​ его области следует​. Он размещен на​ всего лишь нужно​ Дата производилось суммирование.​ но хочется сделать​,​ в одной и​Подключение к базе данных​, а затем нажмите​ способ является наиболее​В разделе​Функция «Получить и преобразовать»​ соединение.​опыта подключение к​ ленте в блоке​
​ В последнем случае​

​. Открывается список дальнейших​​ указать лист документа​ ленте в блоке​ кликнуть по кнопке​Если производить суммирование​ через хранимку, просто​pincet​
​ той же папке​ SQL Server с​ кнопку​
​ эффективным при подключении​Выберите базу данных, содержащую​ не была доступна​Пример формулы​ базе данных SQL​
​ инструментов​ предоставляется также возможность​ вариантов действий. Выбираем​ и таблицу на​ инструментов​
​«Принимаю»​ по дате в​ попробовать. Может в​, я нашла как​
​ должны создаваться excel​ помощью Power Query.​ОК​ к серверу большого​
​ нужные сведения​ в Excel 2007,​Для написания формул​ Server.​
​«Получение внешних данных»​ выбора координат размещения.​ в нем пункт​ древе данных, к​«Стили»​внизу окошка.​ SQL, то запрос​ этом методе(через хранимку)​

​ создать процедуру​​ файлы с именем​
​ На вкладке ленты​.​ числа пользователей.​
​выберите базу данных.​ но можно использовать​Power Query​
​Более новые версии​. На этот раз​ По умолчанию данные​

CyberForum.ru

Экспорт таблицы из MSSQL в Excel

​«Из мастера подключения данных»​​ которой будет формироваться​
​. После этого открывается​После этого установщик производит​ выглядит так:​ есть подводные камни​T-SQL INSERT INTO​ файла содержащим сегодняшнюю​POWER QUERY​Дополнительные сведения см. в​Нет.​ В разделе​ файл подключения к​можно также использовать​ Office 2010 –​ из раскрывшегося списка​ размещаются на текущем​.​ запрос.​ список выбора различных​ загрузку обязательных файлов​select SUM(kol*cena)​

​ о которых я​​ OPENROWSET(‘Microsoft.ACE.OLEDB.12.0’, ‘Excel 12.0;Database=c:1.xlsx’,’select​ дату.​щелкните​ статье Свойства подключения.​    Выберите этот вариант,​

​Подключение к определенной таблице​​ данным Office (ODC)​редактор запросов​ 2013 2007 ​

​ выбираем вариант​​ листе. Левый верхний​​Запускается​​В правой области окна,​​ стилей. Выбираем тот​​ и начинает процесс​frtom kassa​
​ не знаю, почему​ * from [1$]’)​Спасибо.​Из базы данных​Примечание:​ чтобы сохранить имя​выберите нужную таблицу​ для подключения к​.​На вкладке ленты​«С сервера SQL Server»​ угол импортируемого объекта​Мастер подключения данных​ которая занимает его​ стиль, который вы​ их установки.​where year(day)=2017 and​ все от него​ select * from​Devil_FoX​>​Мы стараемся как​
​ пользователя и пароль​ или представление.​ базе данных Microsoft​= Sql.Databases(«.»)​Данные​.​ размещается в ячейке​. В перечне типов​ большую часть, располагается​ считаете нужным. На​Далее откроется окно, в​ month(day)=01​ отговаривают? Может проще​ t1как засунуть в​: в экселе 2007​

​Из базы данных SQL​​ можно оперативнее обеспечивать​ в файле подключения.​Кроме того, можно снять​ SQL Server из​

​= Sql.Database(«.»,»Contoso»)​​щелкните​Происходит открытие окна подключения​A1​ источников данных выбираем​ сам редактор SQL​ функциональность таблицы указанный​ котором вы должны​(это для подсчёта​ и лучше генерировать​

​ Job знаю. Дело​​ заходи в пункт​​ Server​​ вас актуальными справочными​Примечание по безопасности:​ флажок​ книги Excel 2007.​На вкладке ленты​Получить данные​ к серверу баз​.​«ODBC DSN»​
​ запросов. В нем​ выбор никак не​ подтвердить свое согласие​ суммы за январь,​ отчеты по-другому, например​ в том, что​ Данные / Из​.​ материалами на вашем​

​ Не рекомендуется сохранять сведения​​Подключение к определенной таблице​

​ SQL Server —​​Power Query​​>​​ данных. В поле​После того, как все​. После этого щелкаем​ нужно писать программный​ повлияет, так что​ на установку этой​ так необходимо вычислить​ через SQL Reporting​ перед этим надо​ других источников /​Во всплывающем окне​ языке. Эта страница​ о входе при​. В этом случае​ это полнофункциональная реляционная​щелкните​Из базы данных​«Имя сервера»​ настройки импорта указаны,​ по кнопке​ код. Наименования столбцов​ основывайте свой выбор​ надстройки. Для этого​ для всего года)​

​ Service?​​ сначала создать Excel​ С сервера SQL​База данных Microsoft SQL​ переведена автоматически, поэтому​ подключении к источникам​ всем остальным пользователям​ СУБД, предназначенная для​Из базы данных​>​указываем наименование того​ жмем на кнопку​«Далее»​ выбранной таблицы там​ исключительно на основе​ нужно щелкнуть по​craf​
​4ewir​ документ, чтобы иметь​ Server.​:​ ее текст может​ данных. Эта информация​ с этим файлом​

CyberForum.ru

Экспорт данных из SQL в Excel с использованием запроса

​ создания корпоративных решений​​>​Из базы данных SQL​ сервера, к которому​«OK»​.​ уже будут отображаться​ предпочтений визуального отображения.​ кнопке​: нету такого запроса​: Через SRSS однозначно​
​ возможность в него​В появившемся окне​Укажите​ содержать неточности и​
​ может храниться в​ подключения будет предложено​

​ в области управления​​Из базы данных SQL​ Server​ выполняем подключение. В​.​Открывается окно​ автоматически. Выбор столбцов​

​Вслед за этим запускается​​«Установить»​нужно на сервере​ проще) И, кстати,​ что-то засунуть. Я​ прописуешь имя сервера​сервер​ грамматические ошибки. Для​ виде обычного текста,​ выбрать таблицу или​ данными с высокими​ Server​. Если вы не​ группе параметров​Как видим, таблица из​Мастера подключения данных​ для обработки производится​ небольшое окошко. В​.​
​ преобразовать в нужный​ там есть много​ наткнулась на один​ — Далее​и​ нас важно, чтобы​
​ и злоумышленники смогут​
​ представление из списка.​ требованиями к производительности,​.​ видите кнопки​«Учетные сведения»​ базы данных перемещена​, в котором нужно​
​ с помощью команды​ нем указываются координаты​Затем начинается процедура установки​ вам формат​
​ приятных плюшек вроде​
​ форум http://www.sqlservercentral.com/articles/Excel/64838/. Выполнила​
​Выбираешь БД и​базу данных​
​ эта статья была​ получить с ее​Страница 3. Сохранение файла​ доступности, масштабируемости и​

​В диалоговом окне​​Получить данные​
​нужно определиться, как​ на лист. Затем​ выбрать тип источника.​

CyberForum.ru

​SELECT​

Кому нужен SQL? Оказывается, всем. А зачем?

Бизнесмены, госкорпорации, государственные органы, все стремятся использовать как можно больше высоких технологий для достижения поставленных целей. Ну буквально всё, что возможно, хочется автоматизировать: бухгалтерский и управленческий учет, финансы и логистику, транспорт и продажи. На высокооплачиваемые должности привлекают специалистов подкованных в современных технологиях.

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

Мы уже рассказывали о профессиях, в которых можно успешно развиваться на сегодняшний день. А сегодня мы попробуем доходчиво, простыми словами рассказать об SQL — инструменте, с которым можно сделать первый шаг в в сферу аналитики. Хотя его использование, конечно, этим не ограничивается.

SQL (ЭсКуЭль) — это и язык для программистов и мощный инструмент для всех специалистов, которым требуется анализировать и обрабатывать информацию из баз данных. Продвинутые аналитики, финансисты, экономисты и даже бухгалтеры или товароведы учат SQL.

SQL — следующая ступень эволюции после общеизвестных программ Excel и Access. Но это не программа, это язык запросов, которые понимают другие приложения и базы данных в целом.

На примере Excel можно объяснить работу SQL запросов

Информация о продажах, закупках, бухгалтерских проводках хранится в связанных между собой таблицах (например, таких как база 1С или база данных вашей товароучетной программы).

Данные имеют свои идентификаторы (id). Благодаря этому вся информация структурирована не в одной громоздкой таблице, а в множестве маленьких и «легких», связанных между собой особенными отношениями таблиц. Таким образом уменьшается объем файла с информацией. Он занимает меньше места на диске, время выполнения запросов сокращается, система работает быстрее.

На языке SQL пишутся специальные запросы (так называемые SQL инструкции) к базе данных с целью получения данных или для манипулирования ими.

Задав правильный запрос к базам, вы можете создавать таблицы, извлекать данные, удалять, фильтровать и т.п.

Плюсы SQL запросов:

  • используются на международном уровне;
  • инструменты SQL внедрены во все пакетные решения;
  • SQL имеет поддержку во всех языках программирования;
  • все системы управления базами данных (Oracle Database, Interbase, Firebird, Microsoft SQL Server, PostgreSQL) понимают SQL ;
  • запросы открывают доступ к базе данных для разных аналитиков;
  • находят ответы на непредсказуемые запросы руководства (это значит, что не нужно будет покупать новое приложение для решения новых и нестандартных задач).

Жизненная необходимость SQL инструментов

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

Но он также нужен экономисту банка или торговой сети, который хочет стать ведущим аналитиком. Т.е. первая причина для освоения — карьерный рост.

Когда страничек в книге Excel уже не хватает, фильтрация, поиск и обработка занимает все рабочее время аналитиков — значит бизнес достаточно масштабирован и готов общаться на языке программирования. Масштабирование бизнеса — еще одна из причин для привлечения экономистов со знанием SQL.

В растущей компании объем данных увеличивается в геометрической прогрессии, чтобы информацию обработать и не потерять, да еще и проанализировать требуются финансовые аналитики, умеющие говорить на SQL.

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

Простые ответы на сложные вопросы с помощью SQL

В огромной сети магазинов, типа Ашан, товаровед решает, сколько товаров нужно заказать у поставщиков для выполнения текущих заказов. Для решения потребуется выполнить множество расчетов: нужно посчитать остатки товара с учетом нормы запаса, посчитать дефицит товара, вывести название продукта и название поставщика. Такую многошаговую задачу решают SQL-запросы.

Для экономиста базы данных выведут список чеков за выбранный день дороже или дешевле нужной суммы и покажут, на каких кассах их пробили.

Финансовый аналитик с помощью SQL получает правильные исходные данные для построения дальнейших гипотез развития бизнеса. Он сможет верно определить причинно-следственных связи в поведении исследуемых реалий.

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

Как освоить SQL

Приятная новость в том, что в изучении SQL нет ничего сложного, это быстро, а синтаксис запросов прост и понятен.

Исторически SQL создавали, как инструмент для отбора и управления данными, которые закопаны в связанных таблицах. Перед создателями стояла цель — разработать эффективный и простой инструмент. Он должен быть понятен тем, кто не разбирается в языках программирования. Сегодня операторами SQL-запросов могут быть и экономисты, и бухгалтера, и финансисты, даже товароведы и другие специалисты.

Если вы отлично ладите с таблицами Excel, у вас хорошие шансы быстро освоить SQL. Даже если знаний по Excel не хватает, есть специализированные курсы, которые помогут быстро получить нужные навыки.

Чтобы развиваться по специальности экономиста или финансиста, нужны курсы и тренинги по языку SQL. Владение средствами поиска и анализа данных — это то что отличает настоящего аналитика, от обычного экономиста.

Изучив новый язык запросов, вы никогда не останетесь без работы в современном технологичном мире. Наоборот получите шансы подняться вверх по карьерной лестнице или даже выйти на международный уровень.

Истории выпускников Нетологии

Арсений Сова, выпускник курсов по аналитике в Нетологии:

Я работал менеджером проектов долгое время — своя команда, разработка различных программных решений, спектр задач довольно широкий. Потом решил с головой уйти в переквалификацию в менеджера продукта, и посчитал, что скилы аналитика подтянуть нужно. Соответственно оказался в Нетологии и изучал SQL. Для менеджера продукта он нужен как воздух — чем крупнее компания, тем сильнее.

Самое крутое в SQL — это его простота, гибкость, и очень низкий порог входа. Появление clickhouse вдохнуло в sql жизнь, в СНГ особенно. Самое главное — простота получения данных, как для дальнейшего анализа, так и для первичного знакомства с данными.

Например, исследование активности пользователей на проекте; исследования аудитории; получение данных для первичного анализа. Частая история, что менеджер продукта готовит отчетность, и соответственно, данные как-то собирать нужно. Даже проведение А/Б-тестирование — это все начинается с SQL.

Да и вообще, подводя итог, без SQL, на мой взгляд, никуда, уже скоро требование знаний по excel станет для всех — смех-смехом, все чаще вижу, что нужно знание sql, хотя бы на базовом уровне.

Роман Крапивин, руководитель проектов компании ООО «ИНТЭК» и выпускник курсов по аналитике в Нетологии:

Я работаю в строительном секторе руководителем проектов. За последние 3 года мы реализовали три крупных проекта на территории Москвы в сфере гражданского строительства.

И я пошёл на курс SQL по нескольким причинам. Во-первых, данный инструмент является одним из самых важных в арсенале аналитика в современном мире. На мой взгляд, не зная SQL, невозможно в дальнейшем развиваться как аналитик.

Во-вторых, во многих современных компаниях, которые работают с большим объемом информации (большими данными) требуют знания SQL. Так как в дальнейшем я хочу развиваться в финансовой сфере или сфере ритейла, знание данного инструмента просто необходимо для меня.

Понравилась статья? Поделить с друзьями:
  • Для чего нужно форматирование данных в excel
  • Для чего нужно форма word
  • Для чего нужно условное форматирование excel
  • Для чего нужно среднее значение в excel
  • Для чего нужна программа excel в работе