# updateReturning

inline fun <T : Table> T.updateReturning(returning: List<Expression<*>> = columns, where: SqlExpressionBuilder.() -> Op<Boolean>, crossinline body: T.(UpdateStatement) -> Unit): ReturningStatement

Represents the SQL statement that updates rows of a table and returns specified data from the updated rows.

#### Return

A ReturningStatement that will be executed once iterated over, providing ResultRows containing the specified expressions mapped to their resulting data.

#### Parameters

returning

Columns and expressions to include in the returned data. This defaults to all columns in the table.

where

Condition that determines which rows to update.

#### Samples

org.jetbrains.exposed.sql.tests.shared.dml.ReturningTests.testUpdateReturning

inline fun <T : Table> T.updateReturning(returning: List<Expression<*>> = columns, crossinline body: T.(UpdateStatement) -> Unit): ReturningStatement

Represents the SQL statement that updates all rows of a table and returns specified data from the updated rows.

#### Return

A ReturningStatement that will be executed once iterated over, providing ResultRows containing the specified expressions mapped to their resulting data.

#### Parameters

returning

Columns and expressions to include in the returned data. This defaults to all columns in the table.

#### Samples

org.jetbrains.exposed.sql.tests.shared.dml.ReturningTests.testUpdateReturning

@JvmName(name = "updateReturningNullableParam")
fun <T : Table> T.updateReturning(returning: List<Expression<*>> = columns, where: SqlExpressionBuilder.() -> Op<Boolean>? = null, body: T.(UpdateStatement) -> Unit): ReturningStatement

### Deprecated

This `updateReturning()` with a nullable `where` parameter will be removed in future releases. Please leave a comment on [YouTrack](https://youtrack.jetbrains.com/issue/EXPOSED-494/Inline-DSL-statement-and-query-functions) with a use-case if a nullable condition cannot be replaced with the new `updateReturning()` overloads.

#### Replace with

    updateReturning(returning) { body.invoke() }

Content copied to clipboard