Может ли SQL заменить Excel?
- Что такое SQL и MS Excel?
1.1. SQL (Structured Query Language) - декларативный язык программирования, применяемый для создания, модификации и управления данными в реляционной базе данных, управляемой соответствующей системой управления базами данных. Год выхода: 1974 г.
Большинство современных веб приложений взаимодействуют с базами данных, как правило, посредством SQL запросов.
SQL - язык специально разработанный для взаимодействия с системами управления баз данных, таких как MySQL, Oracle, Sqlite и прочие. Для выполнения SQL запросов требуется установить MySQL* на локальный компьютер. Также я рекомендую использовать phpMyAdmin в качестве визуального интерфейса.
___
- MySQL (МФА: [maɪ ˌɛskjuːˈɛl]) — свободная реляционная система управления базами данных[7]. Разработку и поддержку MySQL осуществляет корпорация Oracle, получившая права на торговую марку вместе с поглощённой Sun Microsystems, которая ранее приобрела шведскую компанию MySQL AB.
____
Иначе, SQL — это язык программирования, предназначенный для работы с наборами фактов и отношениями между ними. В программах управления реляционными базами данных, таких как Microsoft Office Access, язык SQL используется для работы с данными. В отличие от многих языков программирования, SQL удобочитаем и понятен даже новичкам. Как и многие языки программирования, SQL является международным стандартом, признанным такими комитетами по стандартизации, как ISO и ANSI.
На языке SQL описываются наборы данных, помогающие получать ответы на вопросы, например:
Задача 1. Какие продавцы продали в 2010 году более 50 штук товара №1?
select LastName --, sum(od.Quantity)
from Employees as e
join Orders as o on e.EmployeeID = o.EmployeeID
join [Order Details] as od on o.OrderID = od.OrderID
where od.ProductID = 1
and year(o.OrderDate) = 2010
group by LastName
having sum(od.Quantity) > 50
Задача 2. Для каждого покупателя (имя, фамилия) найти два товара (название), на которые покупатель потратил больше всего денег в 2020-м году.
SELECT ContactName, ProductName FROM (
SELECT c.ContactName, p.ProductName
, ROW_NUMBER() OVER (
PARTITION BY c.ContactName
ORDER BY SUM(od.Quantity * od.UnitPrice * (1 -
od.Discount)) DESC
) AS RatingByAmt
FROM Customers c
JOIN Orders o ON o.CustomerID = c.CustomerID
JOIN [Order Details] od ON od.OrderID = o.OrderID
JOIN Products p ON p.ProductID = od.ProductID
WHERE YEAR(o.OrderDate) = 2020
GROUP BY c.ContactName, p.ProductName
) t
WHERE RatingByAmt < 3
Аналитик данных пишет в операторах SQL и отправляет запросы к базе данных, которая получает эти запросы. Затем база данных возвращает результаты запроса или вносит изменения в записи. Данные хранятся в базе данных и организованы по таблицам. Преимущество запросов состоит в том, что их можно отследить по изменениям в таблицах данных.
Функциональные особенности SQL
• язык запросов SQL предназначен для оперативного анализа больших объемов данных (более быстрое по сравнению с Excel);
• организация / структура данных SQL: таблицы SQL более требовательны по сравнению с Excel в отношении согласованных типов данных и ограничивают пользователей, если они пытаются ввести неправильный тип;
• язык SQL позволяет подготовить данные для дальнейшего анализа в другом программном обеспечении;
• cогласованные отчеты или расчеты: имеется возможность сохранять и обмениваться запросами
• язык запросов SQL сравнительно безопаснее чем в Excel, поскольку изменения всегда отслеживаются и проверяются.
SQL более правомерно сравнивать с другим приложением MS Office: MS Access.
Область применения: большие базы данных (big data) в интернет-пространстве.
Ключевые пользователи: аналитики данных.
1.2. Microsoft Excel – программное приложение MS Office для работы с электронными таблицами, год выхода: 1985 г.
В рамках анализа данных MS Excel позволяет выполнять следующие функции, в том числе:
• работать с различными типами данных;
• преобразовывать данные из одного формата в другой;
• выполнять расчеты с помощью встроенных формул, формул массивов, пользовательских функций, сводных таблиц;
• организовывать дневники и журналы;
• хранить структурированную информацию;
• генерировать аналитические отчеты;
• строить простые и сложные графики и диаграммы;
• создавать схемы, рисунки и диаграммы;
• разрабатывать и применять аналитические базы данных;
• импортировать и экспортировать информацию;
• автоматизировать однотипные действия;
• создавать панели управления задачами и проектами;
• находить решение математических задач и систем уравнений;
• вести семейный бюджет;
• программировать широкий спектр задач на встроенном языке VBA и т.д.
Таким образом, MS Excel - это инструмент для работы с электронными таблицами, использующий широкий инструментарий для анализа и обработки данных, превосходящий возможности SQL по обработке данных.
При этом MS Excel имеет ограничения при работе с десятками тысяч записей, особенно, если требуется извлечь из данных только некоторые из них, удовлетворяющие определенным критериям. А если из этих данных нужно выбирать записи десятки раз в секунду по запросам пользователей/программы? И при этом результат должен быть получен не за часы/минуты, а за секунды, поскольку клиент для принятия оперативного решения не сможет ждать ответ так долго.
Область применения: преимущественно локальные базы данных.
Ключевые пользователи: владельцы бизнеса, консультанты, эксперты, аналитики, студенты.
- Может ли SQL заменить Excel?
Вышеизложенное позволяет заключить, что язык запросов SQL и приложение MS Excel имеют различные области применения и ключевых пользователей.
В заключение, эти аналитические инструменты имеют свое назначение в задачах анализа данных. SQL и MS Excel служат своим уникальным целям, и знание обоих полезно для всех, кто регулярно анализирует информацию.
Соответственно, язык запросов SQL не может заменить приложение MS Excel.