Interface JoinBuilder2<T0,​T1>

    • Method Summary

      All Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      default Join<com.speedment.common.tuple.nullable.Tuple2OfNullables<T0,​T1>> build()
      Creates and returns a new Join object where elements in the Join object's stream method is of a default Tuple type.
      <T> Join<T> build​(BiFunction<T0,​T1,​T> constructor)
      Creates and returns a new Join object where elements in the Join object's stream method is created using the provided constructor.
      <T2> JoinBuilder3<T0,​T1,​T2> crossJoin​(com.speedment.runtime.config.identifier.TableIdentifier<T2> joinedTable)
      Adds the provided joinedTable to the collection of joined tables.
      <T2> JoinBuilder2.AfterJoin<T0,​T1,​T2> innerJoinOn​(com.speedment.runtime.field.trait.HasComparableOperators<T2,​?> joinedField)
      Adds the provided joinedField to the collection of joined column/tables.
      <T2> JoinBuilder2.AfterJoin<T0,​T1,​T2> leftJoinOn​(com.speedment.runtime.field.trait.HasComparableOperators<T2,​?> joinedField)
      Adds the provided joinedField to the collection of joined column/tables.
      <T2> JoinBuilder2.AfterJoin<T0,​T1,​T2> rightJoinOn​(com.speedment.runtime.field.trait.HasComparableOperators<T2,​?> joinedField)
      Adds the provided joinedField to the collection of joined column/tables.
      • Methods inherited from interface com.speedment.runtime.join.trait.HasWhere

        where
    • Method Detail

      • innerJoinOn

        <T2> JoinBuilder2.AfterJoin<T0,​T1,​T2> innerJoinOn​(com.speedment.runtime.field.trait.HasComparableOperators<T2,​?> joinedField)
        Description copied from interface: HasJoins
        Adds the provided joinedField to the collection of joined column/tables. Elements are joined from the table of the provided joinedField using an INNER JOIN whereby rows from two tables are present only if there is a match between the joining columns. Thus, rows that do not have matches in the joining columns will not be present in the result.
        Specified by:
        innerJoinOn in interface HasJoins<T0,​T1>
        Type Parameters:
        T2 - entity type
        Parameters:
        joinedField - to add to the current join builder
        Returns:
        a builder where the provided joinedField is added
      • leftJoinOn

        <T2> JoinBuilder2.AfterJoin<T0,​T1,​T2> leftJoinOn​(com.speedment.runtime.field.trait.HasComparableOperators<T2,​?> joinedField)
        Description copied from interface: HasJoins
        Adds the provided joinedField to the collection of joined column/tables. Elements are joined from the table of the provided joinedField using an LEFT JOIN whereby rows from two tables are present either if there is a match between the joining columns or for each row from previously existing table(s).

        Unmatched rows will have entities from the table in the given joinedField set to null

        Specified by:
        leftJoinOn in interface HasJoins<T0,​T1>
        Type Parameters:
        T2 - entity type
        Parameters:
        joinedField - to add to the current join builder
        Returns:
        a builder where the provided joinedField is added
      • rightJoinOn

        <T2> JoinBuilder2.AfterJoin<T0,​T1,​T2> rightJoinOn​(com.speedment.runtime.field.trait.HasComparableOperators<T2,​?> joinedField)
        Description copied from interface: HasJoins
        Adds the provided joinedField to the collection of joined column/tables. Elements are joined from the table of the provided joinedField using an RIGHT JOIN whereby rows from two tables are present either if there is a match between the joining columns or for each row from the table for the provided joinedField.

        Unmatched rows will have entities from the table in the given joinedField set to null

        Specified by:
        rightJoinOn in interface HasJoins<T0,​T1>
        Type Parameters:
        T2 - entity type
        Parameters:
        joinedField - to add to the current join builder
        Returns:
        a builder where the provided joinedField is added
      • crossJoin

        <T2> JoinBuilder3<T0,​T1,​T2> crossJoin​(com.speedment.runtime.config.identifier.TableIdentifier<T2> joinedTable)
        Description copied from interface: HasJoins
        Adds the provided joinedTable to the collection of joined tables. Elements are joined from the table of the provided joinedTable using an CROSS JOIN whereby all combination of rows using all tables(s) are produced.
        Specified by:
        crossJoin in interface HasJoins<T0,​T1>
        Type Parameters:
        T2 - entity type
        Parameters:
        joinedTable - to add to the current join builder
        Returns:
        a builder where the provided joinedField is added
      • build

        default Join<com.speedment.common.tuple.nullable.Tuple2OfNullables<T0,​T1>> build()
        Description copied from interface: HasDefaultBuild
        Creates and returns a new Join object where elements in the Join object's stream method is of a default Tuple type.
        Specified by:
        build in interface HasDefaultBuild<T0>
        Returns:
        a new Join object where elements in the Join object's stream method is of a default Tuple type
      • build

        <T> Join<T> build​(BiFunction<T0,​T1,​T> constructor)
        Creates and returns a new Join object where elements in the Join object's stream method is created using the provided constructor.
        Type Parameters:
        T - the type of element in the Join object's stream method.
        Parameters:
        constructor - to use to create stream elements.
        Returns:
        a new Join object where elements in the Join object's stream method is of a default Tuple type
        Throws:
        NullPointerException - if the provided constructor is null