diff --git a/expression_ext.go b/expression_ext.go index f7c714f4..d06b0efa 100644 --- a/expression_ext.go +++ b/expression_ext.go @@ -18,7 +18,11 @@ func join(joinType string, db *DB, model interface{}, alias ...string) *jexpr { } if val, ok := model.(*expr); ok { - return &jexpr{expr: " " + joinType + " JOIN (" + val.expr + ") " + al, args: val.args} + if al == "" { + return &jexpr{expr: " " + joinType + " JOIN " + val.expr, args: val.args} + } else { + return &jexpr{expr: " " + joinType + " JOIN (" + val.expr + ") " + al, args: val.args} + } } return &jexpr{expr: " " + joinType + " JOIN " + db.T(model) + " " + al} }