Try to put `CREATE OR REPLACE TABLE ... AS` before your query.
`CREATE OR REPLACE TABLE ... AS`
CREATE OR REPLACE TABLE your_dataset.your_table AS WITH my_cte AS ( SELECT ... ) SELECT * FROM my_cte;
This keeps your query the same, but saves the result into a table.