Operador de SAP HANA: Union & Unión Todos

Anonim

El operador de SAP HANA se puede utilizar para el cálculo, la comparación de valores o para asignar un valor. SAP HANA contiene los siguientes operadores:

Operador unario y binario

Operador aritmético

Operadores de cadenas

Operador de comparación

Operador lógico

Establecer operador

Operador unario y binario

Operador Operación Descripción
Unario Un operador unario se aplica a un operando Operador unario más (+) Operador de negación unario (-) Negación lógica (NOT)
Binario Un operador binario se aplica a dos operandos Operadores multiplicativos (*, /) Operadores aditivos (+, -) Operadores de comparación (=,! =, <,>, <=,> =) Operadores lógicos (Y, O)

Operador aritmético

  • Suma (+)
  • Resta (-)
  • Multiplicación (*)
  • División (/)

Operador de cadena

Un operador de cadena es un operador de concatenación que combina dos elementos como cadenas, expresiones o constantes en uno.

Dos barras verticales "||" se utiliza como operador de concatenación.

Operador de comparación

El operador de comparación se utiliza para comparar dos operandos. A continuación se muestra una lista de Operador de comparación

  • Igual a (=)
  • Mayor que (>)
  • Menor que (<)
  • Mayor o igual a (> =)
  • Menor o igual a (<=)
  • No es igual (! =, <>)

Operador lógico

El operador lógico se utiliza en los criterios de búsqueda.

Por ejemplo, DONDE condición1 Y / O / NO condición2

A continuación se muestra la lista de operadores lógicos:

  • Y - (por ejemplo, DONDE condición1 Y condición2)

    Si tanto Condición1 como Condición2 son verdaderas, entonces la condición de combinación es verdadera; de lo contrario, será falsa.

  • O - (por ejemplo, DONDE condición1 O condición2)

    Si Condition1 OR Condition2 es verdadera, entonces la condición de combinación es verdadera o falsa si ambas Condiciones son falsas.

  • NO - (por ejemplo, DONDE NO condición)

    La condición NO es verdadera Si la condición es falsa.

Establecer operadores

  • UNION: combina dos o más sentencias de selección o consultas sin duplicar.
  • UNION ALL: combina dos o más sentencias o consultas de selección, incluidas todas las filas duplicadas.
  • INTERSECT: combina dos o más sentencias o consultas de selección y devuelve todas las filas comunes.
  • EXCEPTO: toma el resultado de la primera consulta y elimina la fila seleccionada por la segunda consulta.

P.ej

Tengo dos tablas (table1, table2) en las que algunos valores son comunes.

Usamos el operador Set (Union, Union ALL, Intersect, excepto) para estas dos tablas en SQL como se muestra a continuación:

Crear tabla1: secuencia de comandos SQL

CREAR TABLA DE COLUMNAS DHK_SCHEMA.TABLE1(CARÁCTER ELEMENTO (1),LLAVE PRIMARIA (ELEMENTO));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');

Crear tabla2: secuencia de comandos SQL

CREAR TABLA DE COLUMNAS DHK_SCHEMA.TABLE2(CARÁCTER ELEMENTO (1),LLAVE PRIMARIA (ELEMENTO));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');

Nota : Aquí "DHK_SCHEMA" es un nombre de esquema, el usuario puede cambiar el nombre de esquema en SQL en consecuencia.

Los ejemplos de operadores establecidos son los siguientes:

Operador Consulta SQL Producción Usos
UNIÓN SELECT * FROM (SELECT ELEMENT FROM DHK_SCHEMA.TABLE1 UNION SELECT ELEMENT FROM DHK_SCHEMA.TABLE2 ) ORDER BY ELEMENT;

Combinar el resultado de dos o más consultas sin duplicar.
UNIÓN TODOS SELECT * FROM ( SELECT ELEMENT FROM DHK_SCHEMA.TABLE1 UNION ALL SELECT ELEMENT FROM DHK_SCHEMA.TABLE2) ORDER BY ELEMENT;

Combinar el resultado de dos o más consultas con todos los duplicados.
INTERSECARSE SELECT * FROM ( SELECT ELEMENT FROM DHK_SCHEMA.TABLE1 INTERSECT SELECT ELEMENT FROM DHK_SCHEMA.TABLE2) ORDER BY ELEMENT;

Combine el resultado de dos o más consultas con todas las filas comunes.
EXCEPTO SELECT * FROM ( SELECT ELEMENT FROM DHK_SCHEMA.TABLE1 EXCEPT SELECT ELEMENT FROM DHK_SCHEMA.TABLE2) ORDER BY ELEMENT;

Toma el resultado de la primera consulta y elimina la fila seleccionada por la segunda consulta