Puis-je créer une table à partir d'une requête formée à l'aide de la clause with
?
Sûr:
CREATE TABLE t
AS
WITH some_data AS (
SELECT 1 as some_value
FROM dual
UNION ALL
SELECT 2
FROM dual
)
SELECT *
FROM some_data
L'instruction CREATE TABLE nom_table AS crée une table basée sur une instruction select. La solution pour une clause with sera:
CREATE TABLE t
AS
SELECT * FROM (
WITH some_data AS (
SELECT 1 as some_value
FROM dual
UNION ALL
SELECT 2
FROM dual
)
);