Struct SqlJoinDefinition
- Namespace
- LfrlAnvil.Sql.Expressions.Objects
- Assembly
- LfrlAnvil.Sql.Core.dll
Represents a definition of a record set join operation.
public readonly struct SqlJoinDefinition
- Inherited Members
Properties
InnerRecordSet
Inner SqlRecordSetNode instance.
public SqlRecordSetNode InnerRecordSet { get; }
Property Value
JoinType
Type of the join operation to perform.
public SqlJoinType JoinType { get; }
Property Value
OnExpression
Callback that creates a condition of the join operation.
public Func<SqlJoinDefinition.ExpressionParams, SqlConditionNode> OnExpression { get; }
Property Value
Methods
Cross(SqlRecordSetNode)
Creates a new SqlJoinDefinition instance with Cross type.
[Pure]
public static SqlJoinDefinition Cross(SqlRecordSetNode inner)
Parameters
inner
SqlRecordSetNodeInner SqlRecordSetNode instance.
Returns
- SqlJoinDefinition
New SqlJoinDefinition instance.
Full(SqlRecordSetNode, Func<ExpressionParams, SqlConditionNode>)
Creates a new SqlJoinDefinition instance with Full type.
[Pure]
public static SqlJoinDefinition Full(SqlRecordSetNode inner, Func<SqlJoinDefinition.ExpressionParams, SqlConditionNode> onExpression)
Parameters
inner
SqlRecordSetNodeInner SqlRecordSetNode instance.
onExpression
Func<SqlJoinDefinition.ExpressionParams, SqlConditionNode>Callback that creates a condition of the join operation.
Returns
- SqlJoinDefinition
New SqlJoinDefinition instance.
Inner(SqlRecordSetNode, Func<ExpressionParams, SqlConditionNode>)
Creates a new SqlJoinDefinition instance with Inner type.
[Pure]
public static SqlJoinDefinition Inner(SqlRecordSetNode inner, Func<SqlJoinDefinition.ExpressionParams, SqlConditionNode> onExpression)
Parameters
inner
SqlRecordSetNodeInner SqlRecordSetNode instance.
onExpression
Func<SqlJoinDefinition.ExpressionParams, SqlConditionNode>Callback that creates a condition of the join operation.
Returns
- SqlJoinDefinition
New SqlJoinDefinition instance.
Left(SqlRecordSetNode, Func<ExpressionParams, SqlConditionNode>)
Creates a new SqlJoinDefinition instance with Left type.
[Pure]
public static SqlJoinDefinition Left(SqlRecordSetNode inner, Func<SqlJoinDefinition.ExpressionParams, SqlConditionNode> onExpression)
Parameters
inner
SqlRecordSetNodeInner SqlRecordSetNode instance.
onExpression
Func<SqlJoinDefinition.ExpressionParams, SqlConditionNode>Callback that creates a condition of the join operation.
Returns
- SqlJoinDefinition
New SqlJoinDefinition instance.
Right(SqlRecordSetNode, Func<ExpressionParams, SqlConditionNode>)
Creates a new SqlJoinDefinition instance with Left type.
[Pure]
public static SqlJoinDefinition Right(SqlRecordSetNode inner, Func<SqlJoinDefinition.ExpressionParams, SqlConditionNode> onExpression)
Parameters
inner
SqlRecordSetNodeInner SqlRecordSetNode instance.
onExpression
Func<SqlJoinDefinition.ExpressionParams, SqlConditionNode>Callback that creates a condition of the join operation.
Returns
- SqlJoinDefinition
New SqlJoinDefinition instance.