Annotation Type ColumnResult


  • @Target({})
    @Retention(RUNTIME)
    public @interface ColumnResult
    References name of a column in the SELECT clause of a SQL query - 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:
    Java Persistence 1.0
    See Also:
    SqlResultSetMapping
    • Required Element Summary

      Required Elements 
      Modifier and Type Required Element Description
      String name
      (Required) The name of a column in the SELECT clause of a SQL query
    • Element Detail

      • name

        String name
        (Required) The name of a column in the SELECT clause of a SQL query