Union with Meta "order_by" clause produces incorrect SQL query
This is one of many reasons why default ordering is a bad idea. I regret adding this functionality, but it's too late to remove it now.

At any rate, you can clear the existing order by clauses on your sub-queries. That should fix the problem:

``` python
q_orders = cls.select(Type, Order.quantity).join(Wine).join(Order).\
            where(Type.owner == login.current_user.id).group_by(Type.id).\
            order_by()
q_changes = cls.select(Type, fn.sum(ChangeLog.change).alias('quantity')).\
            join(Wine).join(Order).join(ChangeLog).\
            where(Type.owner == login.current_user.id).group_by(Type.id).\
            order_by()
```

Hello,

I've tried the following (rather complex I admit) but ended up to an incorrect SQL statement (at least with SQLite). Commenting the "order_by" in the Meta class is a workaround.

```
class Type(Model):                                                          
     [...]                                                 

     class Meta:                                                                 
          db_table = 'types'                                                      
          order_by = ('name', )                                                   

q_orders = cls.select(Type, Order.quantity).join(Wine).join(Order).\ 
            where(Type.owner == login.current_user.id).group_by(Type.id)       
q_changes = cls.select(Type, fn.sum(ChangeLog.change).alias('quantity')).\
            join(Wine).join(Order).join(ChangeLog).\                        
            where(Type.owner == login.current_user.id).group_by(Type.id)       
print (q_orders | q_changes)                                            
```

Result:

``` sql
      SELECT "t2"."id", "t2"."html_color", "t2"."name", "t2"."owner_id", "t4"."quantity" 
FROM "types" AS t2 
INNER JOIN "wines" AS t3 
ON ("t2"."id" = "t3"."type_id") 
INNER JOIN "orders" AS t4 ON ("t3"."id" = "t4"."wine_id") 
WHERE ("t2"."owner_id" = ?) 
GROUP BY "t2"."id" 
ORDER BY "t2"."name" ASC 

UNION 

SELECT "t2"."id", "t2"."html_color", "t2"."name", "t2"."owner_id", sum("t5"."change") AS quantity 
FROM "types" AS t2 
INNER JOIN "wines" AS t3 ON ("t2"."id" = "t3"."type_id") 
INNER JOIN "orders" AS t4 ON ("t3"."id" = "t4"."wine_id") 
INNER JOIN "changelog" AS t5 ON ("t4"."id" = "t5"."order_id") 
WHERE ("t2"."owner_id" = ?) 
GROUP BY "t2"."id" 
ORDER BY "t2"."name" ASC
```

Which leads to the following SQL error: `Error: ORDER BY clause should come after UNION not before`
