Misleading query generated on SQLite
Sqlite does not support parentheses on union queries, nor does it support ORDER BY or LIMIT on the individual queries that comprise the union. Read the sqlite docs:

https://sqlite.org/lang_select.html#compound_select_statements

>As the components of a compound SELECT must be simple SELECT statements, they may not contain ORDER BY or LIMIT clauses. Thanks
Yes, I figured out what happened here. However, peewee's result was misleading because someone would expect peewee to produce a query that would fail on SQLite (since ORDER_BY and LIMIT are not supported on individual queries).
I run the following query on SQLite.

```python
q1 = Table1.select(Table1.colA).objects()
q2  = Table2.select(Table2.colB).order_by(Table2.colB).limit(1).objects()

q1.union(q2)
```

the query generated by `peewee` is misleading, and not equivalent to the initial one

```sql
SELECT "t1"."colA" FROM "table1" AS "t1" UNION SELECT "t2"."colB" FROM "table2" AS "t2" ORDER BY "t2"."colB" LIMIT 1 
```

In particular, the `ORDER BY` and `LIMIT` clauses are applied to the combined query produced by the `UNION` clause, and *not* to the second sub-query as intended. 