Package jakarta.persistence
Annotation Interface ColumnResult
Used in conjunction with the
SqlResultSetMapping
,
NamedNativeQuery
, or ConstructorResult
annotation to map a column of the SELECT list of a SQL query.
The name()
element references the name of a column
in the SELECT list — i.e., column alias, if applicable.
Scalar result types can be included in the query result by
specifying this annotation in the metadata.
Example:
Query q = em.createNativeQuery(
"SELECT o.id AS order_id, " +
"o.quantity AS order_quantity, " +
"o.item AS order_item, " +
"i.name AS item_name, " +
"FROM Order o, Item i " +
"WHERE (order_quantity > 25) AND (order_item = i.id)",
"OrderResults");
@SqlResultSetMapping(
name = "OrderResults",
entities = {
@EntityResult(
entityClass = com.acme.Order.class,
fields = {
@FieldResult(name = "id", column = "order_id"),
@FieldResult(name = "quantity", column = "order_quantity"),
@FieldResult(name = "item", column = "order_item")
})
},
columns = {
@ColumnResult(name = "item_name")
})
- Since:
- 1.0
- See Also:
-
Required Element Summary
-
Optional Element Summary
-
Element Details