Pregunta

forma Wikipedia: http://en.wikipedia.org/wiki/Index_ ( base de datos)

  

Algunas bases de datos amplían el poder de indexación al permitir que los índices que se crean en las funciones o expresiones. Por ejemplo, un índice podría crearse en superior (last_name), que sólo sería almacenar las versiones de caja superior del campo last_name en el índice. Otra opción es a veces apoyado el uso de índices "filtrados", donde se crean las entradas de índice sólo para aquellos registros que satisfagan alguna expresión condicional. Un aspecto adicional de la flexibilidad es para permitir la indexación en las funciones definidas por el usuario, así como expresiones formadas a partir de una variedad de funciones incorporadas.

¿cuáles son las bases de datos que soportan índices flexible que puede ser:

  • En columna calculada como: (col1 + col2) * 100
  • índices filtrados.
  • indexación en las funciones definidas por el usuario.

y lo que la terminología conocida para esta función?

¿Fue útil?

Solución

En Oracle se les llama índices basados ??en funciones.

Para el filtrado puede ser complicado y crear una función que devuelve el valor si los partidos de filtro o nula si no lo hace. Nulos no se almacenan en índices btree por lo que el índice se esencialmente filtró. Sólo hay que asegurarse de que utiliza la misma función en sus consultas.

Creo en SQL Server puede crear una columna calculada y el índice de eso.

Otros consejos

SQL Server 2000+ (al menos) apoya índices en columnas basados ??en funciones y columnas calculadas. Índices en funciones pueden replicarse usando vistas indizadas en funciones.

Hay condiciones como siempre, pero sobre todo alrededor de determinismo (que es probablemente universales)

SQL Server 2008+ ha filtrado índices.

Que yo sepa, no existe un término especial. Son sólo los índices.

Por lo que yo sé, todos los principales rdbss soporta esta característica. Personalmente, he utilizado en MySQL y PostgreSQL, pero me sorprendería si no estaba disponible en MSSQL y Oracle.

Por desgracia, no sé cualquier término especial para esto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top