General transitive closures are a convenient operation for processing recursive structures with relational languages, because they are easy to understand, efficiently to implement and expressive enough to support a broad range of practical applications. To further extend the expressiveness of general transitive closures, we study the use of aggregate functions together with general transitive closures. While general transitive closures are restricted to express linear recursion, general transitive closures with aggregate functions can be used to express some nonlinear recursions too. We will give some conditions for general transitive closures with aggregate functions to be well formed and bottom up evalueable. We show how these constructs can be integrated in an extended SQL.