Class SelectStatement
- Namespace
- FluentCommand.Query.Generators
- Assembly
- FluentCommand.dll
Represents a complete SQL SELECT statement, including all clauses and expressions.
public record SelectStatement : IEquatable<SelectStatement>
- Inheritance
-
SelectStatement
- Implements
- Inherited Members
Constructors
SelectStatement(SelectStatement)
protected SelectStatement(SelectStatement original)
Parameters
original
SelectStatement
SelectStatement(IReadOnlyCollection<ColumnExpression>, IReadOnlyCollection<TableExpression>, IReadOnlyCollection<JoinExpression>, IReadOnlyCollection<WhereExpression>, IReadOnlyCollection<SortExpression>, IReadOnlyCollection<GroupExpression>, IReadOnlyCollection<LimitExpression>, IReadOnlyCollection<string>)
Represents a complete SQL SELECT statement, including all clauses and expressions.
public SelectStatement(IReadOnlyCollection<ColumnExpression> SelectExpressions, IReadOnlyCollection<TableExpression> FromExpressions, IReadOnlyCollection<JoinExpression> JoinExpressions, IReadOnlyCollection<WhereExpression> WhereExpressions, IReadOnlyCollection<SortExpression> SortExpressions, IReadOnlyCollection<GroupExpression> GroupExpressions, IReadOnlyCollection<LimitExpression> LimitExpressions, IReadOnlyCollection<string> CommentExpressions)
Parameters
SelectExpressions
IReadOnlyCollection<ColumnExpression>The columns or expressions to select.
FromExpressions
IReadOnlyCollection<TableExpression>The tables to select from.
JoinExpressions
IReadOnlyCollection<JoinExpression>The join clauses.
WhereExpressions
IReadOnlyCollection<WhereExpression>The WHERE clause conditions.
SortExpressions
IReadOnlyCollection<SortExpression>The ORDER BY clause expressions.
GroupExpressions
IReadOnlyCollection<GroupExpression>The GROUP BY clause expressions.
LimitExpressions
IReadOnlyCollection<LimitExpression>The LIMIT/OFFSET clause expressions.
CommentExpressions
IReadOnlyCollection<string>The comment expressions to include in the statement.
Properties
CommentExpressions
The comment expressions to include in the statement.
public IReadOnlyCollection<string> CommentExpressions { get; init; }
Property Value
EqualityContract
protected virtual Type EqualityContract { get; }
Property Value
FromExpressions
The tables to select from.
public IReadOnlyCollection<TableExpression> FromExpressions { get; init; }
Property Value
GroupExpressions
The GROUP BY clause expressions.
public IReadOnlyCollection<GroupExpression> GroupExpressions { get; init; }
Property Value
JoinExpressions
The join clauses.
public IReadOnlyCollection<JoinExpression> JoinExpressions { get; init; }
Property Value
LimitExpressions
The LIMIT/OFFSET clause expressions.
public IReadOnlyCollection<LimitExpression> LimitExpressions { get; init; }
Property Value
SelectExpressions
The columns or expressions to select.
public IReadOnlyCollection<ColumnExpression> SelectExpressions { get; init; }
Property Value
SortExpressions
The ORDER BY clause expressions.
public IReadOnlyCollection<SortExpression> SortExpressions { get; init; }
Property Value
WhereExpressions
The WHERE clause conditions.
public IReadOnlyCollection<WhereExpression> WhereExpressions { get; init; }
Property Value
Methods
Deconstruct(out IReadOnlyCollection<ColumnExpression>, out IReadOnlyCollection<TableExpression>, out IReadOnlyCollection<JoinExpression>, out IReadOnlyCollection<WhereExpression>, out IReadOnlyCollection<SortExpression>, out IReadOnlyCollection<GroupExpression>, out IReadOnlyCollection<LimitExpression>, out IReadOnlyCollection<string>)
public void Deconstruct(out IReadOnlyCollection<ColumnExpression> SelectExpressions, out IReadOnlyCollection<TableExpression> FromExpressions, out IReadOnlyCollection<JoinExpression> JoinExpressions, out IReadOnlyCollection<WhereExpression> WhereExpressions, out IReadOnlyCollection<SortExpression> SortExpressions, out IReadOnlyCollection<GroupExpression> GroupExpressions, out IReadOnlyCollection<LimitExpression> LimitExpressions, out IReadOnlyCollection<string> CommentExpressions)
Parameters
SelectExpressions
IReadOnlyCollection<ColumnExpression>FromExpressions
IReadOnlyCollection<TableExpression>JoinExpressions
IReadOnlyCollection<JoinExpression>WhereExpressions
IReadOnlyCollection<WhereExpression>SortExpressions
IReadOnlyCollection<SortExpression>GroupExpressions
IReadOnlyCollection<GroupExpression>LimitExpressions
IReadOnlyCollection<LimitExpression>CommentExpressions
IReadOnlyCollection<string>
Equals(SelectStatement?)
public virtual bool Equals(SelectStatement? other)
Parameters
other
SelectStatement
Returns
Equals(object?)
public override bool Equals(object? obj)
Parameters
obj
object
Returns
GetHashCode()
public override int GetHashCode()
Returns
PrintMembers(StringBuilder)
protected virtual bool PrintMembers(StringBuilder builder)
Parameters
builder
StringBuilder
Returns
ToString()
public override string ToString()
Returns
Operators
operator ==(SelectStatement?, SelectStatement?)
public static bool operator ==(SelectStatement? left, SelectStatement? right)
Parameters
left
SelectStatementright
SelectStatement
Returns
operator !=(SelectStatement?, SelectStatement?)
public static bool operator !=(SelectStatement? left, SelectStatement? right)
Parameters
left
SelectStatementright
SelectStatement