* split up select.md * array-join.md basic refactoring * distinct.md basic refactoring * format.md basic refactoring * from.md basic refactoring * group-by.md basic refactoring * having.md basic refactoring * additional index.md refactoring * into-outfile.md basic refactoring * join.md basic refactoring * limit.md basic refactoring * limit-by.md basic refactoring * order-by.md basic refactoring * prewhere.md basic refactoring * adjust operators/index.md links * adjust sample.md links * adjust more links * adjust operatots links * fix some links * adjust aggregate function article titles * basic refactor of remaining select clauses * absolute paths in make_links.sh * run make_links.sh * remove old select.md locations * translate docs/es * translate docs/fr * translate docs/fa * remove old operators.md location * change operators.md links * adjust links in docs/es * adjust links in docs/es * minor texts adjustments * wip * update machine translations to use new links * fix changelog * es build fixes * get rid of some select.md links * temporary adjust ru links * temporary adjust more ru links * improve curly brace handling * adjust ru as well * fa build fix * ru link fixes * zh link fixes * temporary disable part of anchor checks
2.7 KiB
machine_translated | machine_translated_rev | toc_priority | toc_title |
---|---|---|---|
true | 72537a2d52 |
51 | Generación de números pseudo-aleatorios |
Funciones para generar números pseudoaleatorios
Se utilizan generadores no criptográficos de números pseudoaleatorios.
Todas las funciones aceptan cero argumentos o un argumento. Si se pasa un argumento, puede ser de cualquier tipo y su valor no se usa para nada. El único propósito de este argumento es evitar la eliminación de subexpresiones comunes, de modo que dos instancias diferentes de la misma función devuelvan columnas diferentes con números aleatorios diferentes.
rand
Devuelve un número pseudoaleatorio UInt32, distribuido uniformemente entre todos los números de tipo UInt32. Utiliza un generador congruente lineal.
rand64
Devuelve un número pseudoaleatorio UInt64, distribuido uniformemente entre todos los números de tipo UInt64. Utiliza un generador congruente lineal.
randConstant
Produce una columna constante con un valor aleatorio.
Sintaxis
randConstant([x])
Parámetros
x
— Expresion resultante en cualquiera de los tipos de datos compatibles. El valor resultante se descarta, pero la expresión en sí si se usa para omitir Eliminación de subexpresiones común si la función se llama varias veces en una consulta. Parámetro opcional.
Valor devuelto
- Número pseudoaleatorio.
Tipo: UInt32.
Ejemplo
Consulta:
SELECT rand(), rand(1), rand(number), randConstant(), randConstant(1), randConstant(number)
FROM numbers(3)
Resultado:
┌─────rand()─┬────rand(1)─┬─rand(number)─┬─randConstant()─┬─randConstant(1)─┬─randConstant(number)─┐
│ 3047369878 │ 4132449925 │ 4044508545 │ 2740811946 │ 4229401477 │ 1924032898 │
│ 2938880146 │ 1267722397 │ 4154983056 │ 2740811946 │ 4229401477 │ 1924032898 │
│ 956619638 │ 4238287282 │ 1104342490 │ 2740811946 │ 4229401477 │ 1924032898 │
└────────────┴────────────┴──────────────┴────────────────┴─────────────────┴──────────────────────┘