Не, в Oracle
няма SELECT
без FROM
.
Използване на dual
таблицата е добра практика.
dual
е таблица в паметта. Ако не изберете DUMMY
от него той използва специален път за достъп (FAST DUAL
), който не изисква I/O
.
Имало едно време, dual
имаше два записа (оттук и името) и беше предназначен да служи като фиктивен набор от записи за дублиране на записи, с които се свързват.
Сега има само един запис, но все още можете да генерирате произволен брой редове с него:
SELECT level
FROM dual
CONNECT BY
level <= 100
MySQL
също така поддържа dual
(както и синтаксиса fromless).