¿Cuál es el número máximo de índices que uno puede crear en una tabla con n columnas?
-
29-09-2020 - |
Pregunta
Di, tengo una tabla de base de datos con $ n $ columnas.¿Cuál es el número máximo (teórico) de índices que puedo crear en esa tabla?Para $ n= 1,2,3 $ es lo suficientemente fácil de calcular la respuesta $ (1, 4, 15) $, pero ¿hay alguna fórmula?Además, ¿hay un "nombre" para este número?
Solución
Supongo que significa lo siguiente: Dado $ n $ columnas, hay
- $ n $ columnas individuales, dando $ n $ índices diferentes
- $ n (N-1) / 2 $ pares de columnas, y 2 formas de combinar cada par, dar $ N (N-1) $ índices diferentes
- $ \ frac {n (n-1) (n-2)} {2 \ cdot 3} $ triples de columnas y $ 3 \ CDOT 2 $ formas de combinar cada triple, dar $ n (n-1) (n-2) $ índices diferentes
y así sucesivamente. Este número no tiene un nombre (conocido), pero la secuencia tiene su propia entrada de OEIS :
Los combinatorialistas del siglo XVIII y XIX siglo llaman a esto el número de "variaciones" (no nulas) "de los objetos distintos, a saber, el número de permutaciones de subconjuntos no temporales de {1, ..., n}.
Se dan varias fórmulas para calcularla, incluida una relación de recurrencia $ a_n= n (a_ {n-1} + 1) $ y el lugar más bien sorprendente Clase="Math-contenedor"> $ A_N=lfloor {E \ CDOT N! - 1} \ rfloor $ .
Uno podría argumentar que puede crear índices más teniendo en cuenta que las columnas se pueden usar en el modo ascendente y descendente. Para los índices con más de una columna, esto incluso tiene una influencia en la que los registros están "cerca" entre sí.