Hive - Función de Operadores
Este capítulo explica los operadores de colmena. Hay cuatro tipos de operadores en Colmena:
- Operadores relacionales
- Los operadores aritméticos
- Los operadores lógicos
- Los operadores complejos
Operadores relacionales
Estos operadores se utilizan para comparar dos operandos. La siguiente tabla describe los operadores relacionales disponible en sección:
El Operador | Operando | Descripción |
---|---|---|
A = B | Todos los tipos primitivos | TRUE si expresión de A es equivalente a la expresión B en caso contrario, FALSE. |
A != B | Todos los tipos primitivos | TRUE si una expresión de A no es equivalente a la expresión B en caso contrario, FALSE. |
A < B | Todos los tipos primitivos | TRUE si expresión de A es una expresión menos de B en caso contrario, FALSE. |
<= B | Todos los tipos primitivos | TRUE si la expresión de A es menor o igual a la expresión B FALSE de lo contrario. |
A > B | Todos los tipos primitivos | TRUE si expresión de A es mayor que expression B en caso contrario, FALSE. |
A >= B | Todos los tipos primitivos | TRUE si la expresión A es mayor o igual a la expresión B en caso contrario, FALSE. |
A ES NULO | Todos los tipos | TRUE si expresión de A evalúa a NULL en caso contrario, FALSE. |
A NO ES NULA. | Todos los tipos | FALSE si A expresión de A se evalúa a NULL en caso contrario. |
A COMO B | Cadenas | TRUE, si la cadena coincide con A patrón a B en caso contrario, FALSE. |
A RLIKE B | Cadenas | NULL si A o B es nulo, TRUE si cualquier subcadena de una coincida con la expresión regular Java B , en caso contrario, FALSE. |
A REGEXP B | Cadenas | Igual que RLIKE. |
Ejemplo
Supongamos que el empleado tabla se compone de campos denominado Id, Nombre, sueldo, designación, y Depto. como se muestra a continuación. Generar una consulta para recuperar los detalles de empleado cuyo Id es 1205.
+-----+--------------+--------+---------------------------+------+ | Id | Name | Salary | Designation | Dept | +-----+--------------+------------------------------------+------+ |1201 | Gopal | 45000 | Technical manager | TP | |1202 | Manisha | 45000 | Proofreader | PR | |1203 | Masthanvali | 40000 | Technical writer | TP | |1204 | Krian | 40000 | Hr Admin | HR | |1205 | Kranthi | 30000 | Op Admin | Admin| +-----+--------------+--------+---------------------------+------+
La siguiente consulta se ejecuta para recuperar detalles del empleado utilizando la tabla anterior:
hive> SELECT * FROM employee WHERE Id=1205;
El éxito de la ejecución de la consulta, se llega a ver la siguiente respuesta:
+-----+-----------+-----------+----------------------------------+ | ID | Name | Salary | Designation | Dept | +-----+---------------+-------+----------------------------------+ |1205 | Kranthi | 30000 | Op Admin | Admin | +-----+-----------+-----------+----------------------------------+
La siguiente consulta se ejecuta para recuperar detalles del empleado cuyo salario es mayor o igual a 40000 Rs.
hive> SELECT * FROM employee WHERE Salary>=40000;
El éxito de la ejecución de la consulta, se llega a ver la siguiente respuesta:
+-----+------------+--------+----------------------------+------+ | ID | Name | Salary | Designation | Dept | +-----+------------+--------+----------------------------+------+ |1201 | Gopal | 45000 | Technical manager | TP | |1202 | Manisha | 45000 | Proofreader | PR | |1203 | Masthanvali| 40000 | Technical writer | TP | |1204 | Krian | 40000 | Hr Admin | HR | +-----+------------+--------+----------------------------+------+
Los operadores aritméticos
Estos operadores admiten diferentes las operaciones aritméticas comunes de los operandos. Todos ellos volver tipos de número de teléfono. La siguiente tabla describe los operadores aritméticos disponible en sección:
Los operadores | Operando | Descripción |
---|---|---|
A + B | Todos tipos de número | Da el resultado de sumar A y B. |
A - B | Todos tipos de número | Da el resultado de restar B de A. |
A * B | Todos tipos de número | Da el resultado de multiplicar A y B. |
A / B | Todos tipos de número | Indica el resultado de la división B de A. |
UN % DE B | Todos tipos de número | Da el aviso que resulte de dividir A por B. |
A & B | Todos tipos de número | Da como resultado AND bit a bit de A y B. |
A | B | Todos tipos de número | Da el resultado de operación or bit a bit de A y B. |
^ UN B | Todos tipos de número | Da como resultado XOR bit a bit de A y B. |
~ | Todos tipos de número | Da como resultado NO bit de A. |
Ejemplo
La consulta siguiente agrega dos números, 20 y 30.
hive> SELECT 20+30 ADD FROM temp;
El éxito de la ejecución de la consulta, se llega a ver la siguiente respuesta:
+--------+ | ADD | +--------+ | 50 | +--------+
Los operadores lógicos
Los operadores son expresiones lógicas. Todos ellos devolver TRUE o FALSE.
Los operadores | Operandos | Descripción |
---|---|---|
A Y B | Boolean | TRUE si tanto A como B son verdaderos, o FALSE de lo contrario. |
EL && B | Boolean | Igual que A Y B. |
A O B | Boolean | TRUE si A o B o ambos son verdaderos, en caso contrario, FALSE. |
A || B | Boolean | Igual que A O B. |
NO A | Boolean | TRUE si A es FALSO, en caso contrario, FALSE. |
!A | Boolean | Mismo que NO A. |
Ejemplo
La siguiente consulta se utiliza para recuperar detalles de empleado cuyo Departamento es TP y el sueldo es más que Rs 40000.
hive> SELECT * FROM employee WHERE Salary>40000 && Dept=TP;.
El éxito de la ejecución de la consulta, se llega a ver la siguiente respuesta:
+------+--------------+-------------+-------------------+--------+ | ID | Name | Salary | Designation | Dept | +------+--------------+-------------+-------------------+--------+ |1201 | Gopal | 45000 | Technical manager | TP | +------+--------------+-------------+-------------------+--------+
Los operadores complejos
Estos operadores ofrecen una expresión para acceder a los elementos de los tipos complejos.
El Operador | Operando | Descripción |
---|---|---|
A[n] | A es una matriz y n es un int | Devuelve el n-ésimo elemento de la matriz A. El primer elemento tiene el índice 0. |
M[clave] | M es un Map<K, V> y la llave es de tipo K | Devuelve el valor correspondiente a la clave en el mapa. |
S. x | S es una estructura | Devuelve el campo x de S. |