União e União All in SAP Hana
SAP HANA Operatoros
- Unário e Binário Operator
- Aritmética Operator
- Tanga Operatoros
- Comparação Operator
- lógico Operator
- Conjunto Operator
Unário e Binário Operator
Operator | Divisão de | Descrição |
---|---|---|
Unário | Um operador unário se aplica a um operando | Operador unário mais (+) Operador de negação unário (-) Negação lógica (NÃO) |
Binário | Um binário Operator aplica-se a dois operandos | Operadores multiplicativos ( *, / ) Operadores aditivos ( +,- ) Operadores de comparação ( =,!=,<,>,<=,>=) Operadores lógicos ( AND, OR ) |
Aritmética Operator
- Adição (+)
- Subtração (-)
- Multiplicação (*)
- Divisão ( / )
Tanga Operator
Uma linha Operator é um operador de concatenação que combina dois itens, como strings, expressões ou constantes em um.
Duas barras verticais “||” é usado como operador de concatenação.
Comparação Operator
O operador de comparação é usado para comparar dois operandos. Abaixo está uma lista de operadores de comparação Operator-
- Igual a ( = )
- Maior que ( > )
- Less Do que (<)
- Maior ou igual a ( > = )
- Less maior ou igual a ( < = )
- Diferente (!=, <>)
lógico Operator
O operador lógico é usado nos critérios de pesquisa.
Por exemplo, WHERE condição1 E/OU/NÃO condição2
Abaixo está a lista de operadores lógicos -
- AND – (por exemplo, WHERE condição1 AND condição2)
Se Condição1 E Condição2 forem verdadeiras, então a condição de combinação será verdadeira, caso contrário será falsa. - OU – (por exemplo, WHERE condição1 OU condição2)
Se Condição1 OU Condição2 for verdadeira, então a condição de combinação será verdadeira ou falsa se ambas as condições forem falsas. - NOT – (por exemplo, condição WHERE NOT)
A condição NOT é verdadeira Se a condição for falsa.
Conjunto Operatoros
- UNION – Combina duas ou mais instruções ou consultas select sem duplicação.
- UNION ALL – Combina duas ou mais instruções ou consultas select, incluindo todas as linhas duplicadas.
- INTERSECT – Combina duas ou mais instruções ou consultas select e retorna todas as linhas comuns.
- EXCETO – Pega a saída da primeira consulta e remove a linha selecionada pela segunda consulta.
Por exemplo Tenho duas tabelas (tabela1, tabela2) nas quais alguns valores são comuns.
Usamos o operador Set (Union, Union ALL, Intersect, exceto) para essas duas tabelas em SQL como abaixo -
Criar Tabela1 - Script 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');
Criar Tabela2 - Script 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');
Observação: Aqui “DHK_SCHEMA” é um nome de esquema, o usuário pode alterar o nome do esquema em SQL adequadamente.
Conjunto OperaExemplos de tor são os seguintes
Operator | Consulta SQL | saída | Uso |
---|---|---|---|
UNION | SELECIONE *
A PARTIR DE ( SELECIONE ELEMENTO A PARTIR DE DHK_SCHEMA.TABLE1 UNION SELECIONE ELEMENTO A PARTIR DE DHK_SCHEMA.TABLE2 ) |
Combine o resultado de duas ou mais consultas sem duplicação. | |
UNIÃO TUDO | SELECIONE *
A PARTIR DE ( SELECIONE ELEMENTO A PARTIR DE DHK_SCHEMA.TABLE1 UNIÃO TUDO SELECIONE ELEMENTO A PARTIR DE DHK_SCHEMA.TABLE2 ) PEDIDO BY ELEMENTO; |
Combine o resultado de duas ou mais consultas com todas as duplicatas. | |
INTERSEÇÃO | SELECIONE *
A PARTIR DE ( SELECIONE ELEMENTO A PARTIR DE DHK_SCHEMA.TABLE1 INTERSEÇÃO SELECIONE ELEMENTO A PARTIR DE DHK_SCHEMA.TABLE2 ) PEDIDO BY ELEMENTO; |
Combine o resultado de duas ou mais consultas com todas as linhas comuns. | |
EXCETO | SELECIONE *
A PARTIR DE ( SELECIONE ELEMENTO A PARTIR DE DHK_SCHEMA.TABLE1 EXCETO SELECIONE ELEMENTO A PARTIR DE DHK_SCHEMA.TABLE2 ) PEDIDO BY ELEMENTO; |
Pega a saída da primeira consulta e remove a linha selecionada pela segunda consulta |