Class SelectRenderer
- java.lang.Object
-
- com.exasol.sql.rendering.AbstractFragmentRenderer
-
- com.exasol.sql.dql.select.rendering.SelectRenderer
-
- All Implemented Interfaces:
SelectVisitor
,FragmentRenderer
,ValueTableVisitor
public class SelectRenderer extends AbstractFragmentRenderer implements SelectVisitor
TheSelectRenderer
turns SQL statement structures in to SQL strings.
-
-
Field Summary
-
Fields inherited from class com.exasol.sql.rendering.AbstractFragmentRenderer
config
-
-
Constructor Summary
Constructors Constructor Description SelectRenderer(StringRendererConfig config)
Create a newSelectRenderer
with custom render settings.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static SelectRenderer
create()
Create anSelectRenderer
using the default renderer configurationstatic SelectRenderer
create(StringRendererConfig config)
Create anSelectRenderer
void
leave(FromClause fromClause)
Leave theFROM
clause.void
leave(ValueTable valueTable)
Leave a value table.void
leave(ValueTableRow valueTableRow)
Leave a row in a value table.void
visit(DerivedColumn derivedColumn)
Visit a derived column.void
visit(FromClause fromClause)
Visit theFROM
clause.void
visit(GroupByClause groupByClause)
Visit theGROUP BY
clause.void
visit(Join join)
Visit theJOIN
clause.void
visit(LimitClause limit)
Visit theLIMIT
clause.void
visit(OrderByClause orderByClause)
Visit theORDER BY
clause.void
visit(Select select)
Visit theSELECT
part of the statement.void
visit(WhereClause whereClause)
Visit theWHERE
clause.void
visit(Table table)
Visit a table.void
visit(ValueTable valueTable)
Visit a value table.void
visit(ValueTableRow valueTableRow)
Visit a row in a value table.-
Methods inherited from class com.exasol.sql.rendering.AbstractFragmentRenderer
append, append, appendAutoQuoted, appendCommaWhenNeeded, appendKeyWord, appendListOfValueExpressions, appendRenderedValueExpression, appendSpace, appendValueTableRow, endParenthesis, render, setLastVisited, startParenthesis
-
-
-
-
Constructor Detail
-
SelectRenderer
public SelectRenderer(StringRendererConfig config)
Create a newSelectRenderer
with custom render settings.- Parameters:
config
- render configuration settings
-
-
Method Detail
-
visit
public void visit(Select select)
Description copied from interface:SelectVisitor
Visit theSELECT
part of the statement.- Specified by:
visit
in interfaceSelectVisitor
- Parameters:
select
- select to visit
-
visit
public void visit(DerivedColumn derivedColumn)
Description copied from interface:SelectVisitor
Visit a derived column.- Specified by:
visit
in interfaceSelectVisitor
- Parameters:
derivedColumn
- derived column to visit
-
visit
public void visit(FromClause fromClause)
Description copied from interface:SelectVisitor
Visit theFROM
clause.- Specified by:
visit
in interfaceSelectVisitor
- Parameters:
fromClause
-FROM
clause to visit
-
leave
public void leave(FromClause fromClause)
Description copied from interface:SelectVisitor
Leave theFROM
clause.- Specified by:
leave
in interfaceSelectVisitor
- Parameters:
fromClause
-FROM
clause to leave
-
visit
public void visit(Table table)
Description copied from interface:SelectVisitor
Visit a table.- Specified by:
visit
in interfaceSelectVisitor
- Parameters:
table
- table to visit
-
visit
public void visit(Join join)
Description copied from interface:SelectVisitor
Visit theJOIN
clause.- Specified by:
visit
in interfaceSelectVisitor
- Parameters:
join
-JOIN
clause to visit
-
visit
public void visit(WhereClause whereClause)
Description copied from interface:SelectVisitor
Visit theWHERE
clause.- Specified by:
visit
in interfaceSelectVisitor
- Parameters:
whereClause
-WHERE
clause to visit
-
visit
public void visit(GroupByClause groupByClause)
Description copied from interface:SelectVisitor
Visit theGROUP BY
clause.- Specified by:
visit
in interfaceSelectVisitor
- Parameters:
groupByClause
-GROUP BY
clause to visit
-
visit
public void visit(OrderByClause orderByClause)
Description copied from interface:SelectVisitor
Visit theORDER BY
clause.- Specified by:
visit
in interfaceSelectVisitor
- Parameters:
orderByClause
-ORDER BY
clause to visit
-
visit
public void visit(LimitClause limit)
Description copied from interface:SelectVisitor
Visit theLIMIT
clause.- Specified by:
visit
in interfaceSelectVisitor
- Parameters:
limit
-LIMIT
clause to visit
-
visit
public void visit(ValueTable valueTable)
Description copied from interface:ValueTableVisitor
Visit a value table.- Specified by:
visit
in interfaceValueTableVisitor
- Parameters:
valueTable
- value table to visit
-
leave
public void leave(ValueTable valueTable)
Description copied from interface:ValueTableVisitor
Leave a value table.- Specified by:
leave
in interfaceValueTableVisitor
- Parameters:
valueTable
- value table to leave
-
visit
public void visit(ValueTableRow valueTableRow)
Description copied from interface:ValueTableVisitor
Visit a row in a value table.- Specified by:
visit
in interfaceValueTableVisitor
- Parameters:
valueTableRow
- row to visit
-
leave
public void leave(ValueTableRow valueTableRow)
Description copied from interface:ValueTableVisitor
Leave a row in a value table.- Specified by:
leave
in interfaceValueTableVisitor
- Parameters:
valueTableRow
- row to leave
-
create
public static SelectRenderer create()
Create anSelectRenderer
using the default renderer configuration- Returns:
- select renderer
-
create
public static SelectRenderer create(StringRendererConfig config)
Create anSelectRenderer
- Parameters:
config
- renderer configuration- Returns:
- select renderer
-
-