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
nodeTDataSourceNodeData source node to decorate.
filterSqlConditionNodeUnderlying predicate.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
filterFunc<TDataSourceNode, SqlConditionNode>Underlying predicate provider.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
filterSqlConditionNodeUnderlying predicate.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
filterFunc<TDataSourceNode, SqlConditionNode>Underlying predicate provider.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL data source node type.
Exists(SqlDataSourceNode)
Creates a new SqlExistsConditionNode instance.
[Pure]
public static SqlExistsConditionNode Exists(this SqlDataSourceNode node)
Parameters
nodeSqlDataSourceNodeData 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
nodeSqlDataSourceNodeData 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
nodeTDataSourceNodeData source node to decorate.
expressionsSqlExpressionNode[]Collection of expressions to aggregate by.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
expressionsIEnumerable<SqlExpressionNode>Collection of expressions to aggregate by.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
expressionsFunc<TDataSourceNode, IEnumerable<SqlExpressionNode>>Provider of collection of expressions to aggregate by.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
valueSqlExpressionNodeUnderlying value.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL data source node type.
NotExists(SqlDataSourceNode)
Creates a new negated SqlExistsConditionNode instance.
[Pure]
public static SqlExistsConditionNode NotExists(this SqlDataSourceNode node)
Parameters
nodeSqlDataSourceNodeData 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
nodeTDataSourceNodeData source node to decorate.
valueSqlExpressionNodeUnderlying value.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
filterSqlConditionNodeUnderlying predicate.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
filterFunc<TDataSourceNode, SqlConditionNode>Underlying predicate provider.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
filterSqlConditionNodeUnderlying predicate.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
filterFunc<TDataSourceNode, SqlConditionNode>Underlying predicate provider.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
orderingSqlOrderByNode[]Collection of ordering definitions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
orderingIEnumerable<SqlOrderByNode>Collection of ordering definitions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
orderingFunc<TDataSourceNode, IEnumerable<SqlOrderByNode>>Provider of collection of ordering definitions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeUnderlying data source.
selectionSqlSelectNode[]Collection of expressions to include in this query's selection.
Returns
- SqlDataSourceQueryExpressionNode<TDataSourceNode>
New SqlDataSourceQueryExpressionNode<TDataSourceNode> instance.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeUnderlying data source.
selectionIEnumerable<SqlSelectNode>Collection of expressions to include in this query's selection.
Returns
- SqlDataSourceQueryExpressionNode<TDataSourceNode>
New SqlDataSourceQueryExpressionNode<TDataSourceNode> instance.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeUnderlying data source.
selectorFunc<TDataSourceNode, IEnumerable<SqlSelectNode>>Provider of collection of expressions to include in this query's selection.
Returns
- SqlDataSourceQueryExpressionNode<TDataSourceNode>
New SqlDataSourceQueryExpressionNode<TDataSourceNode> instance.
Type Parameters
TDataSourceNodeSQL data source node type.
ToDeleteFrom(SqlDataSourceNode)
Creates a new SqlDeleteFromNode instance.
[Pure]
public static SqlDeleteFromNode ToDeleteFrom(this SqlDataSourceNode node)
Parameters
nodeSqlDataSourceNodeData 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
nodeSqlDataSourceNodeData source that defines records to be updated.
assignmentsSqlValueAssignmentNode[]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
nodeTDataSourceNodeData source that defines records to be updated.
assignmentsFunc<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
nodeTDataSourceNodeData source node to decorate.
windowsSqlWindowDefinitionNode[]Collection of window definitions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
windowsIEnumerable<SqlWindowDefinitionNode>Collection of window definitions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
windowsFunc<TDataSourceNode, IEnumerable<SqlWindowDefinitionNode>>Provider of collection of window definitions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
commonTableExpressionsSqlCommonTableExpressionNode[]Collection of common table expressions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
commonTableExpressionsIEnumerable<SqlCommonTableExpressionNode>Collection of common table expressions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL 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
nodeTDataSourceNodeData source node to decorate.
commonTableExpressionsFunc<TDataSourceNode, IEnumerable<SqlCommonTableExpressionNode>>Provider of collection of common table expressions.
Returns
- TDataSourceNode
Decorated SQL data source node.
Type Parameters
TDataSourceNodeSQL data source node type.