Devuelve una cadena con el nombre del host en el que se realizó esta función. Para el procesamiento distribuido, este es el nombre del host del servidor remoto, si la función se realiza en un servidor remoto.
Esta función no distingue entre mayúsculas y minúsculas.
**Valor devuelto**
- Cadena con el nombre de dominio completo.
Tipo: `String`.
**Ejemplo**
Consulta:
``` sql
SELECT FQDN();
```
Resultado:
``` text
┌─FQDN()──────────────────────────┐
│ clickhouse.ru-central1.internal │
└─────────────────────────────────┘
```
## Nombre básico {#basename}
Extrae la parte final de una cadena después de la última barra o barra invertida. Esta función se utiliza a menudo para extraer el nombre de archivo de una ruta.
-`expr` — Expression resulting in a [Cadena](../../sql-reference/data-types/string.md) valor de tipo. Todas las barras diagonales inversas deben escaparse en el valor resultante.
Devuelve una cadena que contiene el nombre de tipo del argumento pasado.
Si `NULL` se pasa a la función como entrada, luego devuelve el `Nullable(Nothing)` tipo, que corresponde a un tipo interno `NULL` representación en ClickHouse.
## BlockSize() {#function-blocksize}
Obtiene el tamaño del bloque.
En ClickHouse, las consultas siempre se ejecutan en bloques (conjuntos de partes de columna). Esta función permite obtener el tamaño del bloque al que lo llamó.
## materializar (x) {#materializex}
Convierte una constante en una columna completa que contiene solo un valor.
En ClickHouse, las columnas completas y las constantes se representan de manera diferente en la memoria. Las funciones funcionan de manera diferente para argumentos constantes y argumentos normales (se ejecuta un código diferente), aunque el resultado es casi siempre el mismo. Esta función es para depurar este comportamiento.
Comprueba si el argumento es una expresión constante.
A constant expression means an expression whose resulting value is known at the query analysis (i.e.before execution). For example, expressions over [literal](../syntax.md#literals) son expresiones constantes.
La función está destinada al desarrollo, depuración y demostración.
Acepta cadenas constantes: nombre de base de datos, nombre de tabla y nombre de columna. Devuelve una expresión constante UInt8 igual a 1 si hay una columna; de lo contrario, 0. Si se establece el parámetro hostname, la prueba se ejecutará en un servidor remoto.
La función produce una excepción si la tabla no existe.
Para los elementos de una estructura de datos anidada, la función comprueba la existencia de una columna. Para la propia estructura de datos anidados, la función devuelve 0.
`T` y `U` pueden ser tipos numéricos, de cadena o de fecha o de fecha y hora.
Cuando se indica la misma letra (T o U), para los tipos numéricos pueden no ser tipos coincidentes, sino tipos que tienen un tipo común.
Por ejemplo, el primer argumento puede tener el tipo Int64, mientras que el segundo tiene el tipo Array(UInt16).
Si el ‘x’ valor es igual a uno de los elementos en el ‘array\_from’ matriz, devuelve el elemento existente (que está numerado igual) de la ‘array\_to’ matriz. De lo contrario, devuelve ‘default’. Si hay varios elementos coincidentes en ‘array\_from’, devuelve una de las coincidencias.
Ejemplo:
``` sql
SELECT
transform(SearchEngineID, [2, 3], ['Yandex', 'Google'], 'Other') AS title,
Difiere de la primera variación en que el ‘default’ se omite el argumento.
Si el ‘x’ valor es igual a uno de los elementos en el ‘array\_from’ matriz, devuelve el elemento coincidente (que está numerado igual) de la ‘array\_to’ matriz. De lo contrario, devuelve ‘x’.
Tipo:
`transform(T, Array(T), Array(T)) -> T`
Ejemplo:
``` sql
SELECT
transform(domain(Referer), ['yandex.ru', 'google.ru', 'vk.com'], ['www.yandex', 'example.com']) AS s,
Devuelve el número de secuencia del bloque de datos donde se encuentra la fila.
## rowNumberInBlock {#function-rownumberinblock}
Devuelve el número ordinal de la fila en el bloque de datos. Los diferentes bloques de datos siempre se recalculan.
## rowNumberInAllBlocks() {#rownumberinallblocks}
Devuelve el número ordinal de la fila en el bloque de datos. Esta función solo considera los bloques de datos afectados.
## vecino {#neighbor}
La función de ventana que proporciona acceso a una fila en un desplazamiento especificado que viene antes o después de la fila actual de una columna determinada.
**Sintaxis**
``` sql
neighbor(column, offset[, default_value])
```
El resultado de la función depende de los bloques de datos afectados y del orden de los datos en el bloque.
Si realiza una subconsulta con ORDER BY y llama a la función desde fuera de la subconsulta, puede obtener el resultado esperado.
Lo mismo que para [runningDifference](./other-functions.md#other_functions-runningdifference), la diferencia es el valor de la primera fila, devolvió el valor de la primera fila, y cada fila subsiguiente devuelve la diferencia de la fila anterior.
Acepta un número UInt64. Lo interpreta como una dirección MAC en big endian. Devuelve una cadena que contiene la dirección MAC correspondiente con el formato AA:BB:CC:DD:EE:FF (números separados por dos puntos en forma hexadecimal).
Acepta una dirección MAC con el formato AA:BB:CC:DD:EE:FF (números separados por dos puntos en forma hexadecimal). Devuelve los primeros tres octetos como un número UInt64. Si la dirección MAC tiene un formato no válido, devuelve 0.
Devuelve la cantidad de espacio restante en el sistema de archivos donde se encuentran los archivos de las bases de datos. Siempre es más pequeño que el espacio libre total ([Sistema de archivosLibre](#filesystemfree)) porque algo de espacio está reservado para el sistema operativo.
**Sintaxis**
``` sql
filesystemAvailable()
```
**Valor devuelto**
- La cantidad de espacio restante disponible en bytes.
Devuelve la cantidad total del espacio libre en el sistema de archivos donde se encuentran los archivos de las bases de datos. Ver también `filesystemAvailable`
Devuelve la capacidad del sistema de archivos en bytes. Para la evaluación, el [camino](../../operations/server-configuration-parameters/settings.md#server_configuration_parameters-path) al directorio de datos debe estar configurado.
Toma los estados de la función agregada y devuelve una columna con valores, son el resultado de la acumulación de estos estados para un conjunto de líneas de bloque, desde la primera hasta la línea actual.
Por ejemplo, toma el estado de la función agregada (ejemplo runningAccumulate(uniqState(UserID)) ), y para cada fila de bloque, devuelve el resultado de la función agregada en la fusión de estados de todas las filas anteriores y la fila actual.
Por lo tanto, el resultado de la función depende de la partición de los datos en los bloques y del orden de los datos en el bloque.
-`join_storage_table_name` — an [identificador](../syntax.md#syntax-identifiers) indica dónde se realiza la búsqueda. El identificador se busca en la base de datos predeterminada (ver parámetro `default_database` en el archivo de configuración). Para reemplazar la base de datos predeterminada, utilice `USE db_name` o especifique la base de datos y la tabla a través del separador `db_name.db_table`, ver el ejemplo.
-`value_column` — name of the column of the table that contains required data.
Devuelve la lista de valores correspondientes a la lista de claves.
Si cierto no existe en la tabla fuente, entonces `0` o `null` será devuelto basado en [Sistema abierto.](../../operations/settings/settings.md#join_use_nulls) configuración.
custom\_message - es un parámetro opcional: una cadena constante, proporciona un mensaje de error
``` sql
SELECT throwIf(number = 3, 'Too many') FROM numbers(10);
```
``` text
↙ Progress: 0.00 rows, 0.00 B (0.00 rows/s., 0.00 B/s.) Received exception from server (version 19.14.1):
Code: 395. DB::Exception: Received from localhost:9000. DB::Exception: Too many.
```
## identidad {#identity}
Devuelve el mismo valor que se usó como argumento. Se utiliza para la depuración y pruebas, permite cancelar el uso de índice, y obtener el rendimiento de la consulta de un análisis completo. Cuando se analiza la consulta para el posible uso del índice, el analizador no mira dentro `identity` función.
**Sintaxis**
``` sql
identity(x)
```
**Ejemplo**
Consulta:
``` sql
SELECT identity(42)
```
Resultado:
``` text
┌─identity(42)─┐
│ 42 │
└──────────────┘
```
## randomPrintableASCII {#randomascii}
Genera una cadena con un conjunto aleatorio de [ASCII](https://en.wikipedia.org/wiki/ASCII#Printable_characters) caracteres imprimibles.