Оператор SAP HANA: Union & Союз усіх

Anonim

Оператор SAP HANA може використовуватися для обчислення, порівняння значень або для присвоєння значення. SAP HANA містять нижче операторів-

Одинарний і двійковий оператор

Арифметичний оператор

Рядкові оператори

Оператор порівняння

Логічний оператор

Встановити оператор

Одинарний і двійковий оператор

Оператор Операція Опис
Одинарний Унарний оператор застосовується до одного операнда Одинарний оператор плюс (+) Одинарний оператор заперечення (-) Логічне заперечення (НЕ)
Двійкові Двійковий оператор застосовується до двох операндів Мультиплікативні оператори (*, /) Адитивні оператори (+, -) Оператори порівняння (=,! =, <,>, <=,> =) Логічні оператори (AND, OR)

Арифметичний оператор

  • Додавання (+)
  • Віднімання (-)
  • Множення (*)
  • Відділ (/)

Рядковий оператор

Рядковий оператор - це оператор конкатенації, який поєднує два елементи, такі як рядки, вирази або константи, в один.

Дві вертикальні смуги "||" використовується як оператор конкатенації.

Оператор порівняння

Оператор порівняння використовується для порівняння двох операндів. Нижче наведено список Оператора порівняння-

  • Дорівнює (=)
  • Більше ніж (>)
  • Менше ніж (<)
  • Більше або дорівнює (> =)
  • Менше або дорівнює (<=)
  • Не рівні (! =, <>)

Логічний оператор

У критеріях пошуку використовується логічний оператор.

Наприклад, де умова1 І / АБО / НЕ умова2

Нижче перелік логічних операторів -

  • І - (наприклад WHERE умова1 І умова2)

    Якщо і Condition1, і Condition2 є істинними, тоді умова Combine є true, інакше це буде помилковим.

  • АБО - (наприклад, WHERE умова1 АБО умова2)

    Якщо умова1 АБО умова2 відповідає дійсності, тоді умова комбінування є істинною або хибною, якщо обидві умови хибні.

  • NOT - (наприклад, WHERE NOT умова)

    Умова NOT має значення true Якщо умова хибна.

Набір операторів

  • UNION - Об'єднує два чи багато операторів вибору або запит без дублікатів.
  • UNION ALL - Об'єднує два або багато операторів вибору або запиту, включаючи всі повторювані рядки.
  • INTERSECT - Об’єднує два чи багато операторів вибору або запит та повертає всі загальні рядки.
  • ОКРЕМ - Отримує вихідні дані з першого запиту та видаляє рядок, виділений другим запитом.

Напр

У мене є дві таблиці (table1, table2), у яких деякі значення є загальними.

Ми використовуємо оператор Set (Union, Union ALL, Intersect, за винятком) для цих двох таблиць у SQL, як показано нижче -

Створити таблицю1 - сценарій SQL

CREATE COLUMN TABLE DHK_SCHEMA.TABLE1( ELEMENT CHAR(1),PRIMARY KEY (ELEMENT));INSERT INTO DHK_SCHEMA.TABLE1 VALUES ('P');INSERT INTO DHK_SCHEMA.TABLE1 VALUES ('Q');INSERT INTO DHK_SCHEMA.TABLE1 VALUES ('R');INSERT INTO DHK_SCHEMA.TABLE1 VALUES ('S');INSERT INTO DHK_SCHEMA.TABLE1 VALUES ('T');

Створити таблицю2 - сценарій SQL

CREATE COLUMN TABLE DHK_SCHEMA.TABLE2( ELEMENT CHAR(1),PRIMARY KEY (ELEMENT));INSERT INTO DHK_SCHEMA.TABLE2 VALUES ('S');INSERT INTO DHK_SCHEMA.TABLE2 VALUES ('T');INSERT INTO DHK_SCHEMA.TABLE2 VALUES ('U');INSERT INTO DHK_SCHEMA.TABLE2 VALUES ('V');INSERT INTO DHK_SCHEMA.TABLE2 VALUES ('W');

Примітка : Тут "DHK_SCHEMA" - це назва схеми, користувач може відповідно змінити назву схеми в SQL.

Приклади операторів набору наведені нижче -

Оператор SQL-запит Вихідні дані Використовує
СОЮЗ ВИБЕРІТЬ * З ( ВИБЕРИТЕ ЕЛЕМЕНТ З DHK_SCHEMA.TABLE1 UNION ВИБЕРИТЕ ЕЛЕМЕНТ З DHK_SCHEMA.TABLE2 ) ЗАМОВИТИ ПО ЕЛЕМЕНТУ ;

Поєднайте результат двох або більше запитів без дублікатів.
СОЮЗ ВСІХ ВИБІР * ВІД ( SELECT , ЕЛЕМЕНТ З DHK_SCHEMA.TABLE1 UNION ALL SELECT , ЕЛЕМЕНТ З DHK_SCHEMA.TABLE2) ORDER BY ELEMENT;

Поєднайте результат двох або більше запитів із усіма дублікатами.
ІНТЕРСЕКТ ВИБІР * ВІД ( SELECT , ЕЛЕМЕНТ З DHK_SCHEMA.TABLE1 INTERSECT SELECT , ЕЛЕМЕНТ З DHK_SCHEMA.TABLE2) ORDER BY ELEMENT;

Поєднайте результат двох або більше запитів із усіма загальними рядками.
ОКРЕМ ВИБІР * ВІД ( SELECT , ЕЛЕМЕНТ З DHK_SCHEMA.TABLE1 КРІМ SELECT , ЕЛЕМЕНТ З DHK_SCHEMA.TABLE2) ORDER BY ELEMENT;

Бере вихід з першого запиту та видаляє рядок, виділений другим запитом