| <!DOCTYPE HTML> |
| <html lang="en"> |
| <head> |
| <!-- Generated by javadoc (17) --> |
| <title>SqlValidatorImpl (Apache Calcite API)</title> |
| <meta name="viewport" content="width=device-width, initial-scale=1"> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <meta name="description" content="declaration: package: org.apache.calcite.sql.validate, class: SqlValidatorImpl"> |
| <meta name="generator" content="javadoc/ClassWriterImpl"> |
| <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style"> |
| <link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style"> |
| <link rel="stylesheet" type="text/css" href="../../../../../jquery-ui.overrides.css" title="Style"> |
| <script type="text/javascript" src="../../../../../script.js"></script> |
| <script type="text/javascript" src="../../../../../script-dir/jquery-3.5.1.min.js"></script> |
| <script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script> |
| </head> |
| <body class="class-declaration-page"> |
| <script type="text/javascript">var evenRowColor = "even-row-color"; |
| var oddRowColor = "odd-row-color"; |
| var tableTab = "table-tab"; |
| var activeTableTab = "active-table-tab"; |
| var pathtoroot = "../../../../../"; |
| loadScripts(document, 'script');</script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| <div class="flex-box"> |
| <header role="banner" class="flex-header"> |
| <nav role="navigation"> |
| <!-- ========= START OF TOP NAVBAR ======= --> |
| <div class="top-nav" id="navbar-top"> |
| <div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div> |
| <div class="about-language"><b>Apache Calcite</b></div> |
| <ul id="navbar-top-firstrow" class="nav-list" title="Navigation"> |
| <li><a href="../../../../../index.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="nav-bar-cell1-rev">Class</li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../../../../../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../../../../../index-all.html">Index</a></li> |
| <li><a href="../../../../../help-doc.html#class">Help</a></li> |
| </ul> |
| </div> |
| <div class="sub-nav"> |
| <div> |
| <ul class="sub-nav-list"> |
| <li>Summary: </li> |
| <li><a href="#nested-class-summary">Nested</a> | </li> |
| <li><a href="#field-summary">Field</a> | </li> |
| <li><a href="#constructor-summary">Constr</a> | </li> |
| <li><a href="#method-summary">Method</a></li> |
| </ul> |
| <ul class="sub-nav-list"> |
| <li>Detail: </li> |
| <li><a href="#field-detail">Field</a> | </li> |
| <li><a href="#constructor-detail">Constr</a> | </li> |
| <li><a href="#method-detail">Method</a></li> |
| </ul> |
| </div> |
| <div class="nav-list-search"><label for="search-input">SEARCH:</label> |
| <input type="text" id="search-input" value="search" disabled="disabled"> |
| <input type="reset" id="reset-button" value="reset" disabled="disabled"> |
| </div> |
| </div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| <span class="skip-nav" id="skip-navbar-top"></span></nav> |
| </header> |
| <div class="flex-content"> |
| <main role="main"> |
| <!-- ======== START OF CLASS DATA ======== --> |
| <div class="header"> |
| <div class="sub-title"><span class="package-label-in-type">Package</span> <a href="package-summary.html">org.apache.calcite.sql.validate</a></div> |
| <h1 title="Class SqlValidatorImpl" class="title">Class SqlValidatorImpl</h1> |
| </div> |
| <div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a> |
| <div class="inheritance">org.apache.calcite.sql.validate.SqlValidatorImpl</div> |
| </div> |
| <section class="class-description" id="class-description"> |
| <dl class="notes"> |
| <dt>All Implemented Interfaces:</dt> |
| <dd><code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code>, <code><a href="SqlValidatorWithHints.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorWithHints</a></code></dd> |
| </dl> |
| <dl class="notes"> |
| <dt>Direct Known Subclasses:</dt> |
| <dd><code><a href="../../jdbc/ContextSqlValidator.html" title="class in org.apache.calcite.jdbc">ContextSqlValidator</a></code>, <code><a href="../advise/SqlAdvisorValidator.html" title="class in org.apache.calcite.sql.advise">SqlAdvisorValidator</a></code></dd> |
| </dl> |
| <hr> |
| <div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">SqlValidatorImpl</span> |
| <span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a> |
| implements <a href="SqlValidatorWithHints.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorWithHints</a></span></div> |
| <div class="block">Default implementation of <a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate"><code>SqlValidator</code></a>.</div> |
| </section> |
| <section class="summary"> |
| <ul class="summary-list"> |
| <!-- ======== NESTED CLASS SUMMARY ======== --> |
| <li> |
| <section class="nested-class-summary" id="nested-class-summary"> |
| <h2>Nested Class Summary</h2> |
| <div class="caption"><span>Nested Classes</span></div> |
| <div class="summary-table three-column-summary"> |
| <div class="table-header col-first">Modifier and Type</div> |
| <div class="table-header col-second">Class</div> |
| <div class="table-header col-last">Description</div> |
| <div class="col-first even-row-color"><code>static class </code></div> |
| <div class="col-second even-row-color"><code><a href="SqlValidatorImpl.DmlNamespace.html" class="type-name-link" title="class in org.apache.calcite.sql.validate">SqlValidatorImpl.DmlNamespace</a></code></div> |
| <div class="col-last even-row-color"> |
| <div class="block">Common base class for DML statement namespaces.</div> |
| </div> |
| <div class="col-first odd-row-color"><code>protected static class </code></div> |
| <div class="col-second odd-row-color"><code><a href="SqlValidatorImpl.FunctionParamInfo.html" class="type-name-link" title="class in org.apache.calcite.sql.validate">SqlValidatorImpl.FunctionParamInfo</a></code></div> |
| <div class="col-last odd-row-color"> |
| <div class="block">Utility object used to maintain information about the parameters in a |
| function call.</div> |
| </div> |
| <div class="col-first even-row-color"><code>protected static class </code></div> |
| <div class="col-second even-row-color"><code><a href="SqlValidatorImpl.IdInfo.html" class="type-name-link" title="class in org.apache.calcite.sql.validate">SqlValidatorImpl.IdInfo</a></code></div> |
| <div class="col-last even-row-color"> |
| <div class="block">Information about an identifier in a particular scope.</div> |
| </div> |
| <div class="col-first odd-row-color"><code>static enum </code></div> |
| <div class="col-second odd-row-color"><code><a href="SqlValidatorImpl.Status.html" class="type-name-link" title="enum in org.apache.calcite.sql.validate">SqlValidatorImpl.Status</a></code></div> |
| <div class="col-last odd-row-color"> |
| <div class="block">Validation status.</div> |
| </div> |
| </div> |
| <div class="inherited-list"> |
| <h2 id="nested-classes-inherited-from-class-org.apache.calcite.sql.validate.SqlValidator">Nested classes/interfaces inherited from interface org.apache.calcite.sql.validate.<a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></h2> |
| <code><a href="SqlValidator.Config.html" title="interface in org.apache.calcite.sql.validate">SqlValidator.Config</a></code></div> |
| </section> |
| </li> |
| <!-- =========== FIELD SUMMARY =========== --> |
| <li> |
| <section class="field-summary" id="field-summary"> |
| <h2>Field Summary</h2> |
| <div class="caption"><span>Fields</span></div> |
| <div class="summary-table three-column-summary"> |
| <div class="table-header col-first">Modifier and Type</div> |
| <div class="table-header col-second">Field</div> |
| <div class="table-header col-last">Description</div> |
| <div class="col-first even-row-color"><code>final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/IdentityHashMap.html" title="class or interface in java.util" class="external-link">IdentityHashMap</a><<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>>></code></div> |
| <div class="col-second even-row-color"><code><a href="#callToOperandTypesMap" class="member-name-link">callToOperandTypesMap</a></code></div> |
| <div class="col-last even-row-color"> |
| <div class="block">Provides the data for <a href="#getValidatedOperandTypes(org.apache.calcite.sql.SqlCall)"><code>getValidatedOperandTypes(SqlCall)</code></a>.</div> |
| </div> |
| <div class="col-first odd-row-color"><code>protected final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Deque.html" title="class or interface in java.util" class="external-link">Deque</a><<a href="SqlValidatorImpl.FunctionParamInfo.html" title="class in org.apache.calcite.sql.validate">SqlValidatorImpl.FunctionParamInfo</a>></code></div> |
| <div class="col-second odd-row-color"><code><a href="#functionCallStack" class="member-name-link">functionCallStack</a></code></div> |
| <div class="col-last odd-row-color"> |
| <div class="block">Stack of objects that maintain information about function calls.</div> |
| </div> |
| <div class="col-first even-row-color"><code>protected final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr><a href="SqlValidatorImpl.IdInfo.html" title="class in org.apache.calcite.sql.validate">SqlValidatorImpl.IdInfo</a>></code></div> |
| <div class="col-second even-row-color"><code><a href="#idPositions" class="member-name-link">idPositions</a></code></div> |
| <div class="col-last even-row-color"> |
| <div class="block">Maps <a href="../parser/SqlParserPos.html" title="class in org.apache.calcite.sql.parser"><code>SqlParserPos</code></a> strings to the <a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql"><code>SqlIdentifier</code></a> identifier |
| objects at these positions.</div> |
| </div> |
| <div class="col-first odd-row-color"><code>protected final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/IdentityHashMap.html" title="class or interface in java.util" class="external-link">IdentityHashMap</a><<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>,<wbr><a href="SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorNamespace</a>></code></div> |
| <div class="col-second odd-row-color"><code><a href="#namespaces" class="member-name-link">namespaces</a></code></div> |
| <div class="col-last odd-row-color"> |
| <div class="block">Maps a <a href="../SqlNode.html" title="class in org.apache.calcite.sql"><code>node</code></a> to the |
| <a href="SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate"><code>namespace</code></a> which describes what columns they |
| contain.</div> |
| </div> |
| <div class="col-first even-row-color"><code>protected final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/IdentityHashMap.html" title="class or interface in java.util" class="external-link">IdentityHashMap</a><<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>,<wbr><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>></code></div> |
| <div class="col-second even-row-color"><code><a href="#scopes" class="member-name-link">scopes</a></code></div> |
| <div class="col-last even-row-color"> |
| <div class="block">Maps <a href="../SqlNode.html" title="class in org.apache.calcite.sql"><code>query node</code></a> objects to the <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate"><code>SqlValidatorScope</code></a> |
| scope created from them.</div> |
| </div> |
| <div class="col-first odd-row-color"><code>protected final <a href="../../rel/type/TimeFrameSet.html" title="class in org.apache.calcite.rel.type">TimeFrameSet</a></code></div> |
| <div class="col-second odd-row-color"><code><a href="#timeFrameSet" class="member-name-link">timeFrameSet</a></code></div> |
| <div class="col-last odd-row-color"> </div> |
| <div class="col-first even-row-color"><code>static final org.slf4j.Logger</code></div> |
| <div class="col-second even-row-color"><code><a href="#TRACER" class="member-name-link">TRACER</a></code></div> |
| <div class="col-last even-row-color"> </div> |
| <div class="col-first odd-row-color"><code>protected final <a href="../../rel/type/RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a></code></div> |
| <div class="col-second odd-row-color"><code><a href="#typeFactory" class="member-name-link">typeFactory</a></code></div> |
| <div class="col-last odd-row-color"> </div> |
| <div class="col-first even-row-color"><code>protected final <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></div> |
| <div class="col-second even-row-color"><code><a href="#unknownType" class="member-name-link">unknownType</a></code></div> |
| <div class="col-last even-row-color"> </div> |
| <div class="col-first odd-row-color"><code>static final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div> |
| <div class="col-second odd-row-color"><code><a href="#UPDATE_ANON_PREFIX" class="member-name-link">UPDATE_ANON_PREFIX</a></code></div> |
| <div class="col-last odd-row-color"> |
| <div class="block">Alias prefix generated for source columns when rewriting UPDATE to MERGE.</div> |
| </div> |
| <div class="col-first even-row-color"><code>static final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div> |
| <div class="col-second even-row-color"><code><a href="#UPDATE_SRC_ALIAS" class="member-name-link">UPDATE_SRC_ALIAS</a></code></div> |
| <div class="col-last even-row-color"> |
| <div class="block">Alias generated for the source table when rewriting UPDATE to MERGE.</div> |
| </div> |
| <div class="col-first odd-row-color"><code>static final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div> |
| <div class="col-second odd-row-color"><code><a href="#UPDATE_TGT_ALIAS" class="member-name-link">UPDATE_TGT_ALIAS</a></code></div> |
| <div class="col-last odd-row-color"> |
| <div class="block">Alias generated for the target table when rewriting UPDATE to MERGE if no |
| alias was specified by the user.</div> |
| </div> |
| </div> |
| </section> |
| </li> |
| <!-- ======== CONSTRUCTOR SUMMARY ======== --> |
| <li> |
| <section class="constructor-summary" id="constructor-summary"> |
| <h2>Constructor Summary</h2> |
| <div class="caption"><span>Constructors</span></div> |
| <div class="summary-table three-column-summary"> |
| <div class="table-header col-first">Modifier</div> |
| <div class="table-header col-second">Constructor</div> |
| <div class="table-header col-last">Description</div> |
| <div class="col-first even-row-color"><code>protected </code></div> |
| <div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(org.apache.calcite.sql.SqlOperatorTable,org.apache.calcite.sql.validate.SqlValidatorCatalogReader,org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.sql.validate.SqlValidator.Config)" class="member-name-link">SqlValidatorImpl</a><wbr>(<a href="../SqlOperatorTable.html" title="interface in org.apache.calcite.sql">SqlOperatorTable</a> opTab, |
| <a href="SqlValidatorCatalogReader.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorCatalogReader</a> catalogReader, |
| <a href="../../rel/type/RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a> typeFactory, |
| <a href="SqlValidator.Config.html" title="interface in org.apache.calcite.sql.validate">SqlValidator.Config</a> config)</code></div> |
| <div class="col-last even-row-color"> |
| <div class="block">Creates a validator.</div> |
| </div> |
| </div> |
| </section> |
| </li> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <li> |
| <section class="method-summary" id="method-summary"> |
| <h2>Method Summary</h2> |
| <div id="method-summary-table"> |
| <div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button><button id="method-summary-table-tab6" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab6', 3)" class="table-tab">Deprecated Methods</button></div> |
| <div id="method-summary-table.tabpanel" role="tabpanel"> |
| <div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0"> |
| <div class="table-header col-first">Modifier and Type</div> |
| <div class="table-header col-second">Method</div> |
| <div class="table-header col-last">Description</div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addToSelectList(java.util.List,java.util.Set,java.util.List,org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SelectScope,boolean)" class="member-name-link">addToSelectList</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>> list, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>> aliases, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.Entry.html" title="class or interface in java.util" class="external-link">Map.Entry</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>>> fieldList, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> exp, |
| <a href="SelectScope.html" title="class in org.apache.calcite.sql.validate">SelectScope</a> scope, |
| boolean includeSystemVars)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Adds an expression to a select list, ensuring that its alias does not |
| clash with any existing expressions on the list.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#checkTypeAssignment(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.validate.SqlValidatorTable,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlNode)" class="member-name-link">checkTypeAssignment</a><wbr>(@Nullable <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> sourceScope, |
| <a href="SqlValidatorTable.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorTable</a> table, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> sourceRowType, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> query)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Checks the type assignment of an INSERT or UPDATE query.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SqlValidator.Config.html" title="interface in org.apache.calcite.sql.validate">SqlValidator.Config</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#config()" class="member-name-link">config</a>()</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the config of the validator.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="MatchRecognizeNamespace.html" title="class in org.apache.calcite.sql.validate">MatchRecognizeNamespace</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createMatchRecognizeNameSpace(org.apache.calcite.sql.SqlMatchRecognize,org.apache.calcite.sql.SqlNode)" class="member-name-link">createMatchRecognizeNameSpace</a><wbr>(<a href="../SqlMatchRecognize.html" title="class in org.apache.calcite.sql">SqlMatchRecognize</a> call, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> enclosingNode)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="PivotNamespace.html" title="class in org.apache.calcite.sql.validate">PivotNamespace</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createPivotNameSpace(org.apache.calcite.sql.SqlPivot,org.apache.calcite.sql.SqlNode)" class="member-name-link">createPivotNameSpace</a><wbr>(<a href="../SqlPivot.html" title="class in org.apache.calcite.sql">SqlPivot</a> call, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> enclosingNode)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="SelectNamespace.html" title="class in org.apache.calcite.sql.validate">SelectNamespace</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createSelectNamespace(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.SqlNode)" class="member-name-link">createSelectNamespace</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> enclosingNode)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Creates a namespace for a <code>SELECT</code> node.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="SetopNamespace.html" title="class in org.apache.calcite.sql.validate">SetopNamespace</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createSetopNamespace(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlNode)" class="member-name-link">createSetopNamespace</a><wbr>(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> enclosingNode)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Creates a namespace for a set operation (<code>UNION</code>, <code> |
| INTERSECT</code>, or <code>EXCEPT</code>).</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createSourceSelectForDelete(org.apache.calcite.sql.SqlDelete)" class="member-name-link">createSourceSelectForDelete</a><wbr>(<a href="../SqlDelete.html" title="class in org.apache.calcite.sql">SqlDelete</a> call)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Creates the SELECT statement that putatively feeds rows into a DELETE |
| statement to be deleted.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createSourceSelectForUpdate(org.apache.calcite.sql.SqlUpdate)" class="member-name-link">createSourceSelectForUpdate</a><wbr>(<a href="../SqlUpdate.html" title="class in org.apache.calcite.sql">SqlUpdate</a> call)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Creates the SELECT statement that putatively feeds rows into an UPDATE |
| statement to be updated.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createTargetRowType(org.apache.calcite.sql.validate.SqlValidatorTable,org.apache.calcite.sql.SqlNodeList,boolean)" class="member-name-link">createTargetRowType</a><wbr>(<a href="SqlValidatorTable.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorTable</a> table, |
| @Nullable <a href="../SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a> targetColumnList, |
| boolean append)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Derives a row-type for INSERT and UPDATE operations.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="UnpivotNamespace.html" title="class in org.apache.calcite.sql.validate">UnpivotNamespace</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createUnpivotNameSpace(org.apache.calcite.sql.SqlUnpivot,org.apache.calcite.sql.SqlNode)" class="member-name-link">createUnpivotNameSpace</a><wbr>(<a href="../SqlUnpivot.html" title="class in org.apache.calcite.sql">SqlUnpivot</a> call, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> enclosingNode)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#declareCursor(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.validate.SqlValidatorScope)" class="member-name-link">declareCursor</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> parentScope)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Declares a SELECT expression as a cursor.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#deriveAlias(org.apache.calcite.sql.SqlNode,int)" class="member-name-link">deriveAlias</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node, |
| int ordinal)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Derives an alias for an expression.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#deriveConstructorType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlFunction,org.apache.calcite.sql.SqlFunction,java.util.List)" class="member-name-link">deriveConstructorType</a><wbr>(<a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call, |
| <a href="../SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a> unresolvedConstructor, |
| @Nullable <a href="../SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a> resolvedConstructor, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>> argTypes)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Derives the type of a constructor.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#deriveType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode)" class="member-name-link">deriveType</a><wbr>(<a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expr)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Derives the type of a node in a given scope.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#expand(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope)" class="member-name-link">expand</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expr, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Expands an expression.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#expandOrderExpr(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.SqlNode)" class="member-name-link">expandOrderExpr</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> orderExpr)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Expands an expression in the ORDER BY clause into an expression with the |
| same semantics as expressions in the SELECT clause.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#expandSelectExpr(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SelectScope,org.apache.calcite.sql.SqlSelect)" class="member-name-link">expandSelectExpr</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expr, |
| <a href="SelectScope.html" title="class in org.apache.calcite.sql.validate">SelectScope</a> scope, |
| <a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#expandStar(org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlSelect,boolean)" class="member-name-link">expandStar</a><wbr>(<a href="../SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a> selectList, |
| <a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select, |
| boolean includeSystemVars)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns a list of expressions, with every occurrence of "*" or |
| "TABLE.*" expanded.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#extendedExpandGroupBy(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlSelect)" class="member-name-link">extendedExpandGroupBy</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expr, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected @Nullable <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAggregate(org.apache.calcite.sql.SqlSelect)" class="member-name-link">getAggregate</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the parse tree node (GROUP BY, HAVING, or an aggregate function |
| call) that causes <code>select</code> to be an aggregate query, or null if it |
| is not an aggregate query.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SqlValidatorCatalogReader.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorCatalogReader</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCatalogReader()" class="member-name-link">getCatalogReader</a>()</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the catalog reader used by this validator.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SqlConformance.html" title="interface in org.apache.calcite.sql.validate">SqlConformance</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getConformance()" class="member-name-link">getConformance</a>()</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCursorScope(org.apache.calcite.sql.SqlSelect)" class="member-name-link">getCursorScope</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getEmptyScope()" class="member-name-link">getEmptyScope</a>()</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><@Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>>></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getFieldOrigins(org.apache.calcite.sql.SqlNode)" class="member-name-link">getFieldOrigins</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> sqlQuery)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns a description of how each field in the row type maps to a |
| catalog, schema, table and column in the schema.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@Nullable <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getFromScope(org.apache.calcite.sql.SqlSelect)" class="member-name-link">getFromScope</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns a scope containing the objects visible from the FROM clause of a |
| query.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getGroupScope(org.apache.calcite.sql.SqlSelect)" class="member-name-link">getGroupScope</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns a scope containing the objects visible from the GROUP BY clause |
| of a query.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getHavingScope(org.apache.calcite.sql.SqlSelect)" class="member-name-link">getHavingScope</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns a scope containing the objects visible from the HAVING clause of |
| a query.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@Nullable <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getJoinScope(org.apache.calcite.sql.SqlNode)" class="member-name-link">getJoinScope</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns a scope containing the objects visible from the ON and USING |
| sections of a JOIN clause.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getLogicalSourceRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)" class="member-name-link">getLogicalSourceRowType</a><wbr>(<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> sourceRowType, |
| <a href="../SqlInsert.html" title="class in org.apache.calcite.sql">SqlInsert</a> insert)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getLogicalTargetRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)" class="member-name-link">getLogicalTargetRowType</a><wbr>(<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType, |
| <a href="../SqlInsert.html" title="class in org.apache.calcite.sql">SqlInsert</a> insert)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMatchRecognizeScope(org.apache.calcite.sql.SqlMatchRecognize)" class="member-name-link">getMatchRecognizeScope</a><wbr>(<a href="../SqlMatchRecognize.html" title="class in org.apache.calcite.sql">SqlMatchRecognize</a> node)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns a scope match recognize clause.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@Nullable <a href="SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorNamespace</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getNamespace(org.apache.calcite.sql.SqlNode)" class="member-name-link">getNamespace</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Finds the namespace corresponding to a given node.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../SqlOperatorTable.html" title="interface in org.apache.calcite.sql">SqlOperatorTable</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getOperatorTable()" class="member-name-link">getOperatorTable</a>()</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the operator table used by this validator.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getOrderScope(org.apache.calcite.sql.SqlSelect)" class="member-name-link">getOrderScope</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the scope that expressions in the SELECT and HAVING clause of |
| this query should use.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getOriginal(org.apache.calcite.sql.SqlNode)" class="member-name-link">getOriginal</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expr)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getOverScope(org.apache.calcite.sql.SqlNode)" class="member-name-link">getOverScope</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the scope of an OVER or VALUES node.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getParameterRowType(org.apache.calcite.sql.SqlNode)" class="member-name-link">getParameterRowType</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> sqlQuery)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns a record type that contains the name and type of each parameter.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getParentCursor(java.lang.String)" class="member-name-link">getParentCursor</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> columnListParamName)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Retrieves the name of the parent cursor referenced by a column list |
| parameter.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@Nullable <a href="SelectScope.html" title="class in org.apache.calcite.sql.validate">SelectScope</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRawSelectScope(org.apache.calcite.sql.SqlSelect)" class="member-name-link">getRawSelectScope</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the scope for resolving the SELECT, GROUP BY and HAVING clauses.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSelectScope(org.apache.calcite.sql.SqlSelect)" class="member-name-link">getSelectScope</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the appropriate scope for validating a particular clause of a |
| SELECT statement.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected @Nullable <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSelfJoinExprForUpdate(org.apache.calcite.sql.SqlNode,java.lang.String)" class="member-name-link">getSelfJoinExprForUpdate</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> table, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> alias)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Allows a subclass to provide information about how to convert an UPDATE |
| into a MERGE via self-join.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../../rel/type/TimeFrameSet.html" title="class in org.apache.calcite.rel.type">TimeFrameSet</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getTimeFrameSet()" class="member-name-link">getTimeFrameSet</a>()</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the set of allowed time frames.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="implicit/TypeCoercion.html" title="interface in org.apache.calcite.sql.validate.implicit">TypeCoercion</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getTypeCoercion()" class="member-name-link">getTypeCoercion</a>()</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Get the type coercion instance.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../../rel/type/RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getTypeFactory()" class="member-name-link">getTypeFactory</a>()</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the type factory used by this validator.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getUnknownType()" class="member-name-link">getUnknownType</a>()</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns an object representing the "unknown" type.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getValidatedNodeType(org.apache.calcite.sql.SqlNode)" class="member-name-link">getValidatedNodeType</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the type assigned to a node by validation.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@Nullable <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getValidatedNodeTypeIfKnown(org.apache.calcite.sql.SqlNode)" class="member-name-link">getValidatedNodeTypeIfKnown</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the type assigned to a node by validation, or null if unknown.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getValidatedOperandTypes(org.apache.calcite.sql.SqlCall)" class="member-name-link">getValidatedOperandTypes</a><wbr>(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the types of a call's operands.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>org.apache.calcite.sql.validate.SqlValidatorImpl.ValidationErrorFunction</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getValidationErrorFunction()" class="member-name-link">getValidationErrorFunction</a>()</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getWhereScope(org.apache.calcite.sql.SqlSelect)" class="member-name-link">getWhereScope</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the scope that expressions in the WHERE and GROUP BY clause of |
| this query should use.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="../SqlWindow.html" title="class in org.apache.calcite.sql">SqlWindow</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getWindowByName(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.validate.SqlValidatorScope)" class="member-name-link">getWindowByName</a><wbr>(<a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a> id, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@Nullable <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getWithScope(org.apache.calcite.sql.SqlNode)" class="member-name-link">getWithScope</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> withItem)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../../runtime/CalciteException.html" title="class in org.apache.calcite.runtime">CalciteException</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#handleUnresolvedFunction(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlOperator,java.util.List,java.util.List)" class="member-name-link">handleUnresolvedFunction</a><wbr>(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call, |
| <a href="../SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a> unresolvedFunction, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>> argTypes, |
| @Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>> argNames)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Handles a call to a function which cannot be resolved.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#inferUnknownTypes(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode)" class="member-name-link">inferUnknownTypes</a><wbr>(<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> inferredType, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code>boolean</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"><code><a href="#isAggregate(org.apache.calcite.sql.SqlNode)" class="member-name-link">isAggregate</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> selectNode)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4 method-summary-table-tab6"> |
| <div class="block"><span class="deprecated-label">Deprecated.</span></div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isAggregate(org.apache.calcite.sql.SqlSelect)" class="member-name-link">isAggregate</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns whether a SELECT statement is an aggregation.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected boolean</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isNestedAggregateWindow(org.apache.calcite.sql.SqlNode)" class="member-name-link">isNestedAggregateWindow</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected boolean</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isOverAggregateWindow(org.apache.calcite.sql.SqlNode)" class="member-name-link">isOverAggregateWindow</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isSystemField(org.apache.calcite.rel.type.RelDataTypeField)" class="member-name-link">isSystemField</a><wbr>(<a href="../../rel/type/RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a> field)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns whether a field is a system field.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="SqlMoniker.html" title="interface in org.apache.calcite.sql.validate">SqlMoniker</a>></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#lookupHints(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.parser.SqlParserPos)" class="member-name-link">lookupHints</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> topNode, |
| <a href="../parser/SqlParserPos.html" title="class in org.apache.calcite.sql.parser">SqlParserPos</a> pos)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Looks up completion hints for a syntactically correct SQL statement that |
| has been parsed into an expression tree.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#lookupNameCompletionHints(org.apache.calcite.sql.validate.SqlValidatorScope,java.util.List,org.apache.calcite.sql.parser.SqlParserPos,java.util.Collection)" class="member-name-link">lookupNameCompletionHints</a><wbr>(<a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>> names, |
| <a href="../parser/SqlParserPos.html" title="class in org.apache.calcite.sql.parser">SqlParserPos</a> pos, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Collection.html" title="class or interface in java.util" class="external-link">Collection</a><<a href="SqlMoniker.html" title="interface in org.apache.calcite.sql.validate">SqlMoniker</a>> hintList)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Populates a list of all the valid alternatives for an identifier.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@Nullable <a href="SqlMoniker.html" title="interface in org.apache.calcite.sql.validate">SqlMoniker</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#lookupQualifiedName(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.parser.SqlParserPos)" class="member-name-link">lookupQualifiedName</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> topNode, |
| <a href="../parser/SqlParserPos.html" title="class in org.apache.calcite.sql.parser">SqlParserPos</a> pos)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Looks up the fully qualified name for a <a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql"><code>SqlIdentifier</code></a> at a given |
| Parser Position in a parsed expression tree Note: call this only after |
| <a href="SqlValidator.html#validate(org.apache.calcite.sql.SqlNode)"><code>SqlValidator.validate(org.apache.calcite.sql.SqlNode)</code></a> has been called.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@Nullable <a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#makeNullaryCall(org.apache.calcite.sql.SqlIdentifier)" class="member-name-link">makeNullaryCall</a><wbr>(<a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a> id)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">If an identifier is a legitimate call to a function that has no |
| arguments and requires no parentheses (for example "CURRENT_USER"), |
| returns a call to that function, otherwise returns null.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../../runtime/CalciteContextException.html" title="class in org.apache.calcite.runtime">CalciteContextException</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#newValidationError(org.apache.calcite.sql.SqlNode,org.apache.calcite.runtime.Resources.ExInst)" class="member-name-link">newValidationError</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node, |
| org.apache.calcite.runtime.Resources.ExInst<<a href="SqlValidatorException.html" title="class in org.apache.calcite.sql.validate">SqlValidatorException</a>> e)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Adds "line x, column y" context to a validator exception.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected @PolyNull <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#performUnconditionalRewrites(org.apache.calcite.sql.SqlNode,boolean)" class="member-name-link">performUnconditionalRewrites</a><wbr>(@PolyNull <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node, |
| boolean underFrom)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Performs expression rewrites which are always used unconditionally.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#popFunctionCall()" class="member-name-link">popFunctionCall</a>()</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Removes the topmost entry from the function call stack.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#pushFunctionCall()" class="member-name-link">pushFunctionCall</a>()</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Pushes a new instance of a function call on to a function call stack.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#registerNamespace(org.apache.calcite.sql.validate.SqlValidatorScope,java.lang.String,org.apache.calcite.sql.validate.SqlValidatorNamespace,boolean)" class="member-name-link">registerNamespace</a><wbr>(@Nullable <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> usingScope, |
| @Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> alias, |
| <a href="SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorNamespace</a> ns, |
| boolean forceNullable)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Registers a new namespace, and adds it as a child of its parent scope.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#removeValidatedNodeType(org.apache.calcite.sql.SqlNode)" class="member-name-link">removeValidatedNodeType</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Removes a node from the set of validated nodes.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../SqlLiteral.html" title="class in org.apache.calcite.sql">SqlLiteral</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#resolveLiteral(org.apache.calcite.sql.SqlLiteral)" class="member-name-link">resolveLiteral</a><wbr>(<a href="../SqlLiteral.html" title="class in org.apache.calcite.sql">SqlLiteral</a> literal)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Resolves a literal.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../SqlWindow.html" title="class in org.apache.calcite.sql">SqlWindow</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#resolveWindow(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope)" class="member-name-link">resolveWindow</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> windowOrRef, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Converts a window specification or window name into a fully-resolved |
| window specification.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setOriginal(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.SqlNode)" class="member-name-link">setOriginal</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expr, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> original)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>final void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setValidatedNodeType(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)" class="member-name-link">setValidatedNodeType</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> type)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Saves the type of a <a href="../SqlNode.html" title="class in org.apache.calcite.sql"><code>SqlNode</code></a>, now that it has been validated.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected boolean</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#shouldAllowIntermediateOrderBy()" class="member-name-link">shouldAllowIntermediateOrderBy</a>()</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected boolean</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#shouldAllowOverRelation()" class="member-name-link">shouldAllowOverRelation</a>()</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#transform(java.util.function.UnaryOperator)" class="member-name-link">transform</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/UnaryOperator.html" title="class or interface in java.util.function" class="external-link">UnaryOperator</a><<a href="SqlValidator.Config.html" title="interface in org.apache.calcite.sql.validate">SqlValidator.Config</a>> transform)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns this SqlValidator, with the same state, applying |
| a transform to the config.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>@Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#usingNames(org.apache.calcite.sql.SqlJoin)" class="member-name-link">usingNames</a><wbr>(<a href="../SqlJoin.html" title="class in org.apache.calcite.sql">SqlJoin</a> join)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Returns the set of field names in the join condition specified by USING |
| or implicitly by NATURAL, de-duplicated and in order.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validate(org.apache.calcite.sql.SqlNode)" class="member-name-link">validate</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> topNode)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates an expression tree.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateAggregateParams(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.validate.SqlValidatorScope)" class="member-name-link">validateAggregateParams</a><wbr>(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> aggCall, |
| @Nullable <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> filter, |
| @Nullable <a href="../SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a> distinctList, |
| @Nullable <a href="../SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a> orderList, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates parameters for aggregate function.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateCall(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope)" class="member-name-link">validateCall</a><wbr>(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates a call to an operator.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateColumnListParams(org.apache.calcite.sql.SqlFunction,java.util.List,java.util.List)" class="member-name-link">validateColumnListParams</a><wbr>(<a href="../SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a> function, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>> argTypes, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>> operands)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates a COLUMN_LIST parameter.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateDataType(org.apache.calcite.sql.SqlDataTypeSpec)" class="member-name-link">validateDataType</a><wbr>(<a href="../SqlDataTypeSpec.html" title="class in org.apache.calcite.sql">SqlDataTypeSpec</a> dataType)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates a data type expression.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateDelete(org.apache.calcite.sql.SqlDelete)" class="member-name-link">validateDelete</a><wbr>(<a href="../SqlDelete.html" title="class in org.apache.calcite.sql">SqlDelete</a> call)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates a DELETE statement.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateDynamicParam(org.apache.calcite.sql.SqlDynamicParam)" class="member-name-link">validateDynamicParam</a><wbr>(<a href="../SqlDynamicParam.html" title="class in org.apache.calcite.sql">SqlDynamicParam</a> dynamicParam)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates a dynamic parameter.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateFeature(org.apache.calcite.runtime.Feature,org.apache.calcite.sql.parser.SqlParserPos)" class="member-name-link">validateFeature</a><wbr>(<a href="../../runtime/Feature.html" title="class in org.apache.calcite.runtime">Feature</a> feature, |
| <a href="../parser/SqlParserPos.html" title="class in org.apache.calcite.sql.parser">SqlParserPos</a> context)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates that a particular feature is enabled.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateFrom(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope)" class="member-name-link">validateFrom</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates the FROM clause of a query, or (recursively) a child node of |
| the FROM clause: AS, OVER, JOIN, VALUES, or sub-query.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateGroupClause(org.apache.calcite.sql.SqlSelect)" class="member-name-link">validateGroupClause</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates the GROUP BY clause of a SELECT statement.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateHavingClause(org.apache.calcite.sql.SqlSelect)" class="member-name-link">validateHavingClause</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateIdentifier(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.validate.SqlValidatorScope)" class="member-name-link">validateIdentifier</a><wbr>(<a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a> id, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Resolves an identifier to a fully-qualified name.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateInsert(org.apache.calcite.sql.SqlInsert)" class="member-name-link">validateInsert</a><wbr>(<a href="../SqlInsert.html" title="class in org.apache.calcite.sql">SqlInsert</a> insert)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates an INSERT statement.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateIntervalQualifier(org.apache.calcite.sql.SqlIntervalQualifier)" class="member-name-link">validateIntervalQualifier</a><wbr>(<a href="../SqlIntervalQualifier.html" title="class in org.apache.calcite.sql">SqlIntervalQualifier</a> qualifier)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates a <a href="../SqlIntervalQualifier.html" title="class in org.apache.calcite.sql"><code>SqlIntervalQualifier</code></a>.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateJoin(org.apache.calcite.sql.SqlJoin,org.apache.calcite.sql.validate.SqlValidatorScope)" class="member-name-link">validateJoin</a><wbr>(<a href="../SqlJoin.html" title="class in org.apache.calcite.sql">SqlJoin</a> join, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateLiteral(org.apache.calcite.sql.SqlLiteral)" class="member-name-link">validateLiteral</a><wbr>(<a href="../SqlLiteral.html" title="class in org.apache.calcite.sql">SqlLiteral</a> literal)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates a literal.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateMatchRecognize(org.apache.calcite.sql.SqlCall)" class="member-name-link">validateMatchRecognize</a><wbr>(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates a MATCH_RECOGNIZE clause.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateMerge(org.apache.calcite.sql.SqlMerge)" class="member-name-link">validateMerge</a><wbr>(<a href="../SqlMerge.html" title="class in org.apache.calcite.sql">SqlMerge</a> call)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates a MERGE statement.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateModality(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.validate.SqlModality,boolean)" class="member-name-link">validateModality</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select, |
| <a href="SqlModality.html" title="enum in org.apache.calcite.sql.validate">SqlModality</a> modality, |
| boolean fail)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates that a query is capable of producing a return of given modality |
| (relational or streaming).</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateNamespace(org.apache.calcite.sql.validate.SqlValidatorNamespace,org.apache.calcite.rel.type.RelDataType)" class="member-name-link">validateNamespace</a><wbr>(<a href="SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorNamespace</a> namespace, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates a namespace.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateOrderList(org.apache.calcite.sql.SqlSelect)" class="member-name-link">validateOrderList</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates the ORDER BY clause of a SELECT statement.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateOver(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope)" class="member-name-link">validateOver</a><wbr>(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateParameterizedExpression(org.apache.calcite.sql.SqlNode,java.util.Map)" class="member-name-link">validateParameterizedExpression</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> topNode, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>> nameToTypeMap)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates an expression tree.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validatePivot(org.apache.calcite.sql.SqlPivot)" class="member-name-link">validatePivot</a><wbr>(<a href="../SqlPivot.html" title="class in org.apache.calcite.sql">SqlPivot</a> pivot)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateQualifyClause(org.apache.calcite.sql.SqlSelect)" class="member-name-link">validateQualifyClause</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateQuery(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.rel.type.RelDataType)" class="member-name-link">validateQuery</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node, |
| @Nullable <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Checks that a query is valid.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateSelect(org.apache.calcite.sql.SqlSelect,org.apache.calcite.rel.type.RelDataType)" class="member-name-link">validateSelect</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates a SELECT statement.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateSelectList(org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlSelect,org.apache.calcite.rel.type.RelDataType)" class="member-name-link">validateSelectList</a><wbr>(<a href="../SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a> selectItems, |
| <a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateSequenceValue(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlIdentifier)" class="member-name-link">validateSequenceValue</a><wbr>(<a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a> id)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateTableFunction(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.rel.type.RelDataType)" class="member-name-link">validateTableFunction</a><wbr>(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> node, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../../rel/type/TimeFrame.html" title="interface in org.apache.calcite.rel.type">TimeFrame</a></code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateTimeFrame(org.apache.calcite.sql.SqlIntervalQualifier)" class="member-name-link">validateTimeFrame</a><wbr>(<a href="../SqlIntervalQualifier.html" title="class in org.apache.calcite.sql">SqlIntervalQualifier</a> qualifier)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates a time frame.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateUnnest(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.rel.type.RelDataType)" class="member-name-link">validateUnnest</a><wbr>(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateUnpivot(org.apache.calcite.sql.SqlUnpivot)" class="member-name-link">validateUnpivot</a><wbr>(<a href="../SqlUnpivot.html" title="class in org.apache.calcite.sql">SqlUnpivot</a> unpivot)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateUpdate(org.apache.calcite.sql.SqlUpdate)" class="member-name-link">validateUpdate</a><wbr>(<a href="../SqlUpdate.html" title="class in org.apache.calcite.sql">SqlUpdate</a> call)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates an UPDATE statement.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateValues(org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope)" class="member-name-link">validateValues</a><wbr>(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> node, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates a VALUES clause.</div> |
| </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateWhereClause(org.apache.calcite.sql.SqlSelect)" class="member-name-link">validateWhereClause</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateWhereOrOn(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode,java.lang.String)" class="member-name-link">validateWhereOrOn</a><wbr>(<a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> condition, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> clause)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateWindow(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)" class="member-name-link">validateWindow</a><wbr>(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> windowOrId, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| @Nullable <a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> |
| <div class="block">Validates the right-hand side of an OVER expression.</div> |
| </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateWindowClause(org.apache.calcite.sql.SqlSelect)" class="member-name-link">validateWindowClause</a><wbr>(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateWith(org.apache.calcite.sql.SqlWith,org.apache.calcite.sql.validate.SqlValidatorScope)" class="member-name-link">validateWith</a><wbr>(<a href="../SqlWith.html" title="class in org.apache.calcite.sql">SqlWith</a> with, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</code></div> |
| <div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| <div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div> |
| <div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#validateWithItem(org.apache.calcite.sql.SqlWithItem)" class="member-name-link">validateWithItem</a><wbr>(<a href="../SqlWithItem.html" title="class in org.apache.calcite.sql">SqlWithItem</a> withItem)</code></div> |
| <div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div> |
| </div> |
| </div> |
| </div> |
| <div class="inherited-list"> |
| <h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3> |
| <code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div> |
| <div class="inherited-list"> |
| <h3 id="methods-inherited-from-class-org.apache.calcite.sql.validate.SqlValidator">Methods inherited from interface org.apache.calcite.sql.validate.<a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></h3> |
| <code><a href="SqlValidator.html#resolveWindow(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,boolean)">resolveWindow</a></code></div> |
| </section> |
| </li> |
| </ul> |
| </section> |
| <section class="details"> |
| <ul class="details-list"> |
| <!-- ============ FIELD DETAIL =========== --> |
| <li> |
| <section class="field-details" id="field-detail"> |
| <h2>Field Details</h2> |
| <ul class="member-list"> |
| <li> |
| <section class="detail" id="TRACER"> |
| <h3>TRACER</h3> |
| <div class="member-signature"><span class="modifiers">public static final</span> <span class="return-type">org.slf4j.Logger</span> <span class="element-name">TRACER</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="UPDATE_SRC_ALIAS"> |
| <h3>UPDATE_SRC_ALIAS</h3> |
| <div class="member-signature"><span class="modifiers">public static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name">UPDATE_SRC_ALIAS</span></div> |
| <div class="block">Alias generated for the source table when rewriting UPDATE to MERGE.</div> |
| <dl class="notes"> |
| <dt>See Also:</dt> |
| <dd> |
| <ul class="see-list"> |
| <li><a href="../../../../../constant-values.html#org.apache.calcite.sql.validate.SqlValidatorImpl.UPDATE_SRC_ALIAS">Constant Field Values</a></li> |
| </ul> |
| </dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="UPDATE_TGT_ALIAS"> |
| <h3>UPDATE_TGT_ALIAS</h3> |
| <div class="member-signature"><span class="modifiers">public static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name">UPDATE_TGT_ALIAS</span></div> |
| <div class="block">Alias generated for the target table when rewriting UPDATE to MERGE if no |
| alias was specified by the user.</div> |
| <dl class="notes"> |
| <dt>See Also:</dt> |
| <dd> |
| <ul class="see-list"> |
| <li><a href="../../../../../constant-values.html#org.apache.calcite.sql.validate.SqlValidatorImpl.UPDATE_TGT_ALIAS">Constant Field Values</a></li> |
| </ul> |
| </dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="UPDATE_ANON_PREFIX"> |
| <h3>UPDATE_ANON_PREFIX</h3> |
| <div class="member-signature"><span class="modifiers">public static final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name">UPDATE_ANON_PREFIX</span></div> |
| <div class="block">Alias prefix generated for source columns when rewriting UPDATE to MERGE.</div> |
| <dl class="notes"> |
| <dt>See Also:</dt> |
| <dd> |
| <ul class="see-list"> |
| <li><a href="../../../../../constant-values.html#org.apache.calcite.sql.validate.SqlValidatorImpl.UPDATE_ANON_PREFIX">Constant Field Values</a></li> |
| </ul> |
| </dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="idPositions"> |
| <h3>idPositions</h3> |
| <div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr><a href="SqlValidatorImpl.IdInfo.html" title="class in org.apache.calcite.sql.validate">SqlValidatorImpl.IdInfo</a>></span> <span class="element-name">idPositions</span></div> |
| <div class="block">Maps <a href="../parser/SqlParserPos.html" title="class in org.apache.calcite.sql.parser"><code>SqlParserPos</code></a> strings to the <a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql"><code>SqlIdentifier</code></a> identifier |
| objects at these positions.</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="scopes"> |
| <h3>scopes</h3> |
| <div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/IdentityHashMap.html" title="class or interface in java.util" class="external-link">IdentityHashMap</a><<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>,<wbr><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>></span> <span class="element-name">scopes</span></div> |
| <div class="block">Maps <a href="../SqlNode.html" title="class in org.apache.calcite.sql"><code>query node</code></a> objects to the <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate"><code>SqlValidatorScope</code></a> |
| scope created from them.</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="namespaces"> |
| <h3>namespaces</h3> |
| <div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/IdentityHashMap.html" title="class or interface in java.util" class="external-link">IdentityHashMap</a><<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>,<wbr><a href="SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorNamespace</a>></span> <span class="element-name">namespaces</span></div> |
| <div class="block">Maps a <a href="../SqlNode.html" title="class in org.apache.calcite.sql"><code>node</code></a> to the |
| <a href="SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate"><code>namespace</code></a> which describes what columns they |
| contain.</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="functionCallStack"> |
| <h3>functionCallStack</h3> |
| <div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Deque.html" title="class or interface in java.util" class="external-link">Deque</a><<a href="SqlValidatorImpl.FunctionParamInfo.html" title="class in org.apache.calcite.sql.validate">SqlValidatorImpl.FunctionParamInfo</a>></span> <span class="element-name">functionCallStack</span></div> |
| <div class="block">Stack of objects that maintain information about function calls. A stack |
| is needed to handle nested function calls. The function call currently |
| being validated is at the top of the stack.</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="typeFactory"> |
| <h3>typeFactory</h3> |
| <div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type"><a href="../../rel/type/RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a></span> <span class="element-name">typeFactory</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="unknownType"> |
| <h3>unknownType</h3> |
| <div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="element-name">unknownType</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="timeFrameSet"> |
| <h3>timeFrameSet</h3> |
| <div class="member-signature"><span class="modifiers">protected final</span> <span class="return-type"><a href="../../rel/type/TimeFrameSet.html" title="class in org.apache.calcite.rel.type">TimeFrameSet</a></span> <span class="element-name">timeFrameSet</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="callToOperandTypesMap"> |
| <h3>callToOperandTypesMap</h3> |
| <div class="member-signature"><span class="modifiers">public final</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/IdentityHashMap.html" title="class or interface in java.util" class="external-link">IdentityHashMap</a><<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>>></span> <span class="element-name">callToOperandTypesMap</span></div> |
| <div class="block">Provides the data for <a href="#getValidatedOperandTypes(org.apache.calcite.sql.SqlCall)"><code>getValidatedOperandTypes(SqlCall)</code></a>.</div> |
| </section> |
| </li> |
| </ul> |
| </section> |
| </li> |
| <!-- ========= CONSTRUCTOR DETAIL ======== --> |
| <li> |
| <section class="constructor-details" id="constructor-detail"> |
| <h2>Constructor Details</h2> |
| <ul class="member-list"> |
| <li> |
| <section class="detail" id="<init>(org.apache.calcite.sql.SqlOperatorTable,org.apache.calcite.sql.validate.SqlValidatorCatalogReader,org.apache.calcite.rel.type.RelDataTypeFactory,org.apache.calcite.sql.validate.SqlValidator.Config)"> |
| <h3>SqlValidatorImpl</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="element-name">SqlValidatorImpl</span><wbr><span class="parameters">(<a href="../SqlOperatorTable.html" title="interface in org.apache.calcite.sql">SqlOperatorTable</a> opTab, |
| <a href="SqlValidatorCatalogReader.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorCatalogReader</a> catalogReader, |
| <a href="../../rel/type/RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a> typeFactory, |
| <a href="SqlValidator.Config.html" title="interface in org.apache.calcite.sql.validate">SqlValidator.Config</a> config)</span></div> |
| <div class="block">Creates a validator.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>opTab</code> - Operator table</dd> |
| <dd><code>catalogReader</code> - Catalog reader</dd> |
| <dd><code>typeFactory</code> - Type factory</dd> |
| <dd><code>config</code> - Config</dd> |
| </dl> |
| </section> |
| </li> |
| </ul> |
| </section> |
| </li> |
| <!-- ============ METHOD DETAIL ========== --> |
| <li> |
| <section class="method-details" id="method-detail"> |
| <h2>Method Details</h2> |
| <ul class="member-list"> |
| <li> |
| <section class="detail" id="getConformance()"> |
| <h3>getConformance</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="SqlConformance.html" title="interface in org.apache.calcite.sql.validate">SqlConformance</a></span> <span class="element-name">getConformance</span>()</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getCatalogReader()"> |
| <h3>getCatalogReader</h3> |
| <div class="member-signature"><span class="annotations">@Pure |
| </span><span class="modifiers">public</span> <span class="return-type"><a href="SqlValidatorCatalogReader.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorCatalogReader</a></span> <span class="element-name">getCatalogReader</span>()</div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getCatalogReader()">SqlValidator</a></code></span></div> |
| <div class="block">Returns the catalog reader used by this validator.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getCatalogReader()">getCatalogReader</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Returns:</dt> |
| <dd>catalog reader</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getOperatorTable()"> |
| <h3>getOperatorTable</h3> |
| <div class="member-signature"><span class="annotations">@Pure |
| </span><span class="modifiers">public</span> <span class="return-type"><a href="../SqlOperatorTable.html" title="interface in org.apache.calcite.sql">SqlOperatorTable</a></span> <span class="element-name">getOperatorTable</span>()</div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getOperatorTable()">SqlValidator</a></code></span></div> |
| <div class="block">Returns the operator table used by this validator.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getOperatorTable()">getOperatorTable</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Returns:</dt> |
| <dd>operator table</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getTypeFactory()"> |
| <h3>getTypeFactory</h3> |
| <div class="member-signature"><span class="annotations">@Pure |
| </span><span class="modifiers">public</span> <span class="return-type"><a href="../../rel/type/RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a></span> <span class="element-name">getTypeFactory</span>()</div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getTypeFactory()">SqlValidator</a></code></span></div> |
| <div class="block">Returns the type factory used by this validator.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getTypeFactory()">getTypeFactory</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Returns:</dt> |
| <dd>type factory</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getUnknownType()"> |
| <h3>getUnknownType</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="element-name">getUnknownType</span>()</div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getUnknownType()">SqlValidator</a></code></span></div> |
| <div class="block">Returns an object representing the "unknown" type.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getUnknownType()">getUnknownType</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Returns:</dt> |
| <dd>unknown type</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getTimeFrameSet()"> |
| <h3>getTimeFrameSet</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../../rel/type/TimeFrameSet.html" title="class in org.apache.calcite.rel.type">TimeFrameSet</a></span> <span class="element-name">getTimeFrameSet</span>()</div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getTimeFrameSet()">SqlValidator</a></code></span></div> |
| <div class="block">Returns the set of allowed time frames.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getTimeFrameSet()">getTimeFrameSet</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="expandStar(org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlSelect,boolean)"> |
| <h3>expandStar</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a></span> <span class="element-name">expandStar</span><wbr><span class="parameters">(<a href="../SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a> selectList, |
| <a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select, |
| boolean includeSystemVars)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#expandStar(org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlSelect,boolean)">SqlValidator</a></code></span></div> |
| <div class="block">Returns a list of expressions, with every occurrence of "*" or |
| "TABLE.*" expanded.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#expandStar(org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlSelect,boolean)">expandStar</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>selectList</code> - Select clause to be expanded</dd> |
| <dd><code>select</code> - Query</dd> |
| <dd><code>includeSystemVars</code> - Whether to include system variables</dd> |
| <dt>Returns:</dt> |
| <dd>expanded select clause</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="declareCursor(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <h3>declareCursor</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">declareCursor</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> parentScope)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#declareCursor(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.validate.SqlValidatorScope)">SqlValidator</a></code></span></div> |
| <div class="block">Declares a SELECT expression as a cursor.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#declareCursor(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.validate.SqlValidatorScope)">declareCursor</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>select</code> - select expression associated with the cursor</dd> |
| <dd><code>parentScope</code> - scope of the parent query associated with the cursor</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="pushFunctionCall()"> |
| <h3>pushFunctionCall</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">pushFunctionCall</span>()</div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#pushFunctionCall()">SqlValidator</a></code></span></div> |
| <div class="block">Pushes a new instance of a function call on to a function call stack.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#pushFunctionCall()">pushFunctionCall</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="popFunctionCall()"> |
| <h3>popFunctionCall</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">popFunctionCall</span>()</div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#popFunctionCall()">SqlValidator</a></code></span></div> |
| <div class="block">Removes the topmost entry from the function call stack.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#popFunctionCall()">popFunctionCall</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getParentCursor(java.lang.String)"> |
| <h3>getParentCursor</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">@Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name">getParentCursor</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> columnListParamName)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getParentCursor(java.lang.String)">SqlValidator</a></code></span></div> |
| <div class="block">Retrieves the name of the parent cursor referenced by a column list |
| parameter.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getParentCursor(java.lang.String)">getParentCursor</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>columnListParamName</code> - name of the column list parameter</dd> |
| <dt>Returns:</dt> |
| <dd>name of the parent cursor</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="usingNames(org.apache.calcite.sql.SqlJoin)"> |
| <h3>usingNames</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">@Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>></span> <span class="element-name">usingNames</span><wbr><span class="parameters">(<a href="../SqlJoin.html" title="class in org.apache.calcite.sql">SqlJoin</a> join)</span></div> |
| <div class="block">Returns the set of field names in the join condition specified by USING |
| or implicitly by NATURAL, de-duplicated and in order.</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validate(org.apache.calcite.sql.SqlNode)"> |
| <h3>validate</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="element-name">validate</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> topNode)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validate(org.apache.calcite.sql.SqlNode)">SqlValidator</a></code></span></div> |
| <div class="block">Validates an expression tree. You can call this method multiple times, |
| but not reentrantly.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validate(org.apache.calcite.sql.SqlNode)">validate</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>topNode</code> - top of expression tree to be validated</dd> |
| <dt>Returns:</dt> |
| <dd>validated tree (possibly rewritten)</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="lookupHints(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.parser.SqlParserPos)"> |
| <h3>lookupHints</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="SqlMoniker.html" title="interface in org.apache.calcite.sql.validate">SqlMoniker</a>></span> <span class="element-name">lookupHints</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> topNode, |
| <a href="../parser/SqlParserPos.html" title="class in org.apache.calcite.sql.parser">SqlParserPos</a> pos)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidatorWithHints.html#lookupHints(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.parser.SqlParserPos)">SqlValidatorWithHints</a></code></span></div> |
| <div class="block">Looks up completion hints for a syntactically correct SQL statement that |
| has been parsed into an expression tree. (Note this should be called |
| after <a href="SqlValidator.html#validate(org.apache.calcite.sql.SqlNode)"><code>SqlValidator.validate(org.apache.calcite.sql.SqlNode)</code></a>.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidatorWithHints.html#lookupHints(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.parser.SqlParserPos)">lookupHints</a></code> in interface <code><a href="SqlValidatorWithHints.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorWithHints</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>topNode</code> - top of expression tree in which to lookup completion hints</dd> |
| <dd><code>pos</code> - indicates the position in the sql statement we want to get |
| completion hints for. For example, "select a.ename, b.deptno |
| from sales.emp a join sales.dept b "on a.deptno=b.deptno |
| where empno=1"; setting pos to 'Line 1, Column 17' returns |
| all the possible column names that can be selected from |
| sales.dept table setting pos to 'Line 1, Column 31' returns |
| all the possible table names in 'sales' schema</dd> |
| <dt>Returns:</dt> |
| <dd>an array of <a href="SqlMoniker.html" title="interface in org.apache.calcite.sql.validate"><code>SqlMoniker</code></a> (sql identifiers) that can fill in |
| at the indicated position</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="lookupQualifiedName(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.parser.SqlParserPos)"> |
| <h3>lookupQualifiedName</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">@Nullable <a href="SqlMoniker.html" title="interface in org.apache.calcite.sql.validate">SqlMoniker</a></span> <span class="element-name">lookupQualifiedName</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> topNode, |
| <a href="../parser/SqlParserPos.html" title="class in org.apache.calcite.sql.parser">SqlParserPos</a> pos)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidatorWithHints.html#lookupQualifiedName(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.parser.SqlParserPos)">SqlValidatorWithHints</a></code></span></div> |
| <div class="block">Looks up the fully qualified name for a <a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql"><code>SqlIdentifier</code></a> at a given |
| Parser Position in a parsed expression tree Note: call this only after |
| <a href="SqlValidator.html#validate(org.apache.calcite.sql.SqlNode)"><code>SqlValidator.validate(org.apache.calcite.sql.SqlNode)</code></a> has been called.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidatorWithHints.html#lookupQualifiedName(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.parser.SqlParserPos)">lookupQualifiedName</a></code> in interface <code><a href="SqlValidatorWithHints.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorWithHints</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>topNode</code> - top of expression tree in which to lookup the qualified |
| name for the SqlIdentifier</dd> |
| <dd><code>pos</code> - indicates the position of the <a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql"><code>SqlIdentifier</code></a> in |
| the SQL statement we want to get the qualified |
| name for</dd> |
| <dt>Returns:</dt> |
| <dd>a string of the fully qualified name of the <a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql"><code>SqlIdentifier</code></a> |
| if the Parser position represents a valid <a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql"><code>SqlIdentifier</code></a>. Else |
| return null</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="lookupNameCompletionHints(org.apache.calcite.sql.validate.SqlValidatorScope,java.util.List,org.apache.calcite.sql.parser.SqlParserPos,java.util.Collection)"> |
| <h3>lookupNameCompletionHints</h3> |
| <div class="member-signature"><span class="modifiers">public final</span> <span class="return-type">void</span> <span class="element-name">lookupNameCompletionHints</span><wbr><span class="parameters">(<a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>> names, |
| <a href="../parser/SqlParserPos.html" title="class in org.apache.calcite.sql.parser">SqlParserPos</a> pos, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Collection.html" title="class or interface in java.util" class="external-link">Collection</a><<a href="SqlMoniker.html" title="interface in org.apache.calcite.sql.validate">SqlMoniker</a>> hintList)</span></div> |
| <div class="block">Populates a list of all the valid alternatives for an identifier.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>scope</code> - Validation scope</dd> |
| <dd><code>names</code> - Components of the identifier</dd> |
| <dd><code>pos</code> - position</dd> |
| <dd><code>hintList</code> - a list of valid options</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateParameterizedExpression(org.apache.calcite.sql.SqlNode,java.util.Map)"> |
| <h3>validateParameterizedExpression</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="element-name">validateParameterizedExpression</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> topNode, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>> nameToTypeMap)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateParameterizedExpression(org.apache.calcite.sql.SqlNode,java.util.Map)">SqlValidator</a></code></span></div> |
| <div class="block">Validates an expression tree. You can call this method multiple times, |
| but not reentrantly.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateParameterizedExpression(org.apache.calcite.sql.SqlNode,java.util.Map)">validateParameterizedExpression</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>topNode</code> - top of expression tree to be validated</dd> |
| <dd><code>nameToTypeMap</code> - map of simple name to <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type"><code>RelDataType</code></a>; used to |
| resolve <a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql"><code>SqlIdentifier</code></a> references</dd> |
| <dt>Returns:</dt> |
| <dd>validated tree (possibly rewritten)</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateQuery(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.rel.type.RelDataType)"> |
| <h3>validateQuery</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateQuery</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node, |
| @Nullable <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateQuery(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.rel.type.RelDataType)">SqlValidator</a></code></span></div> |
| <div class="block">Checks that a query is valid. |
| |
| <p>Valid queries include: |
| |
| <ul> |
| <li><code>SELECT</code> statement, |
| <li>set operation (<code>UNION</code>, <code>INTERSECT</code>, <code> |
| EXCEPT</code>) |
| <li>identifier (e.g. representing use of a table in a FROM clause) |
| <li>query aliased with the <code>AS</code> operator |
| </ul></div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateQuery(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.rel.type.RelDataType)">validateQuery</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>node</code> - Query node</dd> |
| <dd><code>scope</code> - Scope in which the query occurs</dd> |
| <dd><code>targetRowType</code> - Desired row type, must not be null, may be the data |
| type 'unknown'.</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateNamespace(org.apache.calcite.sql.validate.SqlValidatorNamespace,org.apache.calcite.rel.type.RelDataType)"> |
| <h3>validateNamespace</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">validateNamespace</span><wbr><span class="parameters">(<a href="SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorNamespace</a> namespace, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType)</span></div> |
| <div class="block">Validates a namespace.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>namespace</code> - Namespace</dd> |
| <dd><code>targetRowType</code> - Desired row type, must not be null, may be the data |
| type 'unknown'.</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getEmptyScope()"> |
| <h3>getEmptyScope</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="element-name">getEmptyScope</span>()</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getCursorScope(org.apache.calcite.sql.SqlSelect)"> |
| <h3>getCursorScope</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="element-name">getCursorScope</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getWhereScope(org.apache.calcite.sql.SqlSelect)"> |
| <h3>getWhereScope</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="element-name">getWhereScope</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getWhereScope(org.apache.calcite.sql.SqlSelect)">SqlValidator</a></code></span></div> |
| <div class="block">Returns the scope that expressions in the WHERE and GROUP BY clause of |
| this query should use. This scope consists of the tables in the FROM |
| clause, and the enclosing scope.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getWhereScope(org.apache.calcite.sql.SqlSelect)">getWhereScope</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>select</code> - Query</dd> |
| <dt>Returns:</dt> |
| <dd>naming scope of WHERE clause</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getSelectScope(org.apache.calcite.sql.SqlSelect)"> |
| <h3>getSelectScope</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="element-name">getSelectScope</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getSelectScope(org.apache.calcite.sql.SqlSelect)">SqlValidator</a></code></span></div> |
| <div class="block">Returns the appropriate scope for validating a particular clause of a |
| SELECT statement. |
| |
| <p>Consider</p> |
| |
| <blockquote><pre><code>SELECT * |
| FROM foo |
| WHERE EXISTS ( |
| SELECT deptno AS x |
| FROM emp |
| JOIN dept ON emp.deptno = dept.deptno |
| WHERE emp.deptno = 5 |
| GROUP BY deptno |
| ORDER BY x)</code></pre></blockquote> |
| |
| <p>What objects can be seen in each part of the sub-query?</p> |
| |
| <ul> |
| <li>In FROM (<a href="SqlValidator.html#getFromScope(org.apache.calcite.sql.SqlSelect)"><code>SqlValidator.getFromScope(org.apache.calcite.sql.SqlSelect)</code></a> , you can only see 'foo'. |
| |
| <li>In WHERE (<a href="SqlValidator.html#getWhereScope(org.apache.calcite.sql.SqlSelect)"><code>SqlValidator.getWhereScope(org.apache.calcite.sql.SqlSelect)</code></a>), GROUP BY (<a href="SqlValidator.html#getGroupScope(org.apache.calcite.sql.SqlSelect)"><code>SqlValidator.getGroupScope(org.apache.calcite.sql.SqlSelect)</code></a>), |
| SELECT (<code>getSelectScope</code>), and the ON clause of the JOIN |
| (<a href="SqlValidator.html#getJoinScope(org.apache.calcite.sql.SqlNode)"><code>SqlValidator.getJoinScope(org.apache.calcite.sql.SqlNode)</code></a>) you can see 'emp', 'dept', and 'foo'. |
| |
| <li>In ORDER BY (<a href="SqlValidator.html#getOrderScope(org.apache.calcite.sql.SqlSelect)"><code>SqlValidator.getOrderScope(org.apache.calcite.sql.SqlSelect)</code></a>), you can see the column alias 'x'; |
| and tables 'emp', 'dept', and 'foo'. |
| |
| </ul></div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getSelectScope(org.apache.calcite.sql.SqlSelect)">getSelectScope</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>select</code> - SELECT statement</dd> |
| <dt>Returns:</dt> |
| <dd>naming scope for SELECT statement</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getRawSelectScope(org.apache.calcite.sql.SqlSelect)"> |
| <h3>getRawSelectScope</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">@Nullable <a href="SelectScope.html" title="class in org.apache.calcite.sql.validate">SelectScope</a></span> <span class="element-name">getRawSelectScope</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getRawSelectScope(org.apache.calcite.sql.SqlSelect)">SqlValidator</a></code></span></div> |
| <div class="block">Returns the scope for resolving the SELECT, GROUP BY and HAVING clauses. |
| Always a <a href="SelectScope.html" title="class in org.apache.calcite.sql.validate"><code>SelectScope</code></a>; if this is an aggregation query, the |
| <a href="AggregatingScope.html" title="interface in org.apache.calcite.sql.validate"><code>AggregatingScope</code></a> is stripped away.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getRawSelectScope(org.apache.calcite.sql.SqlSelect)">getRawSelectScope</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>select</code> - SELECT statement</dd> |
| <dt>Returns:</dt> |
| <dd>naming scope for SELECT statement, sans any aggregating scope</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getHavingScope(org.apache.calcite.sql.SqlSelect)"> |
| <h3>getHavingScope</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="element-name">getHavingScope</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getHavingScope(org.apache.calcite.sql.SqlSelect)">SqlValidator</a></code></span></div> |
| <div class="block">Returns a scope containing the objects visible from the HAVING clause of |
| a query.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getHavingScope(org.apache.calcite.sql.SqlSelect)">getHavingScope</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>select</code> - SELECT statement</dd> |
| <dt>Returns:</dt> |
| <dd>naming scope for HAVING clause</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getGroupScope(org.apache.calcite.sql.SqlSelect)"> |
| <h3>getGroupScope</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="element-name">getGroupScope</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getGroupScope(org.apache.calcite.sql.SqlSelect)">SqlValidator</a></code></span></div> |
| <div class="block">Returns a scope containing the objects visible from the GROUP BY clause |
| of a query.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getGroupScope(org.apache.calcite.sql.SqlSelect)">getGroupScope</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>select</code> - SELECT statement</dd> |
| <dt>Returns:</dt> |
| <dd>naming scope for GROUP BY clause</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getFromScope(org.apache.calcite.sql.SqlSelect)"> |
| <h3>getFromScope</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">@Nullable <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="element-name">getFromScope</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getFromScope(org.apache.calcite.sql.SqlSelect)">SqlValidator</a></code></span></div> |
| <div class="block">Returns a scope containing the objects visible from the FROM clause of a |
| query.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getFromScope(org.apache.calcite.sql.SqlSelect)">getFromScope</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>select</code> - SELECT statement</dd> |
| <dt>Returns:</dt> |
| <dd>naming scope for FROM clause</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getOrderScope(org.apache.calcite.sql.SqlSelect)"> |
| <h3>getOrderScope</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="element-name">getOrderScope</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getOrderScope(org.apache.calcite.sql.SqlSelect)">SqlValidator</a></code></span></div> |
| <div class="block">Returns the scope that expressions in the SELECT and HAVING clause of |
| this query should use. This scope consists of the FROM clause and the |
| enclosing scope. If the query is aggregating, only columns in the GROUP |
| BY clause may be used.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getOrderScope(org.apache.calcite.sql.SqlSelect)">getOrderScope</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>select</code> - SELECT statement</dd> |
| <dt>Returns:</dt> |
| <dd>naming scope for ORDER BY clause</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getMatchRecognizeScope(org.apache.calcite.sql.SqlMatchRecognize)"> |
| <h3>getMatchRecognizeScope</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="element-name">getMatchRecognizeScope</span><wbr><span class="parameters">(<a href="../SqlMatchRecognize.html" title="class in org.apache.calcite.sql">SqlMatchRecognize</a> node)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getMatchRecognizeScope(org.apache.calcite.sql.SqlMatchRecognize)">SqlValidator</a></code></span></div> |
| <div class="block">Returns a scope match recognize clause.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getMatchRecognizeScope(org.apache.calcite.sql.SqlMatchRecognize)">getMatchRecognizeScope</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>node</code> - Match recognize</dd> |
| <dt>Returns:</dt> |
| <dd>naming scope for Match recognize clause</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getJoinScope(org.apache.calcite.sql.SqlNode)"> |
| <h3>getJoinScope</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">@Nullable <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="element-name">getJoinScope</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getJoinScope(org.apache.calcite.sql.SqlNode)">SqlValidator</a></code></span></div> |
| <div class="block">Returns a scope containing the objects visible from the ON and USING |
| sections of a JOIN clause.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getJoinScope(org.apache.calcite.sql.SqlNode)">getJoinScope</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>node</code> - The item in the FROM clause which contains the ON or USING |
| expression</dd> |
| <dt>Returns:</dt> |
| <dd>naming scope for JOIN clause</dd> |
| <dt>See Also:</dt> |
| <dd> |
| <ul class="see-list-long"> |
| <li><a href="SqlValidator.html#getFromScope(org.apache.calcite.sql.SqlSelect)"><code>SqlValidator.getFromScope(org.apache.calcite.sql.SqlSelect)</code></a></li> |
| </ul> |
| </dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getOverScope(org.apache.calcite.sql.SqlNode)"> |
| <h3>getOverScope</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="element-name">getOverScope</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getOverScope(org.apache.calcite.sql.SqlNode)">SqlValidator</a></code></span></div> |
| <div class="block">Returns the scope of an OVER or VALUES node.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getOverScope(org.apache.calcite.sql.SqlNode)">getOverScope</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>node</code> - Node</dd> |
| <dt>Returns:</dt> |
| <dd>Scope</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getNamespace(org.apache.calcite.sql.SqlNode)"> |
| <h3>getNamespace</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">@Nullable <a href="SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorNamespace</a></span> <span class="element-name">getNamespace</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getNamespace(org.apache.calcite.sql.SqlNode)">SqlValidator</a></code></span></div> |
| <div class="block">Finds the namespace corresponding to a given node. |
| |
| <p>For example, in the query <code>SELECT * FROM (SELECT * FROM t), t1 AS |
| alias</code>, the both items in the FROM clause have a corresponding |
| namespace.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getNamespace(org.apache.calcite.sql.SqlNode)">getNamespace</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>node</code> - Parse tree node</dd> |
| <dt>Returns:</dt> |
| <dd>namespace of node</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="performUnconditionalRewrites(org.apache.calcite.sql.SqlNode,boolean)"> |
| <h3>performUnconditionalRewrites</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">@PolyNull <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="element-name">performUnconditionalRewrites</span><wbr><span class="parameters">(@PolyNull <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node, |
| boolean underFrom)</span></div> |
| <div class="block">Performs expression rewrites which are always used unconditionally. These |
| rewrites massage the expression tree into a standard form so that the |
| rest of the validation logic can be simpler. |
| |
| <p>Returns null if and only if the original expression is null.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>node</code> - expression to be rewritten</dd> |
| <dd><code>underFrom</code> - whether node appears directly under a FROM clause</dd> |
| <dt>Returns:</dt> |
| <dd>rewritten expression, or null if the original expression is null</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getSelfJoinExprForUpdate(org.apache.calcite.sql.SqlNode,java.lang.String)"> |
| <h3>getSelfJoinExprForUpdate</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">@Nullable <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="element-name">getSelfJoinExprForUpdate</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> table, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> alias)</span></div> |
| <div class="block">Allows a subclass to provide information about how to convert an UPDATE |
| into a MERGE via self-join. If this method returns null, then no such |
| conversion takes place. Otherwise, this method should return a suitable |
| unique identifier expression for the given table.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>table</code> - identifier for table being updated</dd> |
| <dd><code>alias</code> - alias to use for qualifying columns in expression, or null |
| for unqualified references; if this is equal to |
| <a href="#UPDATE_SRC_ALIAS">"SYS$SRC"</a>, then column references have been |
| anonymized to "SYS$ANONx", where x is the 1-based column |
| number.</dd> |
| <dt>Returns:</dt> |
| <dd>expression for unique identifier, or null to prevent conversion</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="createSourceSelectForUpdate(org.apache.calcite.sql.SqlUpdate)"> |
| <h3>createSourceSelectForUpdate</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a></span> <span class="element-name">createSourceSelectForUpdate</span><wbr><span class="parameters">(<a href="../SqlUpdate.html" title="class in org.apache.calcite.sql">SqlUpdate</a> call)</span></div> |
| <div class="block">Creates the SELECT statement that putatively feeds rows into an UPDATE |
| statement to be updated.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>call</code> - Call to the UPDATE operator</dd> |
| <dt>Returns:</dt> |
| <dd>select statement</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="createSourceSelectForDelete(org.apache.calcite.sql.SqlDelete)"> |
| <h3>createSourceSelectForDelete</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a></span> <span class="element-name">createSourceSelectForDelete</span><wbr><span class="parameters">(<a href="../SqlDelete.html" title="class in org.apache.calcite.sql">SqlDelete</a> call)</span></div> |
| <div class="block">Creates the SELECT statement that putatively feeds rows into a DELETE |
| statement to be deleted.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>call</code> - Call to the DELETE operator</dd> |
| <dt>Returns:</dt> |
| <dd>select statement</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getValidatedNodeType(org.apache.calcite.sql.SqlNode)"> |
| <h3>getValidatedNodeType</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="element-name">getValidatedNodeType</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getValidatedNodeType(org.apache.calcite.sql.SqlNode)">SqlValidator</a></code></span></div> |
| <div class="block">Returns the type assigned to a node by validation.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getValidatedNodeType(org.apache.calcite.sql.SqlNode)">getValidatedNodeType</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>node</code> - the node of interest</dd> |
| <dt>Returns:</dt> |
| <dd>validated type, never null</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getValidatedNodeTypeIfKnown(org.apache.calcite.sql.SqlNode)"> |
| <h3>getValidatedNodeTypeIfKnown</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">@Nullable <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="element-name">getValidatedNodeTypeIfKnown</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getValidatedNodeTypeIfKnown(org.apache.calcite.sql.SqlNode)">SqlValidator</a></code></span></div> |
| <div class="block">Returns the type assigned to a node by validation, or null if unknown. |
| This allows for queries against nodes such as aliases, which have no type |
| of their own. If you want to assert that the node of interest must have a |
| type, use <a href="SqlValidator.html#getValidatedNodeType(org.apache.calcite.sql.SqlNode)"><code>SqlValidator.getValidatedNodeType(org.apache.calcite.sql.SqlNode)</code></a> instead.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getValidatedNodeTypeIfKnown(org.apache.calcite.sql.SqlNode)">getValidatedNodeTypeIfKnown</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>node</code> - the node of interest</dd> |
| <dt>Returns:</dt> |
| <dd>validated type, or null if unknown or not applicable</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getValidatedOperandTypes(org.apache.calcite.sql.SqlCall)"> |
| <h3>getValidatedOperandTypes</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">@Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>></span> <span class="element-name">getValidatedOperandTypes</span><wbr><span class="parameters">(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getValidatedOperandTypes(org.apache.calcite.sql.SqlCall)">SqlValidator</a></code></span></div> |
| <div class="block">Returns the types of a call's operands. |
| |
| <p>Returns null if the call has not been validated, or if the operands' |
| types do not differ from their types as expressions. |
| |
| <p>This method is most useful when some of the operands are of type ANY, |
| or if they need to be coerced to be consistent with other operands, or |
| with the needs of the function.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getValidatedOperandTypes(org.apache.calcite.sql.SqlCall)">getValidatedOperandTypes</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>call</code> - Call</dd> |
| <dt>Returns:</dt> |
| <dd>List of operands' types, or null if not known or 'obvious'</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="setValidatedNodeType(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)"> |
| <h3>setValidatedNodeType</h3> |
| <div class="member-signature"><span class="modifiers">public final</span> <span class="return-type">void</span> <span class="element-name">setValidatedNodeType</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> type)</span></div> |
| <div class="block">Saves the type of a <a href="../SqlNode.html" title="class in org.apache.calcite.sql"><code>SqlNode</code></a>, now that it has been validated. |
| |
| <p>Unlike the base class method, this method is not deprecated. |
| It is available from within Calcite, but is not part of the public API.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#setValidatedNodeType(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">setValidatedNodeType</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>node</code> - A SQL parse tree node, never null</dd> |
| <dd><code>type</code> - Its type; must not be null</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="removeValidatedNodeType(org.apache.calcite.sql.SqlNode)"> |
| <h3>removeValidatedNodeType</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">removeValidatedNodeType</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#removeValidatedNodeType(org.apache.calcite.sql.SqlNode)">SqlValidator</a></code></span></div> |
| <div class="block">Removes a node from the set of validated nodes.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#removeValidatedNodeType(org.apache.calcite.sql.SqlNode)">removeValidatedNodeType</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>node</code> - node to be removed</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="makeNullaryCall(org.apache.calcite.sql.SqlIdentifier)"> |
| <h3>makeNullaryCall</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">@Nullable <a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a></span> <span class="element-name">makeNullaryCall</span><wbr><span class="parameters">(<a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a> id)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#makeNullaryCall(org.apache.calcite.sql.SqlIdentifier)">SqlValidator</a></code></span></div> |
| <div class="block">If an identifier is a legitimate call to a function that has no |
| arguments and requires no parentheses (for example "CURRENT_USER"), |
| returns a call to that function, otherwise returns null.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#makeNullaryCall(org.apache.calcite.sql.SqlIdentifier)">makeNullaryCall</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="deriveType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode)"> |
| <h3>deriveType</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="element-name">deriveType</span><wbr><span class="parameters">(<a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expr)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#deriveType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode)">SqlValidator</a></code></span></div> |
| <div class="block">Derives the type of a node in a given scope. If the type has already been |
| inferred, returns the previous type.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#deriveType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode)">deriveType</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>scope</code> - Syntactic scope</dd> |
| <dd><code>expr</code> - Parse tree node</dd> |
| <dt>Returns:</dt> |
| <dd>Type of the SqlNode. Should never return <code>NULL</code></dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="deriveConstructorType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlFunction,org.apache.calcite.sql.SqlFunction,java.util.List)"> |
| <h3>deriveConstructorType</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="element-name">deriveConstructorType</span><wbr><span class="parameters">(<a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call, |
| <a href="../SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a> unresolvedConstructor, |
| @Nullable <a href="../SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a> resolvedConstructor, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>> argTypes)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#deriveConstructorType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlFunction,org.apache.calcite.sql.SqlFunction,java.util.List)">SqlValidator</a></code></span></div> |
| <div class="block">Derives the type of a constructor.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#deriveConstructorType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlFunction,org.apache.calcite.sql.SqlFunction,java.util.List)">deriveConstructorType</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>scope</code> - Scope</dd> |
| <dd><code>call</code> - Call</dd> |
| <dd><code>unresolvedConstructor</code> - TODO</dd> |
| <dd><code>resolvedConstructor</code> - TODO</dd> |
| <dd><code>argTypes</code> - Types of arguments</dd> |
| <dt>Returns:</dt> |
| <dd>Resolved type of constructor</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="handleUnresolvedFunction(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlOperator,java.util.List,java.util.List)"> |
| <h3>handleUnresolvedFunction</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../../runtime/CalciteException.html" title="class in org.apache.calcite.runtime">CalciteException</a></span> <span class="element-name">handleUnresolvedFunction</span><wbr><span class="parameters">(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call, |
| <a href="../SqlOperator.html" title="class in org.apache.calcite.sql">SqlOperator</a> unresolvedFunction, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>> argTypes, |
| @Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>> argNames)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#handleUnresolvedFunction(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlOperator,java.util.List,java.util.List)">SqlValidator</a></code></span></div> |
| <div class="block">Handles a call to a function which cannot be resolved. Returns an |
| appropriately descriptive error, which caller must throw.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#handleUnresolvedFunction(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlOperator,java.util.List,java.util.List)">handleUnresolvedFunction</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>call</code> - Call</dd> |
| <dd><code>unresolvedFunction</code> - Overloaded function which is the target of the |
| call</dd> |
| <dd><code>argTypes</code> - Types of arguments</dd> |
| <dd><code>argNames</code> - Names of arguments, or null if call by position</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="inferUnknownTypes(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode)"> |
| <h3>inferUnknownTypes</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">inferUnknownTypes</span><wbr><span class="parameters">(<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> inferredType, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="addToSelectList(java.util.List,java.util.Set,java.util.List,org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SelectScope,boolean)"> |
| <h3>addToSelectList</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">addToSelectList</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>> list, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>> aliases, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.Entry.html" title="class or interface in java.util" class="external-link">Map.Entry</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>,<wbr><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>>> fieldList, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> exp, |
| <a href="SelectScope.html" title="class in org.apache.calcite.sql.validate">SelectScope</a> scope, |
| boolean includeSystemVars)</span></div> |
| <div class="block">Adds an expression to a select list, ensuring that its alias does not |
| clash with any existing expressions on the list.</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="deriveAlias(org.apache.calcite.sql.SqlNode,int)"> |
| <h3>deriveAlias</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">@Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span> <span class="element-name">deriveAlias</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node, |
| int ordinal)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#deriveAlias(org.apache.calcite.sql.SqlNode,int)">SqlValidator</a></code></span></div> |
| <div class="block">Derives an alias for an expression. If no alias can be derived, returns |
| null if <code>ordinal</code> is less than zero, otherwise generates an |
| alias <code>EXPR$<i>ordinal</i></code>.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#deriveAlias(org.apache.calcite.sql.SqlNode,int)">deriveAlias</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>node</code> - Expression</dd> |
| <dd><code>ordinal</code> - Ordinal of expression</dd> |
| <dt>Returns:</dt> |
| <dd>derived alias, or null if no alias can be derived and ordinal is |
| less than zero</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="shouldAllowIntermediateOrderBy()"> |
| <h3>shouldAllowIntermediateOrderBy</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">boolean</span> <span class="element-name">shouldAllowIntermediateOrderBy</span>()</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="createMatchRecognizeNameSpace(org.apache.calcite.sql.SqlMatchRecognize,org.apache.calcite.sql.SqlNode)"> |
| <h3>createMatchRecognizeNameSpace</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="MatchRecognizeNamespace.html" title="class in org.apache.calcite.sql.validate">MatchRecognizeNamespace</a></span> <span class="element-name">createMatchRecognizeNameSpace</span><wbr><span class="parameters">(<a href="../SqlMatchRecognize.html" title="class in org.apache.calcite.sql">SqlMatchRecognize</a> call, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> enclosingNode)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="createPivotNameSpace(org.apache.calcite.sql.SqlPivot,org.apache.calcite.sql.SqlNode)"> |
| <h3>createPivotNameSpace</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="PivotNamespace.html" title="class in org.apache.calcite.sql.validate">PivotNamespace</a></span> <span class="element-name">createPivotNameSpace</span><wbr><span class="parameters">(<a href="../SqlPivot.html" title="class in org.apache.calcite.sql">SqlPivot</a> call, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> enclosingNode)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="createUnpivotNameSpace(org.apache.calcite.sql.SqlUnpivot,org.apache.calcite.sql.SqlNode)"> |
| <h3>createUnpivotNameSpace</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="UnpivotNamespace.html" title="class in org.apache.calcite.sql.validate">UnpivotNamespace</a></span> <span class="element-name">createUnpivotNameSpace</span><wbr><span class="parameters">(<a href="../SqlUnpivot.html" title="class in org.apache.calcite.sql">SqlUnpivot</a> call, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> enclosingNode)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="registerNamespace(org.apache.calcite.sql.validate.SqlValidatorScope,java.lang.String,org.apache.calcite.sql.validate.SqlValidatorNamespace,boolean)"> |
| <h3>registerNamespace</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">registerNamespace</span><wbr><span class="parameters">(@Nullable <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> usingScope, |
| @Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> alias, |
| <a href="SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorNamespace</a> ns, |
| boolean forceNullable)</span></div> |
| <div class="block">Registers a new namespace, and adds it as a child of its parent scope. |
| Derived class can override this method to tinker with namespaces as they |
| are created.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>usingScope</code> - Parent scope (which will want to look for things in |
| this namespace)</dd> |
| <dd><code>alias</code> - Alias by which parent will refer to this namespace</dd> |
| <dd><code>ns</code> - Namespace</dd> |
| <dd><code>forceNullable</code> - Whether to force the type of namespace to be nullable</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="shouldAllowOverRelation()"> |
| <h3>shouldAllowOverRelation</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">boolean</span> <span class="element-name">shouldAllowOverRelation</span>()</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="createSelectNamespace(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.SqlNode)"> |
| <h3>createSelectNamespace</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="SelectNamespace.html" title="class in org.apache.calcite.sql.validate">SelectNamespace</a></span> <span class="element-name">createSelectNamespace</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> enclosingNode)</span></div> |
| <div class="block">Creates a namespace for a <code>SELECT</code> node. Derived class may |
| override this factory method.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>select</code> - Select node</dd> |
| <dd><code>enclosingNode</code> - Enclosing node</dd> |
| <dt>Returns:</dt> |
| <dd>Select namespace</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="createSetopNamespace(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlNode)"> |
| <h3>createSetopNamespace</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="SetopNamespace.html" title="class in org.apache.calcite.sql.validate">SetopNamespace</a></span> <span class="element-name">createSetopNamespace</span><wbr><span class="parameters">(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> enclosingNode)</span></div> |
| <div class="block">Creates a namespace for a set operation (<code>UNION</code>, <code> |
| INTERSECT</code>, or <code>EXCEPT</code>). Derived class may override |
| this factory method.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>call</code> - Call to set operation</dd> |
| <dd><code>enclosingNode</code> - Enclosing node</dd> |
| <dt>Returns:</dt> |
| <dd>Set operation namespace</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="isAggregate(org.apache.calcite.sql.SqlSelect)"> |
| <h3>isAggregate</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isAggregate</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#isAggregate(org.apache.calcite.sql.SqlSelect)">SqlValidator</a></code></span></div> |
| <div class="block">Returns whether a SELECT statement is an aggregation. Criteria are: (1) |
| contains GROUP BY, or (2) contains HAVING, or (3) SELECT or ORDER BY |
| clause contains aggregate functions. (Windowed aggregate functions, such |
| as <code>SUM(x) OVER w</code>, don't count.)</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#isAggregate(org.apache.calcite.sql.SqlSelect)">isAggregate</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>select</code> - SELECT statement</dd> |
| <dt>Returns:</dt> |
| <dd>whether SELECT statement is an aggregation</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="isNestedAggregateWindow(org.apache.calcite.sql.SqlNode)"> |
| <h3>isNestedAggregateWindow</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">boolean</span> <span class="element-name">isNestedAggregateWindow</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="isOverAggregateWindow(org.apache.calcite.sql.SqlNode)"> |
| <h3>isOverAggregateWindow</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">boolean</span> <span class="element-name">isOverAggregateWindow</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getAggregate(org.apache.calcite.sql.SqlSelect)"> |
| <h3>getAggregate</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">@Nullable <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="element-name">getAggregate</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block">Returns the parse tree node (GROUP BY, HAVING, or an aggregate function |
| call) that causes <code>select</code> to be an aggregate query, or null if it |
| is not an aggregate query. |
| |
| <p>The node is useful context for error messages, |
| but you cannot assume that the node is the only aggregate function.</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="isAggregate(org.apache.calcite.sql.SqlNode)"> |
| <h3>isAggregate</h3> |
| <div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a> |
| </span><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isAggregate</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> selectNode)</span></div> |
| <div class="deprecation-block"><span class="deprecated-label">Deprecated.</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#isAggregate(org.apache.calcite.sql.SqlNode)">SqlValidator</a></code></span></div> |
| <div class="block">Returns whether a select list expression is an aggregate function.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#isAggregate(org.apache.calcite.sql.SqlNode)">isAggregate</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>selectNode</code> - Expression in SELECT clause</dd> |
| <dt>Returns:</dt> |
| <dd>whether expression is an aggregate function</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateIdentifier(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <h3>validateIdentifier</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateIdentifier</span><wbr><span class="parameters">(<a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a> id, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateIdentifier(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.validate.SqlValidatorScope)">SqlValidator</a></code></span></div> |
| <div class="block">Resolves an identifier to a fully-qualified name.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateIdentifier(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.validate.SqlValidatorScope)">validateIdentifier</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>id</code> - Identifier</dd> |
| <dd><code>scope</code> - Naming scope</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateLiteral(org.apache.calcite.sql.SqlLiteral)"> |
| <h3>validateLiteral</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateLiteral</span><wbr><span class="parameters">(<a href="../SqlLiteral.html" title="class in org.apache.calcite.sql">SqlLiteral</a> literal)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateLiteral(org.apache.calcite.sql.SqlLiteral)">SqlValidator</a></code></span></div> |
| <div class="block">Validates a literal.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateLiteral(org.apache.calcite.sql.SqlLiteral)">validateLiteral</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>literal</code> - Literal</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateIntervalQualifier(org.apache.calcite.sql.SqlIntervalQualifier)"> |
| <h3>validateIntervalQualifier</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateIntervalQualifier</span><wbr><span class="parameters">(<a href="../SqlIntervalQualifier.html" title="class in org.apache.calcite.sql">SqlIntervalQualifier</a> qualifier)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateIntervalQualifier(org.apache.calcite.sql.SqlIntervalQualifier)">SqlValidator</a></code></span></div> |
| <div class="block">Validates a <a href="../SqlIntervalQualifier.html" title="class in org.apache.calcite.sql"><code>SqlIntervalQualifier</code></a>.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateIntervalQualifier(org.apache.calcite.sql.SqlIntervalQualifier)">validateIntervalQualifier</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>qualifier</code> - Interval qualifier</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateTimeFrame(org.apache.calcite.sql.SqlIntervalQualifier)"> |
| <h3>validateTimeFrame</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../../rel/type/TimeFrame.html" title="interface in org.apache.calcite.rel.type">TimeFrame</a></span> <span class="element-name">validateTimeFrame</span><wbr><span class="parameters">(<a href="../SqlIntervalQualifier.html" title="class in org.apache.calcite.sql">SqlIntervalQualifier</a> qualifier)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateTimeFrame(org.apache.calcite.sql.SqlIntervalQualifier)">SqlValidator</a></code></span></div> |
| <div class="block">Validates a time frame. |
| |
| <p>A time frame is either a built-in time frame based on a time unit such |
| as <code>TimeUnitRange.HOUR</code>, |
| or is a custom time frame represented by a name in |
| <a href="../SqlIntervalQualifier.html#timeFrameName"><code>SqlIntervalQualifier.timeFrameName</code></a>. A custom time frame is |
| validated against <a href="SqlValidator.html#getTimeFrameSet()"><code>SqlValidator.getTimeFrameSet()</code></a>. |
| |
| <p>Returns a time frame, or throws.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateTimeFrame(org.apache.calcite.sql.SqlIntervalQualifier)">validateTimeFrame</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateFrom(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <h3>validateFrom</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">validateFrom</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</span></div> |
| <div class="block">Validates the FROM clause of a query, or (recursively) a child node of |
| the FROM clause: AS, OVER, JOIN, VALUES, or sub-query.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>node</code> - Node in FROM clause, typically a table or derived |
| table</dd> |
| <dd><code>targetRowType</code> - Desired row type of this expression, or |
| <a href="#unknownType"><code>unknownType</code></a> if not fussy. Must not be null.</dd> |
| <dd><code>scope</code> - Scope</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateTableFunction(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.rel.type.RelDataType)"> |
| <h3>validateTableFunction</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">validateTableFunction</span><wbr><span class="parameters">(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> node, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateOver(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <h3>validateOver</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">validateOver</span><wbr><span class="parameters">(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateUnnest(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.rel.type.RelDataType)"> |
| <h3>validateUnnest</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">validateUnnest</span><wbr><span class="parameters">(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateJoin(org.apache.calcite.sql.SqlJoin,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <h3>validateJoin</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">validateJoin</span><wbr><span class="parameters">(<a href="../SqlJoin.html" title="class in org.apache.calcite.sql">SqlJoin</a> join, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateSelect(org.apache.calcite.sql.SqlSelect,org.apache.calcite.rel.type.RelDataType)"> |
| <h3>validateSelect</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">validateSelect</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType)</span></div> |
| <div class="block">Validates a SELECT statement.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>select</code> - Select statement</dd> |
| <dd><code>targetRowType</code> - Desired row type, must not be null, may be the data |
| type 'unknown'.</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateModality(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.validate.SqlModality,boolean)"> |
| <h3>validateModality</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">validateModality</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select, |
| <a href="SqlModality.html" title="enum in org.apache.calcite.sql.validate">SqlModality</a> modality, |
| boolean fail)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateModality(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.validate.SqlModality,boolean)">SqlValidator</a></code></span></div> |
| <div class="block">Validates that a query is capable of producing a return of given modality |
| (relational or streaming).</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateModality(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.validate.SqlModality,boolean)">validateModality</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>select</code> - Query</dd> |
| <dd><code>modality</code> - Modality (streaming or relational)</dd> |
| <dd><code>fail</code> - Whether to throw a user error if does not support required |
| modality</dd> |
| <dt>Returns:</dt> |
| <dd>whether query supports the given modality</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateWindowClause(org.apache.calcite.sql.SqlSelect)"> |
| <h3>validateWindowClause</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">validateWindowClause</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateQualifyClause(org.apache.calcite.sql.SqlSelect)"> |
| <h3>validateQualifyClause</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">validateQualifyClause</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateWith(org.apache.calcite.sql.SqlWith,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <h3>validateWith</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateWith</span><wbr><span class="parameters">(<a href="../SqlWith.html" title="class in org.apache.calcite.sql">SqlWith</a> with, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</span></div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateWith(org.apache.calcite.sql.SqlWith,org.apache.calcite.sql.validate.SqlValidatorScope)">validateWith</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateWithItem(org.apache.calcite.sql.SqlWithItem)"> |
| <h3>validateWithItem</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateWithItem</span><wbr><span class="parameters">(<a href="../SqlWithItem.html" title="class in org.apache.calcite.sql">SqlWithItem</a> withItem)</span></div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateWithItem(org.apache.calcite.sql.SqlWithItem)">validateWithItem</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateSequenceValue(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlIdentifier)"> |
| <h3>validateSequenceValue</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateSequenceValue</span><wbr><span class="parameters">(<a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a> id)</span></div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateSequenceValue(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlIdentifier)">validateSequenceValue</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getWithScope(org.apache.calcite.sql.SqlNode)"> |
| <h3>getWithScope</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">@Nullable <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="element-name">getWithScope</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> withItem)</span></div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getWithScope(org.apache.calcite.sql.SqlNode)">getWithScope</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getTypeCoercion()"> |
| <h3>getTypeCoercion</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="implicit/TypeCoercion.html" title="interface in org.apache.calcite.sql.validate.implicit">TypeCoercion</a></span> <span class="element-name">getTypeCoercion</span>()</div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getTypeCoercion()">SqlValidator</a></code></span></div> |
| <div class="block">Get the type coercion instance.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getTypeCoercion()">getTypeCoercion</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="config()"> |
| <h3>config</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="SqlValidator.Config.html" title="interface in org.apache.calcite.sql.validate">SqlValidator.Config</a></span> <span class="element-name">config</span>()</div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#config()">SqlValidator</a></code></span></div> |
| <div class="block">Returns the config of the validator.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#config()">config</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="transform(java.util.function.UnaryOperator)"> |
| <h3>transform</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></span> <span class="element-name">transform</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/function/UnaryOperator.html" title="class or interface in java.util.function" class="external-link">UnaryOperator</a><<a href="SqlValidator.Config.html" title="interface in org.apache.calcite.sql.validate">SqlValidator.Config</a>> transform)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#transform(java.util.function.UnaryOperator)">SqlValidator</a></code></span></div> |
| <div class="block">Returns this SqlValidator, with the same state, applying |
| a transform to the config. |
| |
| <p>This is mainly used for tests, otherwise constructs a <a href="SqlValidator.Config.html" title="interface in org.apache.calcite.sql.validate"><code>SqlValidator.Config</code></a> directly |
| through the constructor.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#transform(java.util.function.UnaryOperator)">transform</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateOrderList(org.apache.calcite.sql.SqlSelect)"> |
| <h3>validateOrderList</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">validateOrderList</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block">Validates the ORDER BY clause of a SELECT statement.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>select</code> - Select statement</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="expandOrderExpr(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.SqlNode)"> |
| <h3>expandOrderExpr</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="element-name">expandOrderExpr</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> orderExpr)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#expandOrderExpr(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.SqlNode)">SqlValidator</a></code></span></div> |
| <div class="block">Expands an expression in the ORDER BY clause into an expression with the |
| same semantics as expressions in the SELECT clause. |
| |
| <p>This is made necessary by a couple of dialect 'features': |
| |
| <ul> |
| <li><b>ordinal expressions</b>: In "SELECT x, y FROM t ORDER BY 2", the |
| expression "2" is shorthand for the 2nd item in the select clause, namely |
| "y". |
| <li><b>alias references</b>: In "SELECT x AS a, y FROM t ORDER BY a", the |
| expression "a" is shorthand for the item in the select clause whose alias |
| is "a" |
| </ul></div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#expandOrderExpr(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.SqlNode)">expandOrderExpr</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>select</code> - Select statement which contains ORDER BY</dd> |
| <dd><code>orderExpr</code> - Expression in the ORDER BY clause.</dd> |
| <dt>Returns:</dt> |
| <dd>Expression translated into SELECT clause semantics</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateGroupClause(org.apache.calcite.sql.SqlSelect)"> |
| <h3>validateGroupClause</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">validateGroupClause</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block">Validates the GROUP BY clause of a SELECT statement. This method is |
| called even if no GROUP BY clause is present.</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateWhereClause(org.apache.calcite.sql.SqlSelect)"> |
| <h3>validateWhereClause</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">validateWhereClause</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateWhereOrOn(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode,java.lang.String)"> |
| <h3>validateWhereOrOn</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">validateWhereOrOn</span><wbr><span class="parameters">(<a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> condition, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a> clause)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateHavingClause(org.apache.calcite.sql.SqlSelect)"> |
| <h3>validateHavingClause</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">validateHavingClause</span><wbr><span class="parameters">(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateSelectList(org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlSelect,org.apache.calcite.rel.type.RelDataType)"> |
| <h3>validateSelectList</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="element-name">validateSelectList</span><wbr><span class="parameters">(<a href="../SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a> selectItems, |
| <a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="createTargetRowType(org.apache.calcite.sql.validate.SqlValidatorTable,org.apache.calcite.sql.SqlNodeList,boolean)"> |
| <h3>createTargetRowType</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="element-name">createTargetRowType</span><wbr><span class="parameters">(<a href="SqlValidatorTable.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorTable</a> table, |
| @Nullable <a href="../SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a> targetColumnList, |
| boolean append)</span></div> |
| <div class="block">Derives a row-type for INSERT and UPDATE operations.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>table</code> - Target table for INSERT/UPDATE</dd> |
| <dd><code>targetColumnList</code> - List of target columns, or null if not specified</dd> |
| <dd><code>append</code> - Whether to append fields to those in <code> |
| baseRowType</code></dd> |
| <dt>Returns:</dt> |
| <dd>Rowtype</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateInsert(org.apache.calcite.sql.SqlInsert)"> |
| <h3>validateInsert</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateInsert</span><wbr><span class="parameters">(<a href="../SqlInsert.html" title="class in org.apache.calcite.sql">SqlInsert</a> insert)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateInsert(org.apache.calcite.sql.SqlInsert)">SqlValidator</a></code></span></div> |
| <div class="block">Validates an INSERT statement.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateInsert(org.apache.calcite.sql.SqlInsert)">validateInsert</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>insert</code> - INSERT statement</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getLogicalTargetRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)"> |
| <h3>getLogicalTargetRowType</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="element-name">getLogicalTargetRowType</span><wbr><span class="parameters">(<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType, |
| <a href="../SqlInsert.html" title="class in org.apache.calcite.sql">SqlInsert</a> insert)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getLogicalSourceRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)"> |
| <h3>getLogicalSourceRowType</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="element-name">getLogicalSourceRowType</span><wbr><span class="parameters">(<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> sourceRowType, |
| <a href="../SqlInsert.html" title="class in org.apache.calcite.sql">SqlInsert</a> insert)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="checkTypeAssignment(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.validate.SqlValidatorTable,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlNode)"> |
| <h3>checkTypeAssignment</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">checkTypeAssignment</span><wbr><span class="parameters">(@Nullable <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> sourceScope, |
| <a href="SqlValidatorTable.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorTable</a> table, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> sourceRowType, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> query)</span></div> |
| <div class="block">Checks the type assignment of an INSERT or UPDATE query. |
| |
| <p>Skip the virtual columns(can not insert into) type assignment |
| check if the source fields count equals with |
| the real target table fields count, see how #checkFieldCount was used.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>sourceScope</code> - Scope of query source which is used to infer node type</dd> |
| <dd><code>table</code> - Target table</dd> |
| <dd><code>sourceRowType</code> - Source row type</dd> |
| <dd><code>targetRowType</code> - Target row type, it should either contain all the virtual columns |
| (can not insert into) or exclude all the virtual columns</dd> |
| <dd><code>query</code> - The query</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateDelete(org.apache.calcite.sql.SqlDelete)"> |
| <h3>validateDelete</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateDelete</span><wbr><span class="parameters">(<a href="../SqlDelete.html" title="class in org.apache.calcite.sql">SqlDelete</a> call)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateDelete(org.apache.calcite.sql.SqlDelete)">SqlValidator</a></code></span></div> |
| <div class="block">Validates a DELETE statement.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateDelete(org.apache.calcite.sql.SqlDelete)">validateDelete</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>call</code> - DELETE statement</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateUpdate(org.apache.calcite.sql.SqlUpdate)"> |
| <h3>validateUpdate</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateUpdate</span><wbr><span class="parameters">(<a href="../SqlUpdate.html" title="class in org.apache.calcite.sql">SqlUpdate</a> call)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateUpdate(org.apache.calcite.sql.SqlUpdate)">SqlValidator</a></code></span></div> |
| <div class="block">Validates an UPDATE statement.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateUpdate(org.apache.calcite.sql.SqlUpdate)">validateUpdate</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>call</code> - UPDATE statement</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateMerge(org.apache.calcite.sql.SqlMerge)"> |
| <h3>validateMerge</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateMerge</span><wbr><span class="parameters">(<a href="../SqlMerge.html" title="class in org.apache.calcite.sql">SqlMerge</a> call)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateMerge(org.apache.calcite.sql.SqlMerge)">SqlValidator</a></code></span></div> |
| <div class="block">Validates a MERGE statement.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateMerge(org.apache.calcite.sql.SqlMerge)">validateMerge</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>call</code> - MERGE statement</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateValues(org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <h3>validateValues</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">validateValues</span><wbr><span class="parameters">(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> node, |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> targetRowType, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</span></div> |
| <div class="block">Validates a VALUES clause.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>node</code> - Values clause</dd> |
| <dd><code>targetRowType</code> - Row type which expression must conform to</dd> |
| <dd><code>scope</code> - Scope within which clause occurs</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateDataType(org.apache.calcite.sql.SqlDataTypeSpec)"> |
| <h3>validateDataType</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateDataType</span><wbr><span class="parameters">(<a href="../SqlDataTypeSpec.html" title="class in org.apache.calcite.sql">SqlDataTypeSpec</a> dataType)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateDataType(org.apache.calcite.sql.SqlDataTypeSpec)">SqlValidator</a></code></span></div> |
| <div class="block">Validates a data type expression.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateDataType(org.apache.calcite.sql.SqlDataTypeSpec)">validateDataType</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>dataType</code> - Data type</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateDynamicParam(org.apache.calcite.sql.SqlDynamicParam)"> |
| <h3>validateDynamicParam</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateDynamicParam</span><wbr><span class="parameters">(<a href="../SqlDynamicParam.html" title="class in org.apache.calcite.sql">SqlDynamicParam</a> dynamicParam)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateDynamicParam(org.apache.calcite.sql.SqlDynamicParam)">SqlValidator</a></code></span></div> |
| <div class="block">Validates a dynamic parameter.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateDynamicParam(org.apache.calcite.sql.SqlDynamicParam)">validateDynamicParam</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>dynamicParam</code> - Dynamic parameter</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getValidationErrorFunction()"> |
| <h3>getValidationErrorFunction</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">org.apache.calcite.sql.validate.SqlValidatorImpl.ValidationErrorFunction</span> <span class="element-name">getValidationErrorFunction</span>()</div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="newValidationError(org.apache.calcite.sql.SqlNode,org.apache.calcite.runtime.Resources.ExInst)"> |
| <h3>newValidationError</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../../runtime/CalciteContextException.html" title="class in org.apache.calcite.runtime">CalciteContextException</a></span> <span class="element-name">newValidationError</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node, |
| org.apache.calcite.runtime.Resources.ExInst<<a href="SqlValidatorException.html" title="class in org.apache.calcite.sql.validate">SqlValidatorException</a>> e)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#newValidationError(org.apache.calcite.sql.SqlNode,org.apache.calcite.runtime.Resources.ExInst)">SqlValidator</a></code></span></div> |
| <div class="block">Adds "line x, column y" context to a validator exception. |
| |
| <p>Note that the input exception is checked (it derives from |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Exception.html" title="class or interface in java.lang" class="external-link"><code>Exception</code></a>) and the output exception is unchecked (it derives from |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/RuntimeException.html" title="class or interface in java.lang" class="external-link"><code>RuntimeException</code></a>). This is intentional -- it should remind code |
| authors to provide context for their validation errors.</p></div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#newValidationError(org.apache.calcite.sql.SqlNode,org.apache.calcite.runtime.Resources.ExInst)">newValidationError</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>node</code> - The place where the exception occurred, not null</dd> |
| <dd><code>e</code> - The validation error</dd> |
| <dt>Returns:</dt> |
| <dd>Exception containing positional information, never null</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getWindowByName(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <h3>getWindowByName</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type"><a href="../SqlWindow.html" title="class in org.apache.calcite.sql">SqlWindow</a></span> <span class="element-name">getWindowByName</span><wbr><span class="parameters">(<a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a> id, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="resolveWindow(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <h3>resolveWindow</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../SqlWindow.html" title="class in org.apache.calcite.sql">SqlWindow</a></span> <span class="element-name">resolveWindow</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> windowOrRef, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#resolveWindow(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope)">SqlValidator</a></code></span></div> |
| <div class="block">Converts a window specification or window name into a fully-resolved |
| window specification. For example, in <code>SELECT sum(x) OVER (PARTITION |
| BY x ORDER BY y), sum(y) OVER w1, sum(z) OVER (w ORDER BY y) FROM t |
| WINDOW w AS (PARTITION BY x)</code> all aggregations have the same |
| resolved window specification <code>(PARTITION BY x ORDER BY y)</code>.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#resolveWindow(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope)">resolveWindow</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>windowOrRef</code> - Either the name of a window (a <a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql"><code>SqlIdentifier</code></a>) |
| or a window specification (a <a href="../SqlWindow.html" title="class in org.apache.calcite.sql"><code>SqlWindow</code></a>).</dd> |
| <dd><code>scope</code> - Scope in which to resolve window names</dd> |
| <dt>Returns:</dt> |
| <dd>A window</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getOriginal(org.apache.calcite.sql.SqlNode)"> |
| <h3>getOriginal</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="element-name">getOriginal</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expr)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="setOriginal(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.SqlNode)"> |
| <h3>setOriginal</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">setOriginal</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expr, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> original)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateWindow(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)"> |
| <h3>validateWindow</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateWindow</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> windowOrId, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| @Nullable <a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateWindow(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">SqlValidator</a></code></span></div> |
| <div class="block">Validates the right-hand side of an OVER expression. It might be either |
| an <a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql"><code>identifier</code></a> referencing a window, or an |
| <a href="../SqlWindow.html" title="class in org.apache.calcite.sql"><code>inline window specification</code></a>.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateWindow(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">validateWindow</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>windowOrId</code> - SqlNode that can be either SqlWindow with all the |
| components of a window spec or a SqlIdentifier with the |
| name of a window spec.</dd> |
| <dd><code>scope</code> - Naming scope</dd> |
| <dd><code>call</code> - the SqlNode if a function call if the window is attached |
| to one.</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateMatchRecognize(org.apache.calcite.sql.SqlCall)"> |
| <h3>validateMatchRecognize</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateMatchRecognize</span><wbr><span class="parameters">(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateMatchRecognize(org.apache.calcite.sql.SqlCall)">SqlValidator</a></code></span></div> |
| <div class="block">Validates a MATCH_RECOGNIZE clause.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateMatchRecognize(org.apache.calcite.sql.SqlCall)">validateMatchRecognize</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>call</code> - MATCH_RECOGNIZE clause</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validatePivot(org.apache.calcite.sql.SqlPivot)"> |
| <h3>validatePivot</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validatePivot</span><wbr><span class="parameters">(<a href="../SqlPivot.html" title="class in org.apache.calcite.sql">SqlPivot</a> pivot)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateUnpivot(org.apache.calcite.sql.SqlUnpivot)"> |
| <h3>validateUnpivot</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateUnpivot</span><wbr><span class="parameters">(<a href="../SqlUnpivot.html" title="class in org.apache.calcite.sql">SqlUnpivot</a> unpivot)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateAggregateParams(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <h3>validateAggregateParams</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateAggregateParams</span><wbr><span class="parameters">(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> aggCall, |
| @Nullable <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> filter, |
| @Nullable <a href="../SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a> distinctList, |
| @Nullable <a href="../SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a> orderList, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateAggregateParams(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.validate.SqlValidatorScope)">SqlValidator</a></code></span></div> |
| <div class="block">Validates parameters for aggregate function.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateAggregateParams(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.validate.SqlValidatorScope)">validateAggregateParams</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>aggCall</code> - Call to aggregate function</dd> |
| <dd><code>filter</code> - Filter (<code>FILTER (WHERE)</code> clause), or null</dd> |
| <dd><code>distinctList</code> - Distinct specification (<code>WITHIN DISTINCT</code> |
| clause), or null</dd> |
| <dd><code>orderList</code> - Ordering specification (<code>WITHIN GROUP</code> clause), |
| or null</dd> |
| <dd><code>scope</code> - Syntactic scope</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateCall(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <h3>validateCall</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateCall</span><wbr><span class="parameters">(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateCall(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope)">SqlValidator</a></code></span></div> |
| <div class="block">Validates a call to an operator.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateCall(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope)">validateCall</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>call</code> - Operator call</dd> |
| <dd><code>scope</code> - Naming scope</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateFeature(org.apache.calcite.runtime.Feature,org.apache.calcite.sql.parser.SqlParserPos)"> |
| <h3>validateFeature</h3> |
| <div class="member-signature"><span class="modifiers">protected</span> <span class="return-type">void</span> <span class="element-name">validateFeature</span><wbr><span class="parameters">(<a href="../../runtime/Feature.html" title="class in org.apache.calcite.runtime">Feature</a> feature, |
| <a href="../parser/SqlParserPos.html" title="class in org.apache.calcite.sql.parser">SqlParserPos</a> context)</span></div> |
| <div class="block">Validates that a particular feature is enabled. By default, all features |
| are enabled; subclasses may override this method to be more |
| discriminating.</div> |
| <dl class="notes"> |
| <dt>Parameters:</dt> |
| <dd><code>feature</code> - feature being used, represented as a resource instance</dd> |
| <dd><code>context</code> - parser position context for error reporting, or null if</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="resolveLiteral(org.apache.calcite.sql.SqlLiteral)"> |
| <h3>resolveLiteral</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../SqlLiteral.html" title="class in org.apache.calcite.sql">SqlLiteral</a></span> <span class="element-name">resolveLiteral</span><wbr><span class="parameters">(<a href="../SqlLiteral.html" title="class in org.apache.calcite.sql">SqlLiteral</a> literal)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#resolveLiteral(org.apache.calcite.sql.SqlLiteral)">SqlValidator</a></code></span></div> |
| <div class="block">Resolves a literal. |
| |
| <p>Usually returns the literal unchanged, but if the literal is of type |
| <a href="../type/SqlTypeName.html#UNKNOWN"><code>SqlTypeName.UNKNOWN</code></a> looks up its type |
| and converts to the appropriate literal subclass.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#resolveLiteral(org.apache.calcite.sql.SqlLiteral)">resolveLiteral</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="expandSelectExpr(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SelectScope,org.apache.calcite.sql.SqlSelect)"> |
| <h3>expandSelectExpr</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="element-name">expandSelectExpr</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expr, |
| <a href="SelectScope.html" title="class in org.apache.calcite.sql.validate">SelectScope</a> scope, |
| <a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="expand(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <h3>expand</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="element-name">expand</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expr, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#expand(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope)">SqlValidator</a></code></span></div> |
| <div class="block">Expands an expression.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#expand(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope)">expand</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>expr</code> - Expression</dd> |
| <dd><code>scope</code> - Scope</dd> |
| <dt>Returns:</dt> |
| <dd>Expanded expression</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="extendedExpandGroupBy(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlSelect)"> |
| <h3>extendedExpandGroupBy</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="element-name">extendedExpandGroupBy</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expr, |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="isSystemField(org.apache.calcite.rel.type.RelDataTypeField)"> |
| <h3>isSystemField</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isSystemField</span><wbr><span class="parameters">(<a href="../../rel/type/RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a> field)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#isSystemField(org.apache.calcite.rel.type.RelDataTypeField)">SqlValidator</a></code></span></div> |
| <div class="block">Returns whether a field is a system field. Such fields may have |
| particular properties such as sortedness and nullability. |
| |
| <p>In the default implementation, always returns <code>false</code>.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#isSystemField(org.apache.calcite.rel.type.RelDataTypeField)">isSystemField</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>field</code> - Field</dd> |
| <dt>Returns:</dt> |
| <dd>whether field is a system field</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getFieldOrigins(org.apache.calcite.sql.SqlNode)"> |
| <h3>getFieldOrigins</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><@Nullable <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>>></span> <span class="element-name">getFieldOrigins</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> sqlQuery)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getFieldOrigins(org.apache.calcite.sql.SqlNode)">SqlValidator</a></code></span></div> |
| <div class="block">Returns a description of how each field in the row type maps to a |
| catalog, schema, table and column in the schema. |
| |
| <p>The returned list is never null, and has one element for each field |
| in the row type. Each element is a list of four elements (catalog, |
| schema, table, column), or may be null if the column is an expression.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getFieldOrigins(org.apache.calcite.sql.SqlNode)">getFieldOrigins</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>sqlQuery</code> - Query</dd> |
| <dt>Returns:</dt> |
| <dd>Description of how each field in the row type maps to a schema |
| object</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="getParameterRowType(org.apache.calcite.sql.SqlNode)"> |
| <h3>getParameterRowType</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="element-name">getParameterRowType</span><wbr><span class="parameters">(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> sqlQuery)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#getParameterRowType(org.apache.calcite.sql.SqlNode)">SqlValidator</a></code></span></div> |
| <div class="block">Returns a record type that contains the name and type of each parameter. |
| Returns a record type with no fields if there are no parameters.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#getParameterRowType(org.apache.calcite.sql.SqlNode)">getParameterRowType</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>sqlQuery</code> - Query</dd> |
| <dt>Returns:</dt> |
| <dd>Record type</dd> |
| </dl> |
| </section> |
| </li> |
| <li> |
| <section class="detail" id="validateColumnListParams(org.apache.calcite.sql.SqlFunction,java.util.List,java.util.List)"> |
| <h3>validateColumnListParams</h3> |
| <div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">validateColumnListParams</span><wbr><span class="parameters">(<a href="../SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a> function, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>> argTypes, |
| <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a><<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>> operands)</span></div> |
| <div class="block"><span class="descfrm-type-label">Description copied from interface: <code><a href="SqlValidator.html#validateColumnListParams(org.apache.calcite.sql.SqlFunction,java.util.List,java.util.List)">SqlValidator</a></code></span></div> |
| <div class="block">Validates a COLUMN_LIST parameter.</div> |
| <dl class="notes"> |
| <dt>Specified by:</dt> |
| <dd><code><a href="SqlValidator.html#validateColumnListParams(org.apache.calcite.sql.SqlFunction,java.util.List,java.util.List)">validateColumnListParams</a></code> in interface <code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></dd> |
| <dt>Parameters:</dt> |
| <dd><code>function</code> - function containing COLUMN_LIST parameter</dd> |
| <dd><code>argTypes</code> - function arguments</dd> |
| <dd><code>operands</code> - operands passed into the function call</dd> |
| </dl> |
| </section> |
| </li> |
| </ul> |
| </section> |
| </li> |
| </ul> |
| </section> |
| <!-- ========= END OF CLASS DATA ========= --> |
| </main> |
| <footer role="contentinfo"> |
| <hr> |
| <p class="legal-copy"><small>Copyright © 2012-2023 Apache Software Foundation. All Rights Reserved.</small></p> |
| </footer> |
| </div> |
| </div> |
| </body> |
| </html> |