Bases de datos genéricas
Una base de datos genérica es una tabla en la que los nombres de campo se almacenan como valores en una columna, mientras que los valores de los campos se almacenan en una segunda columna. Las bases de datos genéricas se utilizan normalmente para los atributos de diferentes objetos.
Eche un vistazo al ejemplo inferior de GenericTable. Es una base de datos genérica que contiene dos objetos, una pelota y una caja. Obviamente hay algunos atributos que son comunes a ambos objetos, como el color y peso, y otros que no, como el diámetro, la altura, la longitud y el ancho.
object | attribute | value |
---|---|---|
ball | color | red |
ball | diameter | 10 cm |
ball | weight | 100 g |
box | color | black |
box | height | 16 cm |
box | length | 20 cm |
box | weight | 500 g |
box | width | 10 cm |
Por un lado sería torpe almacenar los datos de una manera que otorgue a cada atributo una columna propia, ya que muchos atributos no son relevantes para un determinado objeto.
Por otro lado, el aspecto sería muy desordenado si se mostraran los datos mezclando longitudes, colores y pesos.
Si se carga esta base de datos en QlikView empleando el modo estándar y mostramos los datos en una tabla, esta presenta el siguiente aspecto:
Sin embargo, si la tabla se carga como una base de datos genérica, dividirá las columnas dos y tres en tablas diferentes, una por cada valor único de la segunda columna:
La sintaxis para esto es fácil:
Ejemplo:
Generic SELECT* from GenericTable;
No importa si se usa una sentencia LOAD o SELECT para cargar la base de datos genérica.