Annotation Type QuerySqlField.Group


  • @Retention(RUNTIME)
    @Target({METHOD,FIELD})
    public static @interface QuerySqlField.Group
    Describes group of index and position of field in this group.

    Opposite to QuerySqlField.groups() this annotation gives control over order of fields in a group index. This can be needed in scenarios when we have a query like select * from X where a = ? and b = ? order by b desc. If we have index (a asc, b asc) sorting on b will be performed. Here it is preferable to have index (b desc, a asc) which will still allow query to search on index using both fields and avoid sorting because index is already sorted in needed way.

    See Also:
    QuerySqlField.groups(), QuerySqlField.orderedGroups()
    • Required Element Summary

      Required Elements 
      Modifier and Type Required Element Description
      String name
      Group index name where this field participate.
      int order
      Fields in this group index will be sorted on this attribute.
    • Optional Element Summary

      Optional Elements 
      Modifier and Type Optional Element Description
      boolean descending
      Defines sorting order for this field in group.
    • Element Detail

      • name

        String name
        Group index name where this field participate.
        Returns:
        Group index name
      • order

        int order
        Fields in this group index will be sorted on this attribute.
        Returns:
        Order number.
      • descending

        boolean descending
        Defines sorting order for this field in group.
        Returns:
        True if field will be in descending order.
        Default:
        false