что касается второго, видимо, может. это ж обычный запрос, подчиняется общим правилам планировщика.. with, по сути, более удобная форма записи подзапросов, так что order by в итоговом селект не помешает, кажись. хотя в твоем случае на практике скорей всего все будет работать правильно и без order by.
насчет первого, опять не уверен, что понял правильно. именно вот так:
WITH "a" AS (
SELECT ..
),
"b" AS (
SELECT
...
"a"
)
INSERT INTO ... SELECT * FROM "a";
???
если да, то не повлияет.
а это уже сформированный набор строк, типа временной таблицы или подзапроса, на нее не повлияет выборка из нее. b AS ( ) просто для примера? а то как то бессмысленно выглядит)
ну и еще раз, на всякий, в любом случае
INSERT INTO dest SELECT * FROM source; - не важно, откуда возвращает данные SELECT, в dest они будут вставляться в том же порядке, в каком их возвращает SELECT