Símbolos de operadores matemáticos - Amazon Redshift

Símbolos de operadores matemáticos

En la tabla siguiente, se muestran los operadores matemáticos admitidos.

Operadores admitidos

Operador Descripción Ejemplo Resultado
+ suma 2 + 3 5
- resta 2 - 3 -1
* multiplicación 2 * 3 6
/ división 4/2 2
% módulo 5 % 4 1
^ potencia 2,0 ^ 3,0 8
|/ raíz cuadrada | / 25,0 5
||/ raíz cúbica || / 27,0 3
@ valor absoluto @ -5,0 5
<< cambio bit a bit hacia la izquierda 1 << 4 16
>> cambio bit a bit hacia la derecha 8 >> 2 2
& bit a bit y 8 & 2 0

Ejemplos

En los siguientes ejemplos se utiliza la base de datos de ejemplo TICKIT. Para obtener más información, consulte Base de datos de muestra.

Para calcular la comisión pagada más un 2.00 $ para una transacción dada, utilice el siguiente ejemplo.

SELECT commission, (commission + 2.00) AS comm FROM sales WHERE salesid = 10000; +------------+-------+ | commission | comm | +------------+-------+ | 28.05 | 30.05 | +------------+-------+

Para calcular el 20 % del precio de venta para una transacción dada, utilice el siguiente ejemplo.

SELECT pricepaid, (pricepaid * .20) as twentypct FROM sales WHERE salesid=10000; +-----------+-----------+ | pricepaid | twentypct | +-----------+-----------+ | 187 | 37.4 | +-----------+-----------+

Para prever las ventas de tickets según un patrón de crecimiento continuo, use el siguiente ejemplo. En este ejemplo, la subconsulta devuelve la cantidad de tickets vendidos en 2008. El resultado se multiplica exponencialmente por un índice de crecimiento continuo del 5% durante 10 años.

SELECT (SELECT SUM(qtysold) FROM sales, date WHERE sales.dateid=date.dateid AND year=2008)^((5::float/100)*10) AS qty10years; +------------------+ | qty10years | +------------------+ | 587.664019657491 | +------------------+

Para encontrar el precio total pagado y la comisión por ventas con un ID de fecha que sea mayor que o igual a 2000, use el siguiente ejemplo. Luego, se resta la comisión total del precio total pagado.

SELECT SUM(pricepaid) AS sum_price, dateid, SUM(commission) AS sum_comm, (SUM(pricepaid) - SUM(commission)) AS value FROM sales WHERE dateid >= 2000 GROUP BY dateid ORDER BY dateid LIMIT 10; +-----------+--------+----------+-----------+ | sum_price | dateid | sum_comm | value | +-----------+--------+----------+-----------+ | 305885 | 2000 | 45882.75 | 260002.25 | | 316037 | 2001 | 47405.55 | 268631.45 | | 358571 | 2002 | 53785.65 | 304785.35 | | 366033 | 2003 | 54904.95 | 311128.05 | | 307592 | 2004 | 46138.8 | 261453.2 | | 333484 | 2005 | 50022.6 | 283461.4 | | 317670 | 2006 | 47650.5 | 270019.5 | | 351031 | 2007 | 52654.65 | 298376.35 | | 313359 | 2008 | 47003.85 | 266355.15 | | 323675 | 2009 | 48551.25 | 275123.75 | +-----------+--------+----------+-----------+