Gör bara aggregeringen före union all
:
select sum(cnt) as total
FROM ((SELECT count(*) as cnt
FROM database1.orders
WHERE number LIKE '11111111111111111'
)
UNION ALL
(SELECT count(*) as cnt
FROM database2.orders
WHERE number LIKE '11111111111111111'
)
) t;
Observera att jag ändrade strängavgränsaren till att vara ett enkelt citattecken snarare än ett dubbelt citattecken. Det är bra att använda enkla citattecken för sträng- och datumkonstanter (och inget annat).
Förresten, du kan också göra detta med en join:
select o1.cnt1, o2.cnt1, (o1.cnt1 + o2.cnt1) as total
FROM (SELECT count(*) as cnt1
FROM database1.orders
WHERE number LIKE '11111111111111111'
) o1 cross join
(SELECT count(*) as cnt2
FROM database2.orders
WHERE number LIKE '11111111111111111'
) o2;
Detta gör det lättare att få de individuella siffrorna för de två databaserna.