Union и Union All в SAP Hana

SAP HANA Оператор можно использовать для расчета, сравнения значений или присвоения значения.

Операторы SAP HANA

  • Унарный и бинарный оператор
  • Арифметический оператор
  • Строковые операторы
  • Оператор сравнения
  • Логический оператор
  • Установить оператор

Унарный и бинарный оператор

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

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

  • Дополнение (+)
  • Вычитание (-)
  • Умножение ( * )
  • Разделение ( / )

Строковый оператор

Строковый оператор — это оператор конкатенации, который объединяет два элемента, такие как строки, выражения или константы, в один.

Две вертикальные полосы «||» используется как оператор конкатенации.

Оператор сравнения

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

  • Равно ( = )
  • Больше, чем ( > )
  • Меньше чем ( < )
  • Больше или равно ( > = )
  • Меньше или равно ( < = )
  • Не равно (!= , <> )

Логический оператор

В критериях поиска используется логический оператор.

Например, ГДЕ условие1 И/ИЛИ/НЕ условие2

Ниже приведен список логических операторов –

  • И – (например, ГДЕ условие1 И условие2)
    Если оба условия «Условие1» и «Условие2» верны, то условие объединения истинно, иначе оно будет ложным.
  • ИЛИ – (например, ГДЕ условие1 ИЛИ условие2)
    Если Условие1 ИЛИ Условие2 истинно, то условие объединения является истинным или ложным, если оба условия ложны.
  • НЕ – (например, условие ГДЕ НЕ)
    Условие НЕ истинно, если условие ложно.

Установить операторы

  • UNION – объединяет два или несколько операторов выбора или запроса без дублирования.
  • UNION ALL – объединяет два или несколько операторов выбора или запроса, включая все повторяющиеся строки.
  • INTERSECT – объединяет два или несколько операторов выбора или запроса и возвращает все общие строки.
  • EXCEPT – принимает выходные данные первого запроса и удаляет строку, выбранную вторым запросом.

Например У меня есть две таблицы (таблица1, таблица2), в которых некоторые значения являются общими.

Установка операторов в SAT HANA

Мы используем оператор 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

СОЮЗ

ВЫБОР ЭЛЕМЕНТ

от DHK_SCHEMA.TABLE2

)
ЗАКАЗАТЬ ПО ЭЛЕМЕНТУ;

Установить операторы

Объедините результат двух или более запросов без дубликатов.
СОЮЗ ВСЕ ВЫБОР *

от

(

ВЫБОР ЭЛЕМЕНТ

от DHK_SCHEMA.TABLE1

СОЮЗ ВСЕ

ВЫБОР ЭЛЕМЕНТ

от DHK_SCHEMA.TABLE2

)

ЗАКАЗАТЬ BY ЭЛЕМЕНТ;

Установить операторы

Объедините результат двух или более запросов со всеми дубликатами.
ПЕРЕСЕЧЕНИЕ ВЫБОР *

от

(

ВЫБОР ЭЛЕМЕНТ

от DHK_SCHEMA.TABLE1

ПЕРЕСЕЧЕНИЕ

ВЫБОР ЭЛЕМЕНТ

от DHK_SCHEMA.TABLE2

)

ЗАКАЗАТЬ BY ЭЛЕМЕНТ;

Установить операторы

Объедините результат двух или более запросов со всеми общими строками.
КРОМЕ ВЫБОР *

от

(

ВЫБОР ЭЛЕМЕНТ

от DHK_SCHEMA.TABLE1

КРОМЕ

ВЫБОР ЭЛЕМЕНТ

от DHK_SCHEMA.TABLE2

)

ЗАКАЗАТЬ BY ЭЛЕМЕНТ;

Установить операторы

Берет выходные данные первого запроса и удаляет строку, выбранную вторым запросом.