Mesa DOBLE


La tabla DUAL es una tabla especial de una fila y una columna presente de manera predeterminada en Oracle y otras instalaciones de bases de datos . En Oracle, la tabla tiene una sola columna VARCHAR2(1) llamada DUMMY que tiene un valor de 'X'. Es adecuado para usar en la selección de una pseudocolumna como SYSDATE o USER.

La sintaxis SQL de Oracle requiere la cláusula FROM , pero algunas consultas no requieren ninguna tabla; en estos casos, se puede usar DUAL.

Creé la tabla DUAL como un objeto subyacente en Oracle Data Dictionary. Nunca estuvo destinado a ser visto en sí mismo, sino que se usó dentro de una vista que se esperaba que fuera consultada. La idea era que pudiera hacer un JOIN a la tabla DUAL y crear dos filas en el resultado por cada fila en su tabla. Luego, al usar GROUP BY, la combinación resultante podría resumirse para mostrar la cantidad de almacenamiento para la extensión DATA y para la(s) extensión(es) INDEX. El nombre, DUAL, parecía adecuado para el proceso de crear un par de filas a partir de una sola. [1]

A partir de 10g versión 1, Oracle ya no realiza operaciones de E/S físicas o lógicas en la tabla DUAL, aunque la tabla aún existe. [2]

Varias otras bases de datos (incluidas Microsoft SQL Server, MySQL, PostgreSQL, SQLite y Teradata) permiten omitir la cláusula FROM por completo si no se necesita una tabla. Esto evita la necesidad de cualquier tabla ficticia.