casa de clic
Aritmética:
|Operadores|Ejemplos|Comentarios|
|----|----|----|
|Suma (a,b)|a b|Calcula la suma de los números. También puedes sumar números enteros con fechas o fecha y hora. En el caso de las fechas, sumar un número entero significa sumar el número de días correspondiente. Para una fecha con hora, esto significa sumar el número correspondiente de segundos. |
|Restar (a,b)|a - b|También puedes calcular la fecha o la fecha como un número entero basándose en el tiempo|
|Multiplicar por (a,b)| a * b|Calcular el producto de números|
|Dividir (a, b)|a/b|Calcular el cociente de números. El tipo de resultado es siempre un tipo de punto flotante. No es división de enteros. Para la división de números enteros, utilice la función 'intDiv'. Al dividir por cero, obtienes 'inf', '-inf' o 'nan'. |
|División entera |intDiv(a,b)|Calcula el cociente de un número. Dividido en números enteros, redondeado hacia abajo (por valor absoluto). Lanza una excepción al dividir por cero o dividir el número negativo más pequeño por -1. |
|División de excepción|intDivOrZero(a,b)|Diferencias con 'intDiv' en que devuelve cero al dividir por cero o al dividir el número negativo más pequeño entre -1. |
|Obtener el resto|a b|Calcular el resto después de la división. Si los argumentos son números de coma flotante, se preconvierten a números enteros eliminando la parte fraccionaria. La división truncada se utiliza para números negativos. Lanza una excepción al dividir por cero o dividir el número negativo más pequeño por -1. |
|Invertir a| -a | Calcular un número con signo invertido. |
|Obtener valor absoluto|abs(a)|Calcular el valor absoluto del número (a). Es decir, si a <0, entonces se devuelve -a. Para tipos sin firmar, no hace nada. Para tipos enteros con signo, devuelve un número sin signo. |
|Toma el máximo común divisor|mcd(a,b)|Devuelve el máximo común divisor de los números. Lanza una excepción al dividir por cero o dividir el número negativo más pequeño entre -1 |
|Toma el mínimo común múltiplo |lcm(a,b)|Devuelve el mínimo común múltiplo de un número. Lanza una excepción al dividir por cero o dividir el número negativo más pequeño por -1. |
Comparación
|Operadores|Ejemplos|Comentarios|
|----|----|----|
|Igual|a == b||
|No igual|a! =b, alt; b||
|Menor que |alt; b||
| Menor o igual a |alt;=b ||
|Mayor o igual a |agt;=b ||
Operador lógico
Acepta cualquier tipo numérico, pero devuelve igual a 0 o un número UInt8 de 1.
Cero como argumento se considera "falso", mientras que cualquier valor distinto de cero se considera "verdadero".
|Operador|Ejemplo|
|----|----|
|Y|Y|
| O|O|
|NO|NOT|
Conversión de tipo
Convertir a tipo numérico:
toUInt8, toUInt16, toUInt32 toUInt64 , toInt8OrZero, toInt16OrZero, toInt32OrZero, toInt64OrZero, toFloat32OrZero, toFloat64OrZero, toDateOrZero, toDateTimeOrZero
toUInt8OrNull, toUInt16OrNull, toUInt32OrNull, toUInt64OrNull, toInt8OrNu ll, toInt16OrNull, toInt32OrNull, toInt64OrNull, toFloat32OrNull, toFloat64OrNull, toDateOrNull, toDateTimeOrNull
toDecimal32(valor, S), toDecimal64(valor, S), toDecimal128(valor, S)
El valor puede ser un número o una cadena. El parámetro S especifica el número de decimales.
Convertir a tipo de cadena:
toString
Se usa entre números, cadenas (pero no cadenas fijas), fechas y fechas y horas Función para realizar la conversión. Todas estas funciones aceptan un parámetro.
Al convertir hacia o desde una cadena, los valores se formatean o analizan usando las mismas reglas que el formato delimitado por tabulaciones (y casi todos los demás formatos de texto). Si la cadena no se puede analizar, se lanza una excepción y se cancela la solicitud.
Al convertir una fecha a un número o viceversa, la fecha corresponde al número de días desde el comienzo de la época Unix. Al convertir fechas y horas a números o viceversa, las fechas y horas corresponden a la cantidad de segundos desde el comienzo de la época Unix.
toDate/toDateTime
Si convierte de un tipo numérico UInt32, Int32, UInt64 o Int64 a una fecha y el número es mayor o igual a 65536, el número interpretarse como una marca de tiempo de Unix (en lugar de días) y redondearse a la fecha. Esto permite admitir el caso común de escribir "toDate(unix_timestamp)", que de otro modo sería un error y requeriría escribir el más engorroso "toDate(toDateTime(unix_timestamp))".
La conversión entre fechas y fechas con hora se realiza de forma natural: añadiendo una hora vacía o quitando la hora.
La función toString del parámetro DateTime puede aceptar un segundo parámetro de cadena que contenga el nombre de la zona horaria. Por ejemplo: Asia/Ekaterimburgo En este ejemplo, la hora tiene el formato de acuerdo con la zona horaria especificada.
toString(now(), 'Asia/Yekaterinburg')
toFixedString(s, N)
Convierte parámetros de tipo cadena a Tipo FixedString(N) ( cadena de longitud N). N debe ser una constante. Si el número de bytes en la cadena es menor que N, los bytes nulos se pasan a la derecha. Si el número de bytes en la cadena excede N, se lanza una excepción.
toStringCutToZero(s)
Acepta parámetros de cadena o de cadena fija. Devuelve una cadena con su contenido truncado en el primer byte cero encontrado.
reinterpretSuint8, reinterpretSuInt16, reinterpretSuInt32, reinterpretAsuInt64
reinterpretAsInt8, reinterpretSInt16, reinterpretSInt32, reinterpretasInt64
reinterpretasfloat32, reinterpretasfloat64
Estas funciones aceptan una cadena e interpretan los bytes al principio de la cadena como números en el orden del host (little endian). Si la cadena no es lo suficientemente larga, la función funciona como rellenar la cadena con la cantidad necesaria de bytes nulos. Si la cadena es más larga de lo necesario, se ignoran los bytes adicionales. Las fechas se interpretan como la cantidad de días desde el comienzo de la época Unix, y las fechas con horas se interpretan como la cantidad de segundos desde el comienzo de la época Unix.
reinterpretAsString
Esta función acepta un número, fecha o fecha con hora y devuelve una cadena que contiene los bytes que representan el valor correspondiente en el orden del host (little endian). Los bytes nulos se eliminan del final.
reinterpretAsFixedString
Esta función acepta un número, fecha o fecha con hora y devuelve una cadena fija que contiene los bytes que representan el valor correspondiente en el orden del host (little endian). Los bytes nulos se eliminan del final.
CAST(x, t)
Convierte el tipo de datos "x" a "t"
La conversión a Cadena Fija (N) solo se aplica a Cadena o Cadena Fija ( N) parámetros de tipo.
toIntervalYear, toIntervalQuarter, toIntervalMonth, toIntervalWeek, toIntervalDay, toIntervalHour, toIntervalMinute, toIntervalSecond
Convierte parámetros de tipo numérico a tipo de intervalo (duración). El tipo de intervalo es realmente muy útil; puede utilizar este tipo de datos para realizar operaciones aritméticas directamente en Date o DateTime. Al mismo tiempo, ClickHouse proporciona una sintaxis más conveniente para declarar datos de tipo intervalo.
Por ejemplo:
```
CON
toDate('2019-01-01') COMO fecha,
INTERVALO 1 SEMANA AS intervalo_semana,
toIntervalWeek(1) AS intervalo_a_semana
SELECT
fecha intervalo_semana,
fecha intervalo_a_semana
```
parseDateTimeBestEffort
Analiza parámetros de tipo numérico en tipos de fecha o DateTime. A diferencia de toDate y toDateTime, parseDateTimeBestEffort puede mejorar formatos de fecha más complejos
parseDateTimeBestEffortOrNull
Igual que parseDateTimeBestEffort, excepto que se devuelve nulo cuando se encuentra un formato de fecha no procesable.
parseDateTimeBestEffortOrZero
Igual que parseDateTimeBestEffort, excepto que devuelve una fecha cero o una fecha hora cero cuando se encuentra un formato de fecha no procesable.