Enveloppez les sous-instructions individuelles entre parenthèses pour rendre la syntaxe sans ambiguïté :
(SELECT result FROM tbl1 LIMIT 1)
UNION ALL
(SELECT result FROM tbl2 LIMIT 1)
Le manuel sur UNION
est très clair à ce sujet :
select_statement
est n'importe quelSELECT
instruction sansORDER BY
,LIMIT
,FOR UPDATE
, ouFOR SHARE
clause. (ORDER BY
etLIMIT
peut être attaché à une sous-expression si elle est entre parenthèses. Sans parenthèses, ces clauses seront considérées comme s'appliquant au résultat de l'UNION
, pas à son expression d'entrée de droite.)