Class SqlDataSourceNodeExtensions
- Namespace
- LfrlAnvil.Sql.Expressions
- Assembly
- LfrlAnvil.Sql.Core.dll
Contains SqlDataSourceNode extension methods.
public static class SqlDataSourceNodeExtensions
- Inheritance
-
SqlDataSourceNodeExtensions
- Inherited Members
Methods
AndHaving<TDataSourceNode>(TDataSourceNode, SqlConditionNode)
Decorates the provided SQL data source node with an SqlAggregationFilterTraitNode with IsConjunction set to true.
[Pure]
public static TDataSourceNode AndHaving<TDataSourceNode>(this TDataSourceNode node, SqlConditionNode filter) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
filter
SqlConditionNodeUnderlying predicate.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
AndHaving<TDataSourceNode>(TDataSourceNode, Func<TDataSourceNode, SqlConditionNode>)
Decorates the provided SQL data source node with an SqlAggregationFilterTraitNode with IsConjunction set to true.
[Pure]
public static TDataSourceNode AndHaving<TDataSourceNode>(this TDataSourceNode node, Func<TDataSourceNode, SqlConditionNode> filter) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
filter
Func<TDataSourceNode, SqlConditionNode>Underlying predicate provider.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
AndWhere<TDataSourceNode>(TDataSourceNode, SqlConditionNode)
Decorates the provided SQL data source node with an SqlFilterTraitNode with IsConjunction set to true.
[Pure]
public static TDataSourceNode AndWhere<TDataSourceNode>(this TDataSourceNode node, SqlConditionNode filter) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
filter
SqlConditionNodeUnderlying predicate.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
AndWhere<TDataSourceNode>(TDataSourceNode, Func<TDataSourceNode, SqlConditionNode>)
Decorates the provided SQL data source node with an SqlFilterTraitNode with IsConjunction set to true.
[Pure]
public static TDataSourceNode AndWhere<TDataSourceNode>(this TDataSourceNode node, Func<TDataSourceNode, SqlConditionNode> filter) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
filter
Func<TDataSourceNode, SqlConditionNode>Underlying predicate provider.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
Distinct<TDataSourceNode>(TDataSourceNode)
Decorates the provided SQL data source node with an SqlDistinctTraitNode.
[Pure]
public static TDataSourceNode Distinct<TDataSourceNode>(this TDataSourceNode node) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
Exists(SqlDataSourceNode)
Creates a new SqlExistsConditionNode instance.
[Pure]
public static SqlExistsConditionNode Exists(this SqlDataSourceNode node)
Parameters
node
SqlDataSourceNodeData source of the sub-query to check.
Returns
- SqlExistsConditionNode
New SqlExistsConditionNode instance.
GetAll(SqlDataSourceNode)
Creates a new SqlSelectAllNode instance.
[Pure]
public static SqlSelectAllNode GetAll(this SqlDataSourceNode node)
Parameters
node
SqlDataSourceNodeData source to select all data fields from.
Returns
- SqlSelectAllNode
New SqlSelectAllNode instance.
GroupBy<TDataSourceNode>(TDataSourceNode, params SqlExpressionNode[])
Decorates the provided SQL data source node with an SqlAggregationTraitNode.
[Pure]
public static TDataSourceNode GroupBy<TDataSourceNode>(this TDataSourceNode node, params SqlExpressionNode[] expressions) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
expressions
SqlExpressionNode[]Collection of expressions to aggregate by.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
GroupBy<TDataSourceNode>(TDataSourceNode, IEnumerable<SqlExpressionNode>)
Decorates the provided SQL data source node with an SqlAggregationTraitNode.
[Pure]
public static TDataSourceNode GroupBy<TDataSourceNode>(this TDataSourceNode node, IEnumerable<SqlExpressionNode> expressions) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
expressions
IEnumerable<SqlExpressionNode>Collection of expressions to aggregate by.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
GroupBy<TDataSourceNode>(TDataSourceNode, Func<TDataSourceNode, IEnumerable<SqlExpressionNode>>)
Decorates the provided SQL data source node with an SqlAggregationTraitNode.
[Pure]
public static TDataSourceNode GroupBy<TDataSourceNode>(this TDataSourceNode node, Func<TDataSourceNode, IEnumerable<SqlExpressionNode>> expressions) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
expressions
Func<TDataSourceNode, IEnumerable<SqlExpressionNode>>Provider of collection of expressions to aggregate by.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
Limit<TDataSourceNode>(TDataSourceNode, SqlExpressionNode)
Decorates the provided SQL data source node with an SqlLimitTraitNode.
[Pure]
public static TDataSourceNode Limit<TDataSourceNode>(this TDataSourceNode node, SqlExpressionNode value) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
value
SqlExpressionNodeUnderlying value.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
NotExists(SqlDataSourceNode)
Creates a new negated SqlExistsConditionNode instance.
[Pure]
public static SqlExistsConditionNode NotExists(this SqlDataSourceNode node)
Parameters
node
SqlDataSourceNodeData source of the sub-query to check.
Returns
- SqlExistsConditionNode
New negated SqlExistsConditionNode instance.
Offset<TDataSourceNode>(TDataSourceNode, SqlExpressionNode)
Decorates the provided SQL data source node with an SqlOffsetTraitNode.
[Pure]
public static TDataSourceNode Offset<TDataSourceNode>(this TDataSourceNode node, SqlExpressionNode value) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
value
SqlExpressionNodeUnderlying value.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
OrHaving<TDataSourceNode>(TDataSourceNode, SqlConditionNode)
Decorates the provided SQL data source node with an SqlAggregationFilterTraitNode with IsConjunction set to false.
[Pure]
public static TDataSourceNode OrHaving<TDataSourceNode>(this TDataSourceNode node, SqlConditionNode filter) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
filter
SqlConditionNodeUnderlying predicate.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
OrHaving<TDataSourceNode>(TDataSourceNode, Func<TDataSourceNode, SqlConditionNode>)
Decorates the provided SQL data source node with an SqlAggregationFilterTraitNode with IsConjunction set to false.
[Pure]
public static TDataSourceNode OrHaving<TDataSourceNode>(this TDataSourceNode node, Func<TDataSourceNode, SqlConditionNode> filter) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
filter
Func<TDataSourceNode, SqlConditionNode>Underlying predicate provider.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
OrWhere<TDataSourceNode>(TDataSourceNode, SqlConditionNode)
Decorates the provided SQL data source node with an SqlFilterTraitNode with IsConjunction set to false.
[Pure]
public static TDataSourceNode OrWhere<TDataSourceNode>(this TDataSourceNode node, SqlConditionNode filter) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
filter
SqlConditionNodeUnderlying predicate.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
OrWhere<TDataSourceNode>(TDataSourceNode, Func<TDataSourceNode, SqlConditionNode>)
Decorates the provided SQL data source node with an SqlFilterTraitNode with IsConjunction set to false.
[Pure]
public static TDataSourceNode OrWhere<TDataSourceNode>(this TDataSourceNode node, Func<TDataSourceNode, SqlConditionNode> filter) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
filter
Func<TDataSourceNode, SqlConditionNode>Underlying predicate provider.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
OrderBy<TDataSourceNode>(TDataSourceNode, params SqlOrderByNode[])
Decorates the provided SQL data source node with an SqlSortTraitNode.
[Pure]
public static TDataSourceNode OrderBy<TDataSourceNode>(this TDataSourceNode node, params SqlOrderByNode[] ordering) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
ordering
SqlOrderByNode[]Collection of ordering definitions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
OrderBy<TDataSourceNode>(TDataSourceNode, IEnumerable<SqlOrderByNode>)
Decorates the provided SQL data source node with an SqlSortTraitNode.
[Pure]
public static TDataSourceNode OrderBy<TDataSourceNode>(this TDataSourceNode node, IEnumerable<SqlOrderByNode> ordering) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
ordering
IEnumerable<SqlOrderByNode>Collection of ordering definitions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
OrderBy<TDataSourceNode>(TDataSourceNode, Func<TDataSourceNode, IEnumerable<SqlOrderByNode>>)
Decorates the provided SQL data source node with an SqlSortTraitNode.
[Pure]
public static TDataSourceNode OrderBy<TDataSourceNode>(this TDataSourceNode node, Func<TDataSourceNode, IEnumerable<SqlOrderByNode>> ordering) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
ordering
Func<TDataSourceNode, IEnumerable<SqlOrderByNode>>Provider of collection of ordering definitions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
Select<TDataSourceNode>(TDataSourceNode, params SqlSelectNode[])
Creates a new SqlDataSourceQueryExpressionNode<TDataSourceNode> instance.
[Pure]
public static SqlDataSourceQueryExpressionNode<TDataSourceNode> Select<TDataSourceNode>(this TDataSourceNode node, params SqlSelectNode[] selection) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeUnderlying data source.
selection
SqlSelectNode[]Collection of expressions to include in this query's selection.
Returns
- SqlDataSourceQueryExpressionNode<TDataSourceNode>
New SqlDataSourceQueryExpressionNode<TDataSourceNode> instance.
Type Parameters
TDataSourceNode
SQL data source node type.
Select<TDataSourceNode>(TDataSourceNode, IEnumerable<SqlSelectNode>)
Creates a new SqlDataSourceQueryExpressionNode<TDataSourceNode> instance.
[Pure]
public static SqlDataSourceQueryExpressionNode<TDataSourceNode> Select<TDataSourceNode>(this TDataSourceNode node, IEnumerable<SqlSelectNode> selection) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeUnderlying data source.
selection
IEnumerable<SqlSelectNode>Collection of expressions to include in this query's selection.
Returns
- SqlDataSourceQueryExpressionNode<TDataSourceNode>
New SqlDataSourceQueryExpressionNode<TDataSourceNode> instance.
Type Parameters
TDataSourceNode
SQL data source node type.
Select<TDataSourceNode>(TDataSourceNode, Func<TDataSourceNode, IEnumerable<SqlSelectNode>>)
Creates a new SqlDataSourceQueryExpressionNode<TDataSourceNode> instance.
[Pure]
public static SqlDataSourceQueryExpressionNode<TDataSourceNode> Select<TDataSourceNode>(this TDataSourceNode node, Func<TDataSourceNode, IEnumerable<SqlSelectNode>> selector) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeUnderlying data source.
selector
Func<TDataSourceNode, IEnumerable<SqlSelectNode>>Provider of collection of expressions to include in this query's selection.
Returns
- SqlDataSourceQueryExpressionNode<TDataSourceNode>
New SqlDataSourceQueryExpressionNode<TDataSourceNode> instance.
Type Parameters
TDataSourceNode
SQL data source node type.
ToDeleteFrom(SqlDataSourceNode)
Creates a new SqlDeleteFromNode instance.
[Pure]
public static SqlDeleteFromNode ToDeleteFrom(this SqlDataSourceNode node)
Parameters
node
SqlDataSourceNodeData source that defines records to be deleted.
Returns
- SqlDeleteFromNode
New SqlDeleteFromNode instance.
ToUpdate(SqlDataSourceNode, params SqlValueAssignmentNode[])
Creates a new SqlUpdateNode instance.
[Pure]
public static SqlUpdateNode ToUpdate(this SqlDataSourceNode node, params SqlValueAssignmentNode[] assignments)
Parameters
node
SqlDataSourceNodeData source that defines records to be updated.
assignments
SqlValueAssignmentNode[]Collection of value assignments that this update refers to.
Returns
- SqlUpdateNode
New SqlUpdateNode instance.
ToUpdate<TDataSourceNode>(TDataSourceNode, Func<TDataSourceNode, IEnumerable<SqlValueAssignmentNode>>)
Creates a new SqlUpdateNode instance.
[Pure]
public static SqlUpdateNode ToUpdate<TDataSourceNode>(this TDataSourceNode node, Func<TDataSourceNode, IEnumerable<SqlValueAssignmentNode>> assignments) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source that defines records to be updated.
assignments
Func<TDataSourceNode, IEnumerable<SqlValueAssignmentNode>>Provider of collection of value assignments that this update refers to.
Returns
- SqlUpdateNode
New SqlUpdateNode instance.
Type Parameters
TDataSourceNode
Window<TDataSourceNode>(TDataSourceNode, params SqlWindowDefinitionNode[])
Decorates the provided SQL data source node with an SqlWindowDefinitionTraitNode.
[Pure]
public static TDataSourceNode Window<TDataSourceNode>(this TDataSourceNode node, params SqlWindowDefinitionNode[] windows) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
windows
SqlWindowDefinitionNode[]Collection of window definitions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
Window<TDataSourceNode>(TDataSourceNode, IEnumerable<SqlWindowDefinitionNode>)
Decorates the provided SQL data source node with an SqlWindowDefinitionTraitNode.
[Pure]
public static TDataSourceNode Window<TDataSourceNode>(this TDataSourceNode node, IEnumerable<SqlWindowDefinitionNode> windows) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
windows
IEnumerable<SqlWindowDefinitionNode>Collection of window definitions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
Window<TDataSourceNode>(TDataSourceNode, Func<TDataSourceNode, IEnumerable<SqlWindowDefinitionNode>>)
Decorates the provided SQL data source node with an SqlWindowDefinitionTraitNode.
[Pure]
public static TDataSourceNode Window<TDataSourceNode>(this TDataSourceNode node, Func<TDataSourceNode, IEnumerable<SqlWindowDefinitionNode>> windows) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
windows
Func<TDataSourceNode, IEnumerable<SqlWindowDefinitionNode>>Provider of collection of window definitions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
With<TDataSourceNode>(TDataSourceNode, params SqlCommonTableExpressionNode[])
Decorates the provided SQL data source node with an SqlCommonTableExpressionTraitNode.
[Pure]
public static TDataSourceNode With<TDataSourceNode>(this TDataSourceNode node, params SqlCommonTableExpressionNode[] commonTableExpressions) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
commonTableExpressions
SqlCommonTableExpressionNode[]Collection of common table expressions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
With<TDataSourceNode>(TDataSourceNode, IEnumerable<SqlCommonTableExpressionNode>)
Decorates the provided SQL data source node with an SqlCommonTableExpressionTraitNode.
[Pure]
public static TDataSourceNode With<TDataSourceNode>(this TDataSourceNode node, IEnumerable<SqlCommonTableExpressionNode> commonTableExpressions) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
commonTableExpressions
IEnumerable<SqlCommonTableExpressionNode>Collection of common table expressions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.
With<TDataSourceNode>(TDataSourceNode, Func<TDataSourceNode, IEnumerable<SqlCommonTableExpressionNode>>)
Decorates the provided SQL data source node with an SqlCommonTableExpressionTraitNode.
[Pure]
public static TDataSourceNode With<TDataSourceNode>(this TDataSourceNode node, Func<TDataSourceNode, IEnumerable<SqlCommonTableExpressionNode>> commonTableExpressions) where TDataSourceNode : SqlDataSourceNode
Parameters
node
TDataSourceNodeData source node to decorate.
commonTableExpressions
Func<TDataSourceNode, IEnumerable<SqlCommonTableExpressionNode>>Provider of collection of common table expressions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNode
SQL data source node type.