Poiché le sottoquery non sono consentite nelle viste, dovrai simularle creando più viste.
Ad esempio, questa query risolverà il tuo problema se eseguita direttamente:
SELECT
TotalCircles + TotalSquares AS TotalShapes
FROM
(SELECT
BlueCirles + RedCircles AS TotalCircles,
BlueSquares + RedSquares AS TotalSquares
FROM
(SELECT
2 AS BlueCirles,
3 AS RedCircles,
4 AS BlueSquares,
5 AS RedSquares
) AS shapes
) as totals;
Secondo la documentazione MySQL le viste hanno la limitazione di non poter contenere sottoquery nella clausola FROM. Per aggirare questa limitazione e trasformare questa query in una vista, suddividila in 3 viste (una per ogni sottoquery) con l'ultima che fornisce la combinazione di campi desiderata:
CREATE VIEW shapes AS
SELECT
2 AS BlueCirles,
3 AS RedCircles,
4 AS BlueSquares,
5 AS RedSquares;
CREATE VIEW totals AS
SELECT
BlueCirles + RedCircles AS TotalCircles,
BlueSquares + RedSquares AS TotalSquares
FROM
shapes;
CREATE VIEW result AS
SELECT
TotalCircles + TotalSquares AS TotalShapes
FROM
totals;
SELECT * FROM result;