SAP HANA SQL: изучите базовые операторы за 10 минут
⚡ Умное резюме
SAP HANA SQL — это основной язык баз данных платформы. Он отвечает за определение схемы, манипулирование данными, контроль доступа и управление сессиями, следуя стандарту, обеспечивающему переносимость SQL между реляционными базами данных.

Большинство баз данных РСУБД использует SQL Причина популярности языка баз данных в том, что он мощный, независимый от поставщика и стандартизированный. SAP HANA также поддерживает SQL.
In SAP HANA, SQL — основной язык баз данных.
Что такое SAP ХАНА SQL?
SQL означает язык структурированных запросов. Это стандартный язык для общения с реляционными базами данных, такими как Oracle, MySQL и т. д. SQL используется для хранения, извлечения и изменения данных в базе данных.
Используя SQL в SAP HANA, мы можем выполнить следующие работы:
- Определение и использование схемы (CREATE SCHEMA).
- Оператор DML (SELECT, UPDATE, INSERT).
- Оператор DDL (CREATE, ALTER, DROP)
- Заявление DCL (ПРЕДОСТАВЛЕНИЕ, ОТМЕНА)
- Управление системой
- Управление сеансом
- Управление транзакциями
Операторы выполняются из SQL-консоли. SAP HANA Studioиз клиента командной строки или из приложения, подключающегося через JDBC или ODBC. Сам язык программирования в обоих случаях идентичен.
Категории SQL-запросов в SAP HANA
Каждое утверждение принадлежит к одному из небольшого числа семейств. Знание того, к какому семейству относится утверждение, позволяет предсказать, можно ли его отменить и какие разрешения для этого необходимы.
| Категория | Полное имя | Типичные утверждения | Цель |
|---|---|---|---|
| DDL | Язык определения данных | СОЗДАТЬ, ИЗМЕНИТЬ, УДАЛИТЬ, ПЕРЕИМЕНОВАТЬ | Определяет и изменяет такие объекты, как схемы, таблицы и представления. |
| DML | Язык манипулирования данными | ВЫБОР, ВСТАВКА, ОБНОВЛЕНИЕ, УДАЛИТЬ, ДОПОЛНИТЕЛЬНАЯ ВСТАВКА | Считывает и изменяет строки, содержащиеся внутри объектов. |
| DCL | Язык управления данными | ПРЕДОСТАВИТЬ, ОТМЕНИТЬ | Определяет, какой пользователь или роль может выполнять какое действие. |
| TCL | Язык управления транзакциями | ПОДТВЕРЖДЕНИЕ, ОТКАТ, СОХРАНЕНИЕ ТОЧКИ | Подтверждает или отклоняет единицу работы. |
| Сессия | управление сессиями | SET SCHEMA, CONNECT, SET TRANSACTION | Настраивает текущее соединение. |
| Система | Управление системой | ИЗМЕНИТЬ СИСТЕМУ, мониторинг представлений | Управляет самим экземпляром базы данных. |
Оператор UPSERT заслуживает внимания, поскольку он присутствует не во всех диалектах. Он вставляет строку, когда ключ новый, и обновляет ее, когда ключ уже существует, что устраняет распространенный шаблон с двумя операторами.
Комментарий в SQL
Мы можем добавить комментарий, чтобы улучшить читаемость и удобство обслуживания операторов SQL. Комментарий к SQL можно добавить двумя способами:
- Однострочный комментарий – Double Дефис «–». Это комментарий в одну строку.
- Многострочный комментарий – “/* */”.
Весь закомментированный текст игнорируется анализатором SQL.
-- This is a single line comment SELECT ELEMENT FROM DHK_SCHEMA.TABLE1; /* This is a multiple line comment. Everything between the markers is ignored by the SQL parser. */ SELECT COUNT(*) FROM DHK_SCHEMA.TABLE1;
Примеры базового синтаксиса SQL в SAP HANA
Приведённые ниже операторы описывают повседневный цикл создания схемы, определения таблицы, загрузки строк и их последующего чтения. В консоли SQL они выполняются без изменений.
1) Создайте схему. Схема владеет объектами, созданными внутри неё, и является первым элементом, необходимым для нового проекта.
CREATE SCHEMA DHK_SCHEMA; SET SCHEMA DHK_SCHEMA;
2) Создайте таблицу со столбцами. Столбцовое хранилище является хранилищем по умолчанию и объясняет высокую скорость анализа в HANA. Построчное хранилище выбирается только для небольших таблиц с высокой интенсивностью записи.
CREATE COLUMN TABLE DHK_SCHEMA.EMPLOYEE ( EMP_ID INTEGER NOT NULL, EMP_NAME NVARCHAR(100), HIRE_DATE DATE, SALARY DECIMAL(10,2), PRIMARY KEY (EMP_ID) );
3) Вставить и обновить строки. Оператор INSERT добавляет строку, а UPDATE изменяет существующие. Оператор UPDATE всегда следует использовать в сочетании с условием WHERE, если только не требуется изменить все строки.
INSERT INTO DHK_SCHEMA.EMPLOYEE VALUES (1, 'Anita Sharma', '2026-01-15', 55000.00); UPDATE DHK_SCHEMA.EMPLOYEE SET SALARY = 60000.00 WHERE EMP_ID = 1;
4) Выполните запрос к данным. Оператор SELECT поддерживает привычные предложения WHERE, GROUP BY, HAVING и ORDER BY.
SELECT EMP_NAME, SALARY FROM DHK_SCHEMA.EMPLOYEE WHERE SALARY > 50000 ORDER BY SALARY DESC;
5) Предоставьте доступ и подтвердите действие. DCL контролирует, кто может читать таблицу, а COMMIT делает изменения постоянными.
GRANT SELECT ON DHK_SCHEMA.EMPLOYEE TO REPORT_USER; COMMIT;
Подробная информация об определении каждого столбца на уровне отдельных полей приведена в разделе... SAP Типы данных HANAа также символы, используемые в предложении WHERE в SAP операторы HANA.
SAP HANA SQL против стандартного SQL
SAP HANA строго следует стандарту SQL, поэтому опытный разработчик быстро достигает высокой производительности. Важные отличия — это дополнения, а не отклонения от него.
| Район | Стандартный SQL | SAP Хана SQL |
|---|---|---|
| Хранение на столе | По умолчанию используется ориентация по строкам. | По умолчанию используется столбцовое хранение, построчное хранение является необязательным. |
| Вставить или обновить данные одним оператором | Слияние (MERGE) там, где это поддерживается. | UPSERT — более простой синтаксис для достижения того же результата. |
| Ограничение на количество результатов | Диалектные особенности | ЛИМИТОВОЕ значение со смещением, плюс ВЕРХНЯЯ ЧАСТЬ |
| Процедурное расширение | Зависит от поставщика | SQLScript с использованием табличных переменных и параллельным выполнением. |
| Полнотекстовый поиск | Обычно это дополнительная опция. | Встроено через столбцы TEXT и SHORTTEXT. |
| Чувствительность к регистру | Зависит | Идентификаторы без разделителей пишутся заглавными буквами, идентификаторы с разделителями сохраняют свой регистр. |
Правило идентификатора вызывает больше всего неожиданностей. Написание имени таблицы строчными буквами без двойных кавычек приводит к его отображению в верхнем регистре, а последующий поиск внутри двойных кавычек в нижнем регистре не удаётся её найти. Правила изложены в [ссылка на правило]. типы данных и идентификаторы учебное пособие, а более широкая платформа рассматривается в разделе... SAP Учебное пособие по HANA серии.
