As noted union brackets are required.
Also cleaned up regex. (I, personally, prefer to state the search criteria explicitly, if known, as it speeds search up & makes it clear when referring ot it a year later.)
Unsure of your requirements, but most won’t need to have every node listed, so just used out geom;
Plus: used rel
& removed unnecessary quote marks.
(
rel[admin_level=8][designation~"outer_london_borough|inner_london_borough"];
rel[official_name="City and County of the City of London"];
);
//(._; way(r); node(w););
out geom;