| <!DOCTYPE HTML> |
| <!-- NewPage --> |
| <html lang="en"> |
| <head> |
| <!-- Generated by javadoc --> |
| <title>SqlValidatorImpl (Apache Calcite calcite API)</title> |
| <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.css" title="Style"> |
| <script type="text/javascript" src="../../../../../script.js"></script> |
| <script type="text/javascript" src="../../../../../script-dir/jszip/dist/jszip.min.js"></script> |
| <script type="text/javascript" src="../../../../../script-dir/jszip-utils/dist/jszip-utils.min.js"></script> |
| <!--[if IE]> |
| <script type="text/javascript" src="../../../../../script-dir/jszip-utils/dist/jszip-utils-ie.min.js"></script> |
| <![endif]--> |
| <script type="text/javascript" src="../../../../../script-dir/jquery-3.4.1.js"></script> |
| <script type="text/javascript" src="../../../../../script-dir/jquery-ui.js"></script> |
| </head> |
| <body class="class-declaration"> |
| <script type="text/javascript">var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10,"i51":10,"i52":10,"i53":42,"i54":10,"i55":10,"i56":10,"i57":10,"i58":10,"i59":10,"i60":10,"i61":10,"i62":10,"i63":10,"i64":10,"i65":10,"i66":10,"i67":10,"i68":10,"i69":10,"i70":10,"i71":10,"i72":10,"i73":10,"i74":10,"i75":10,"i76":10,"i77":10,"i78":10,"i79":10,"i80":10,"i81":10,"i82":10,"i83":10,"i84":10,"i85":10,"i86":10,"i87":10,"i88":10,"i89":10,"i90":10,"i91":10,"i92":10,"i93":10,"i94":10,"i95":10,"i96":10,"i97":10,"i98":10,"i99":10,"i100":10,"i101":10,"i102":10,"i103":10,"i104":10,"i105":10,"i106":10,"i107":10,"i108":10,"i109":10,"i110":10,"i111":10}; |
| var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]}; |
| var altColor = "altColor"; |
| var rowColor = "rowColor"; |
| var tableTab = "tableTab"; |
| var activeTableTab = "activeTableTab"; |
| var pathtoroot = "../../../../../"; |
| loadScripts(document, 'script');</script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| <div class="flexBox"> |
| <header role="banner" class="flexHeader"> |
| <nav role="navigation"> |
| <!-- ========= START OF TOP NAVBAR ======= --> |
| <div class="topNav"><a id="navbar.top"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> |
| <a id="navbar.top.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../../index.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">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">Help</a></li> |
| </ul> |
| <div class="aboutLanguage"><b>Apache Calcite</b></div> |
| </div> |
| <div class="subNav"> |
| <div> |
| <ul class="subNavList"> |
| <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="subNavList"> |
| <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="navListSearch"><label for="search">SEARCH:</label> |
| <input type="text" id="search" value="search" disabled="disabled"> |
| <input type="reset" id="reset" value="reset" disabled="disabled"> |
| </div> |
| </div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| <div class="skipNav"><a id="skip.navbar.top"> |
| <!-- --> |
| </a></div> |
| </nav> |
| </header> |
| <div class="flexContent"> |
| <main role="main"> |
| <!-- ======== START OF CLASS DATA ======== --> |
| <div class="header"> |
| <div class="subTitle"><span class="packageLabelInType">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="contentContainer"> |
| <div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a> |
| <div class="inheritance">org.apache.calcite.sql.validate.SqlValidatorImpl</div> |
| </div> |
| <section class="description"> |
| <dl> |
| <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> |
| <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> |
| <pre>public class <span class="typeNameLabel">SqlValidatorImpl</span> |
| extends <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a> |
| implements <a href="SqlValidatorWithHints.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorWithHints</a></pre> |
| <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="blockList"> |
| <!-- ======== NESTED CLASS SUMMARY ======== --> |
| <li class="blockList"> |
| <section class="nestedClassSummary"><a id="nested.class.summary"> |
| <!-- --> |
| </a> |
| <h2>Nested Class Summary</h2> |
| <div class="memberSummary"> |
| <table> |
| <caption><span>Nested Classes</span><span class="tabEnd"> </span></caption> |
| <thead> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colSecond" scope="col">Class</th> |
| <th class="colLast" scope="col">Description</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr class="altColor"> |
| <td class="colFirst"><code>static class </code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="SqlValidatorImpl.DmlNamespace.html" title="class in org.apache.calcite.sql.validate">SqlValidatorImpl.DmlNamespace</a></span></code></th> |
| <td class="colLast"> |
| <div class="block">Common base class for DML statement namespaces.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>protected static class </code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="SqlValidatorImpl.FunctionParamInfo.html" title="class in org.apache.calcite.sql.validate">SqlValidatorImpl.FunctionParamInfo</a></span></code></th> |
| <td class="colLast"> |
| <div class="block">Utility object used to maintain information about the parameters in a |
| function call.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>protected static class </code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="SqlValidatorImpl.IdInfo.html" title="class in org.apache.calcite.sql.validate">SqlValidatorImpl.IdInfo</a></span></code></th> |
| <td class="colLast"> |
| <div class="block">Information about an identifier in a particular scope.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>static class </code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="SqlValidatorImpl.Status.html" title="enum in org.apache.calcite.sql.validate">SqlValidatorImpl.Status</a></span></code></th> |
| <td class="colLast"> |
| <div class="block">Validation status.</div> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| <div class="inheritedList"> |
| <h2>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> |
| <a id="nested.classes.inherited.from.class.org.apache.calcite.sql.validate.SqlValidator"> |
| <!-- --> |
| </a><code><a href="SqlValidator.Config.html" title="interface in org.apache.calcite.sql.validate">SqlValidator.Config</a></code></div> |
| </section> |
| </li> |
| <!-- =========== FIELD SUMMARY =========== --> |
| <li class="blockList"> |
| <section class="fieldSummary"><a id="field.summary"> |
| <!-- --> |
| </a> |
| <h2>Field Summary</h2> |
| <div class="memberSummary"> |
| <table> |
| <caption><span>Fields</span><span class="tabEnd"> </span></caption> |
| <thead> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colSecond" scope="col">Field</th> |
| <th class="colLast" scope="col">Description</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr class="altColor"> |
| <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/9/docs/api/java/util/Deque.html?is-external=true" title="class or interface in java.util" class="externalLink">Deque</a><<a href="SqlValidatorImpl.FunctionParamInfo.html" title="class in org.apache.calcite.sql.validate">SqlValidatorImpl.FunctionParamInfo</a>></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#functionCallStack">functionCallStack</a></span></code></th> |
| <td class="colLast"> |
| <div class="block">Stack of objects that maintain information about function calls.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/9/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,​<a href="SqlValidatorImpl.IdInfo.html" title="class in org.apache.calcite.sql.validate">SqlValidatorImpl.IdInfo</a>></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#idPositions">idPositions</a></span></code></th> |
| <td class="colLast"> |
| <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> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/9/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a><<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>,​<a href="SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorNamespace</a>></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#namespaces">namespaces</a></span></code></th> |
| <td class="colLast"> |
| <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> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/9/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a><<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>,​<a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#scopes">scopes</a></span></code></th> |
| <td class="colLast"> |
| <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> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>static org.slf4j.Logger</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#TRACER">TRACER</a></span></code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>protected <a href="../../rel/type/RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#typeFactory">typeFactory</a></span></code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>protected <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#unknownType">unknownType</a></span></code></th> |
| <td class="colLast"> |
| <div class="block">The type of dynamic parameters until a type is imposed on them.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#UPDATE_ANON_PREFIX">UPDATE_ANON_PREFIX</a></span></code></th> |
| <td class="colLast"> |
| <div class="block">Alias prefix generated for source columns when rewriting UPDATE to MERGE.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#UPDATE_SRC_ALIAS">UPDATE_SRC_ALIAS</a></span></code></th> |
| <td class="colLast"> |
| <div class="block">Alias generated for the source table when rewriting UPDATE to MERGE.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#UPDATE_TGT_ALIAS">UPDATE_TGT_ALIAS</a></span></code></th> |
| <td class="colLast"> |
| <div class="block">Alias generated for the target table when rewriting UPDATE to MERGE if no |
| alias was specified by the user.</div> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </section> |
| </li> |
| <!-- ======== CONSTRUCTOR SUMMARY ======== --> |
| <li class="blockList"> |
| <section class="constructorSummary"><a id="constructor.summary"> |
| <!-- --> |
| </a> |
| <h2>Constructor Summary</h2> |
| <div class="memberSummary"> |
| <table> |
| <caption><span>Constructors</span><span class="tabEnd"> </span></caption> |
| <thead> |
| <tr> |
| <th class="colFirst" scope="col">Modifier</th> |
| <th class="colSecond" scope="col">Constructor</th> |
| <th class="colLast" scope="col">Description</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr class="altColor"> |
| <td class="colFirst"><code>protected </code></td> |
| <th class="colConstructorName" scope="row"><code><span class="memberNameLink"><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)">SqlValidatorImpl</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Creates a validator.</div> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </section> |
| </li> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <li class="blockList"> |
| <section class="methodSummary"><a id="method.summary"> |
| <!-- --> |
| </a> |
| <h2>Method Summary</h2> |
| <div class="memberSummary"> |
| <div role="tablist" aria-orientation="horizontal"><button role="tab" aria-selected="true" aria-controls="memberSummary_tabpanel" tabindex="0" onkeydown="switchTab(event)" id="t0" class="activeTableTab">All Methods</button><button role="tab" aria-selected="false" aria-controls="memberSummary_tabpanel" tabindex="-1" onkeydown="switchTab(event)" id="t2" class="tableTab" onclick="show(2);">Instance Methods</button><button role="tab" aria-selected="false" aria-controls="memberSummary_tabpanel" tabindex="-1" onkeydown="switchTab(event)" id="t4" class="tableTab" onclick="show(8);">Concrete Methods</button><button role="tab" aria-selected="false" aria-controls="memberSummary_tabpanel" tabindex="-1" onkeydown="switchTab(event)" id="t6" class="tableTab" onclick="show(32);">Deprecated Methods</button></div> |
| <div id="memberSummary_tabpanel" role="tabpanel"> |
| <table aria-labelledby="t0"> |
| <thead> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colSecond" scope="col">Method</th> |
| <th class="colLast" scope="col">Description</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr class="altColor" id="i0"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addToSelectList(java.util.List,java.util.Set,java.util.List,org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SelectScope,boolean)">addToSelectList</a></span>​(<a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>> list, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util" class="externalLink">Set</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>> aliases, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/util/Map.Entry.html?is-external=true" title="class or interface in java.util" class="externalLink">Map.Entry</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,​<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></th> |
| <td class="colLast"> |
| <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> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i1"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><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)">checkTypeAssignment</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Checks the type assignment of an INSERT or UPDATE query.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i2"> |
| <td class="colFirst"><code><a href="SqlValidator.Config.html" title="interface in org.apache.calcite.sql.validate">SqlValidator.Config</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#config()">config</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Returns the config of the validator.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i3"> |
| <td class="colFirst"><code>protected <a href="MatchRecognizeNamespace.html" title="class in org.apache.calcite.sql.validate">MatchRecognizeNamespace</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createMatchRecognizeNameSpace(org.apache.calcite.sql.SqlMatchRecognize,org.apache.calcite.sql.SqlNode)">createMatchRecognizeNameSpace</a></span>​(<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></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i4"> |
| <td class="colFirst"><code>protected <a href="PivotNamespace.html" title="class in org.apache.calcite.sql.validate">PivotNamespace</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createPivotNameSpace(org.apache.calcite.sql.SqlPivot,org.apache.calcite.sql.SqlNode)">createPivotNameSpace</a></span>​(<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></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="rowColor" id="i5"> |
| <td class="colFirst"><code>protected <a href="SelectNamespace.html" title="class in org.apache.calcite.sql.validate">SelectNamespace</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createSelectNamespace(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.SqlNode)">createSelectNamespace</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Creates a namespace for a <code>SELECT</code> node.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i6"> |
| <td class="colFirst"><code>protected <a href="SetopNamespace.html" title="class in org.apache.calcite.sql.validate">SetopNamespace</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createSetopNamespace(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlNode)">createSetopNamespace</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Creates a namespace for a set operation (<code>UNION</code>, <code> |
| INTERSECT</code>, or <code>EXCEPT</code>).</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i7"> |
| <td class="colFirst"><code>protected <a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createSourceSelectForDelete(org.apache.calcite.sql.SqlDelete)">createSourceSelectForDelete</a></span>​(<a href="../SqlDelete.html" title="class in org.apache.calcite.sql">SqlDelete</a> call)</code></th> |
| <td class="colLast"> |
| <div class="block">Creates the SELECT statement that putatively feeds rows into a DELETE |
| statement to be deleted.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i8"> |
| <td class="colFirst"><code>protected <a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createSourceSelectForUpdate(org.apache.calcite.sql.SqlUpdate)">createSourceSelectForUpdate</a></span>​(<a href="../SqlUpdate.html" title="class in org.apache.calcite.sql">SqlUpdate</a> call)</code></th> |
| <td class="colLast"> |
| <div class="block">Creates the SELECT statement that putatively feeds rows into an UPDATE |
| statement to be updated.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i9"> |
| <td class="colFirst"><code>protected <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createTargetRowType(org.apache.calcite.sql.validate.SqlValidatorTable,org.apache.calcite.sql.SqlNodeList,boolean)">createTargetRowType</a></span>​(<a href="SqlValidatorTable.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorTable</a> table, |
| <a href="../SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a> targetColumnList, |
| boolean append)</code></th> |
| <td class="colLast"> |
| <div class="block">Derives a row-type for INSERT and UPDATE operations.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i10"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#declareCursor(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.validate.SqlValidatorScope)">declareCursor</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Declares a SELECT expression as a cursor.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i11"> |
| <td class="colFirst"><code><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deriveAlias(org.apache.calcite.sql.SqlNode,int)">deriveAlias</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node, |
| int ordinal)</code></th> |
| <td class="colLast"> |
| <div class="block">Derives an alias for an expression.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i12"> |
| <td class="colFirst"><code><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><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)">deriveConstructorType</a></span>​(<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, |
| <a href="../SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a> resolvedConstructor, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>> argTypes)</code></th> |
| <td class="colLast"> |
| <div class="block">Derives the type of a constructor.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i13"> |
| <td class="colFirst"><code><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deriveType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode)">deriveType</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Derives the type of a node in a given scope.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i14"> |
| <td class="colFirst"><code><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#expand(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope)">expand</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Expands an expression.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i15"> |
| <td class="colFirst"><code><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#expandGroupByOrHavingExpr(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlSelect,boolean)">expandGroupByOrHavingExpr</a></span>​(<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, |
| boolean havingExpression)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i16"> |
| <td class="colFirst"><code><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#expandOrderExpr(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.SqlNode)">expandOrderExpr</a></span>​(<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></th> |
| <td class="colLast"> |
| <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> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i17"> |
| <td class="colFirst"><code><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#expandSelectExpr(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SelectScope,org.apache.calcite.sql.SqlSelect)">expandSelectExpr</a></span>​(<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></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i18"> |
| <td class="colFirst"><code><a href="../SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#expandStar(org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlSelect,boolean)">expandStar</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Returns a list of expressions, with every occurrence of "*" or |
| "TABLE.*" expanded.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i19"> |
| <td class="colFirst"><code>protected <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAggregate(org.apache.calcite.sql.SqlSelect)">getAggregate</a></span>​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></th> |
| <td class="colLast"> |
| <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> |
| </td> |
| </tr> |
| <tr class="altColor" id="i20"> |
| <td class="colFirst"><code><a href="SqlValidatorCatalogReader.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorCatalogReader</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCatalogReader()">getCatalogReader</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Returns the catalog reader used by this validator.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i21"> |
| <td class="colFirst"><code><a href="SqlConformance.html" title="interface in org.apache.calcite.sql.validate">SqlConformance</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getConformance()">getConformance</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i22"> |
| <td class="colFirst"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCursorScope(org.apache.calcite.sql.SqlSelect)">getCursorScope</a></span>​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="rowColor" id="i23"> |
| <td class="colFirst"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getEmptyScope()">getEmptyScope</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i24"> |
| <td class="colFirst"><code><a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>>></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getFieldOrigins(org.apache.calcite.sql.SqlNode)">getFieldOrigins</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> sqlQuery)</code></th> |
| <td class="colLast"> |
| <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> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i25"> |
| <td class="colFirst"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getFromScope(org.apache.calcite.sql.SqlSelect)">getFromScope</a></span>​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns a scope containing the objects visible from the FROM clause of a |
| query.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i26"> |
| <td class="colFirst"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getGroupScope(org.apache.calcite.sql.SqlSelect)">getGroupScope</a></span>​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns a scope containing the objects visible from the GROUP BY clause |
| of a query.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i27"> |
| <td class="colFirst"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getHavingScope(org.apache.calcite.sql.SqlSelect)">getHavingScope</a></span>​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns a scope containing the objects visible from the HAVING clause of |
| a query.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i28"> |
| <td class="colFirst"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getJoinScope(org.apache.calcite.sql.SqlNode)">getJoinScope</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns a scope containing the objects visible from the ON and USING |
| sections of a JOIN clause.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i29"> |
| <td class="colFirst"><code>protected <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLogicalSourceRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)">getLogicalSourceRowType</a></span>​(<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></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i30"> |
| <td class="colFirst"><code>protected <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLogicalTargetRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)">getLogicalTargetRowType</a></span>​(<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></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="rowColor" id="i31"> |
| <td class="colFirst"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMatchRecognizeScope(org.apache.calcite.sql.SqlMatchRecognize)">getMatchRecognizeScope</a></span>​(<a href="../SqlMatchRecognize.html" title="class in org.apache.calcite.sql">SqlMatchRecognize</a> node)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns a scope match recognize clause.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i32"> |
| <td class="colFirst"><code><a href="SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorNamespace</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getNamespace(org.apache.calcite.sql.SqlNode)">getNamespace</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</code></th> |
| <td class="colLast"> |
| <div class="block">Finds the namespace corresponding to a given node.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i33"> |
| <td class="colFirst"><code><a href="../SqlOperatorTable.html" title="interface in org.apache.calcite.sql">SqlOperatorTable</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getOperatorTable()">getOperatorTable</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Returns the operator table used by this validator.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i34"> |
| <td class="colFirst"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getOrderScope(org.apache.calcite.sql.SqlSelect)">getOrderScope</a></span>​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns the scope that expressions in the SELECT and HAVING clause of |
| this query should use.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i35"> |
| <td class="colFirst"><code><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getOriginal(org.apache.calcite.sql.SqlNode)">getOriginal</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expr)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i36"> |
| <td class="colFirst"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getOverScope(org.apache.calcite.sql.SqlNode)">getOverScope</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns the scope of an OVER or VALUES node.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i37"> |
| <td class="colFirst"><code><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getParameterRowType(org.apache.calcite.sql.SqlNode)">getParameterRowType</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> sqlQuery)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns a record type that contains the name and type of each parameter.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i38"> |
| <td class="colFirst"><code><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getParentCursor(java.lang.String)">getParentCursor</a></span>​(<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> columnListParamName)</code></th> |
| <td class="colLast"> |
| <div class="block">Retrieves the name of the parent cursor referenced by a column list |
| parameter.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i39"> |
| <td class="colFirst"><code><a href="SelectScope.html" title="class in org.apache.calcite.sql.validate">SelectScope</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRawSelectScope(org.apache.calcite.sql.SqlSelect)">getRawSelectScope</a></span>​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns the scope for resolving the SELECT, GROUP BY and HAVING clauses.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i40"> |
| <td class="colFirst"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getSelectScope(org.apache.calcite.sql.SqlSelect)">getSelectScope</a></span>​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns the appropriate scope for validating a particular clause of a |
| SELECT statement.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i41"> |
| <td class="colFirst"><code>protected <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getSelfJoinExprForUpdate(org.apache.calcite.sql.SqlNode,java.lang.String)">getSelfJoinExprForUpdate</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> table, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> alias)</code></th> |
| <td class="colLast"> |
| <div class="block">Allows a subclass to provide information about how to convert an UPDATE |
| into a MERGE via self-join.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i42"> |
| <td class="colFirst"><code><a href="implicit/TypeCoercion.html" title="interface in org.apache.calcite.sql.validate.implicit">TypeCoercion</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getTypeCoercion()">getTypeCoercion</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Get the type coercion instance.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i43"> |
| <td class="colFirst"><code><a href="../../rel/type/RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getTypeFactory()">getTypeFactory</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Returns the type factory used by this validator.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i44"> |
| <td class="colFirst"><code><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getUnknownType()">getUnknownType</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Returns an object representing the "unknown" type.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i45"> |
| <td class="colFirst"><code><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getValidatedNodeType(org.apache.calcite.sql.SqlNode)">getValidatedNodeType</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns the type assigned to a node by validation.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i46"> |
| <td class="colFirst"><code><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getValidatedNodeTypeIfKnown(org.apache.calcite.sql.SqlNode)">getValidatedNodeTypeIfKnown</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns the type assigned to a node by validation, or null if unknown.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i47"> |
| <td class="colFirst"><code>org.apache.calcite.sql.validate.SqlValidatorImpl.ValidationErrorFunction</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getValidationErrorFunction()">getValidationErrorFunction</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i48"> |
| <td class="colFirst"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getWhereScope(org.apache.calcite.sql.SqlSelect)">getWhereScope</a></span>​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns the scope that expressions in the WHERE and GROUP BY clause of |
| this query should use.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i49"> |
| <td class="colFirst"><code>protected <a href="../SqlWindow.html" title="class in org.apache.calcite.sql">SqlWindow</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getWindowByName(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.validate.SqlValidatorScope)">getWindowByName</a></span>​(<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></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i50"> |
| <td class="colFirst"><code><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getWithScope(org.apache.calcite.sql.SqlNode)">getWithScope</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> withItem)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="rowColor" id="i51"> |
| <td class="colFirst"><code><a href="../../runtime/CalciteException.html" title="class in org.apache.calcite.runtime">CalciteException</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#handleUnresolvedFunction(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlFunction,java.util.List,java.util.List)">handleUnresolvedFunction</a></span>​(<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> unresolvedFunction, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">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/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>> argNames)</code></th> |
| <td class="colLast"> |
| <div class="block">Handles a call to a function which cannot be resolved.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i52"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#inferUnknownTypes(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode)">inferUnknownTypes</a></span>​(<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></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="rowColor" id="i53"> |
| <td class="colFirst"><code>boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isAggregate(org.apache.calcite.sql.SqlNode)">isAggregate</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> selectNode)</code></th> |
| <td class="colLast"> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span></div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i54"> |
| <td class="colFirst"><code>boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isAggregate(org.apache.calcite.sql.SqlSelect)">isAggregate</a></span>​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns whether a SELECT statement is an aggregation.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i55"> |
| <td class="colFirst"><code>protected boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isNestedAggregateWindow(org.apache.calcite.sql.SqlNode)">isNestedAggregateWindow</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i56"> |
| <td class="colFirst"><code>protected boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isOverAggregateWindow(org.apache.calcite.sql.SqlNode)">isOverAggregateWindow</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="rowColor" id="i57"> |
| <td class="colFirst"><code>boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isSystemField(org.apache.calcite.rel.type.RelDataTypeField)">isSystemField</a></span>​(<a href="../../rel/type/RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a> field)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns whether a field is a system field.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i58"> |
| <td class="colFirst"><code><a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="SqlMoniker.html" title="interface in org.apache.calcite.sql.validate">SqlMoniker</a>></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#lookupHints(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.parser.SqlParserPos)">lookupHints</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Looks up completion hints for a syntactically correct SQL statement that |
| has been parsed into an expression tree.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i59"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#lookupNameCompletionHints(org.apache.calcite.sql.validate.SqlValidatorScope,java.util.List,org.apache.calcite.sql.parser.SqlParserPos,java.util.Collection)">lookupNameCompletionHints</a></span>​(<a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">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/javase/9/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a><<a href="SqlMoniker.html" title="interface in org.apache.calcite.sql.validate">SqlMoniker</a>> hintList)</code></th> |
| <td class="colLast"> |
| <div class="block">Populates a list of all the valid alternatives for an identifier.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i60"> |
| <td class="colFirst"><code><a href="SqlMoniker.html" title="interface in org.apache.calcite.sql.validate">SqlMoniker</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#lookupQualifiedName(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.parser.SqlParserPos)">lookupQualifiedName</a></span>​(<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></th> |
| <td class="colLast"> |
| <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> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i61"> |
| <td class="colFirst"><code><a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#makeNullaryCall(org.apache.calcite.sql.SqlIdentifier)">makeNullaryCall</a></span>​(<a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a> id)</code></th> |
| <td class="colLast"> |
| <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> |
| </td> |
| </tr> |
| <tr class="altColor" id="i62"> |
| <td class="colFirst"><code><a href="../../runtime/CalciteContextException.html" title="class in org.apache.calcite.runtime">CalciteContextException</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newValidationError(org.apache.calcite.sql.SqlNode,org.apache.calcite.runtime.Resources.ExInst)">newValidationError</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Adds "line x, column y" context to a validator exception.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i63"> |
| <td class="colFirst"><code>protected <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#performUnconditionalRewrites(org.apache.calcite.sql.SqlNode,boolean)">performUnconditionalRewrites</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node, |
| boolean underFrom)</code></th> |
| <td class="colLast"> |
| <div class="block">Performs expression rewrites which are always used unconditionally.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i64"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#popFunctionCall()">popFunctionCall</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Removes the topmost entry from the function call stack.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i65"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#pushFunctionCall()">pushFunctionCall</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Pushes a new instance of a function call on to a function call stack.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i66"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#registerNamespace(org.apache.calcite.sql.validate.SqlValidatorScope,java.lang.String,org.apache.calcite.sql.validate.SqlValidatorNamespace,boolean)">registerNamespace</a></span>​(<a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> usingScope, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> alias, |
| <a href="SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorNamespace</a> ns, |
| boolean forceNullable)</code></th> |
| <td class="colLast"> |
| <div class="block">Registers a new namespace, and adds it as a child of its parent scope.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i67"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#removeValidatedNodeType(org.apache.calcite.sql.SqlNode)">removeValidatedNodeType</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</code></th> |
| <td class="colLast"> |
| <div class="block">Removes a node from the set of validated nodes.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i68"> |
| <td class="colFirst"><code><a href="../SqlWindow.html" title="class in org.apache.calcite.sql">SqlWindow</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#resolveWindow(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope)">resolveWindow</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Converts a window specification or window name into a fully-resolved |
| window specification.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i69"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setOriginal(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.SqlNode)">setOriginal</a></span>​(<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></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i70"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setValidatedNodeType(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">setValidatedNodeType</a></span>​(<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></th> |
| <td class="colLast"> |
| <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> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i71"> |
| <td class="colFirst"><code>protected boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#shouldAllowIntermediateOrderBy()">shouldAllowIntermediateOrderBy</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i72"> |
| <td class="colFirst"><code>protected boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#shouldAllowOverRelation()">shouldAllowOverRelation</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="rowColor" id="i73"> |
| <td class="colFirst"><code><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#transform(java.util.function.UnaryOperator)">transform</a></span>​(<a href="https://docs.oracle.com/javase/9/docs/api/java/util/function/UnaryOperator.html?is-external=true" title="class or interface in java.util.function" class="externalLink">UnaryOperator</a><<a href="SqlValidator.Config.html" title="interface in org.apache.calcite.sql.validate">SqlValidator.Config</a>> transform)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns this SqlValidator, with the same state, applying |
| a transform to the config.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i74"> |
| <td class="colFirst"><code><a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#usingNames(org.apache.calcite.sql.SqlJoin)">usingNames</a></span>​(<a href="../SqlJoin.html" title="class in org.apache.calcite.sql">SqlJoin</a> join)</code></th> |
| <td class="colLast"> |
| <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> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i75"> |
| <td class="colFirst"><code><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validate(org.apache.calcite.sql.SqlNode)">validate</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> topNode)</code></th> |
| <td class="colLast"> |
| <div class="block">Validates an expression tree.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i76"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateAggregateParams(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.validate.SqlValidatorScope)">validateAggregateParams</a></span>​(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> aggCall, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> filter, |
| <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></th> |
| <td class="colLast"> |
| <div class="block">Validates parameters for aggregate function.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i77"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateCall(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope)">validateCall</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Validates a call to an operator.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i78"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateColumnListParams(org.apache.calcite.sql.SqlFunction,java.util.List,java.util.List)">validateColumnListParams</a></span>​(<a href="../SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a> function, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">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/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>> operands)</code></th> |
| <td class="colLast"> |
| <div class="block">Validates a COLUMN_LIST parameter.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i79"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateDataType(org.apache.calcite.sql.SqlDataTypeSpec)">validateDataType</a></span>​(<a href="../SqlDataTypeSpec.html" title="class in org.apache.calcite.sql">SqlDataTypeSpec</a> dataType)</code></th> |
| <td class="colLast"> |
| <div class="block">Validates a data type expression.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i80"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateDelete(org.apache.calcite.sql.SqlDelete)">validateDelete</a></span>​(<a href="../SqlDelete.html" title="class in org.apache.calcite.sql">SqlDelete</a> call)</code></th> |
| <td class="colLast"> |
| <div class="block">Validates a DELETE statement.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i81"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateDynamicParam(org.apache.calcite.sql.SqlDynamicParam)">validateDynamicParam</a></span>​(<a href="../SqlDynamicParam.html" title="class in org.apache.calcite.sql">SqlDynamicParam</a> dynamicParam)</code></th> |
| <td class="colLast"> |
| <div class="block">Validates a dynamic parameter.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i82"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateFeature(org.apache.calcite.runtime.Feature,org.apache.calcite.sql.parser.SqlParserPos)">validateFeature</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Validates that a particular feature is enabled.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i83"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateFrom(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope)">validateFrom</a></span>​(<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></th> |
| <td class="colLast"> |
| <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> |
| </td> |
| </tr> |
| <tr class="altColor" id="i84"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateGroupClause(org.apache.calcite.sql.SqlSelect)">validateGroupClause</a></span>​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></th> |
| <td class="colLast"> |
| <div class="block">Validates the GROUP BY clause of a SELECT statement.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i85"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateHavingClause(org.apache.calcite.sql.SqlSelect)">validateHavingClause</a></span>​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i86"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateIdentifier(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.validate.SqlValidatorScope)">validateIdentifier</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Resolves an identifier to a fully-qualified name.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i87"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateInsert(org.apache.calcite.sql.SqlInsert)">validateInsert</a></span>​(<a href="../SqlInsert.html" title="class in org.apache.calcite.sql">SqlInsert</a> insert)</code></th> |
| <td class="colLast"> |
| <div class="block">Validates an INSERT statement.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i88"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateIntervalQualifier(org.apache.calcite.sql.SqlIntervalQualifier)">validateIntervalQualifier</a></span>​(<a href="../SqlIntervalQualifier.html" title="class in org.apache.calcite.sql">SqlIntervalQualifier</a> qualifier)</code></th> |
| <td class="colLast"> |
| <div class="block">Validates a <a href="../SqlIntervalQualifier.html" title="class in org.apache.calcite.sql"><code>SqlIntervalQualifier</code></a>.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i89"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateJoin(org.apache.calcite.sql.SqlJoin,org.apache.calcite.sql.validate.SqlValidatorScope)">validateJoin</a></span>​(<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></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i90"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateLiteral(org.apache.calcite.sql.SqlLiteral)">validateLiteral</a></span>​(<a href="../SqlLiteral.html" title="class in org.apache.calcite.sql">SqlLiteral</a> literal)</code></th> |
| <td class="colLast"> |
| <div class="block">Validates a literal.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i91"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateMatchRecognize(org.apache.calcite.sql.SqlCall)">validateMatchRecognize</a></span>​(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call)</code></th> |
| <td class="colLast"> |
| <div class="block">Validates a MATCH_RECOGNIZE clause.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i92"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateMerge(org.apache.calcite.sql.SqlMerge)">validateMerge</a></span>​(<a href="../SqlMerge.html" title="class in org.apache.calcite.sql">SqlMerge</a> call)</code></th> |
| <td class="colLast"> |
| <div class="block">Validates a MERGE statement.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i93"> |
| <td class="colFirst"><code>boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateModality(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.validate.SqlModality,boolean)">validateModality</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Validates that a query is capable of producing a return of given modality |
| (relational or streaming).</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i94"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateNamespace(org.apache.calcite.sql.validate.SqlValidatorNamespace,org.apache.calcite.rel.type.RelDataType)">validateNamespace</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Validates a namespace.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i95"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateOrderList(org.apache.calcite.sql.SqlSelect)">validateOrderList</a></span>​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></th> |
| <td class="colLast"> |
| <div class="block">Validates the ORDER BY clause of a SELECT statement.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i96"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateOver(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope)">validateOver</a></span>​(<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></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="rowColor" id="i97"> |
| <td class="colFirst"><code><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateParameterizedExpression(org.apache.calcite.sql.SqlNode,java.util.Map)">validateParameterizedExpression</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> topNode, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,​<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>> nameToTypeMap)</code></th> |
| <td class="colLast"> |
| <div class="block">Validates an expression tree.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i98"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validatePivot(org.apache.calcite.sql.SqlPivot)">validatePivot</a></span>​(<a href="../SqlPivot.html" title="class in org.apache.calcite.sql">SqlPivot</a> pivot)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="rowColor" id="i99"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateQuery(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.rel.type.RelDataType)">validateQuery</a></span>​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</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></th> |
| <td class="colLast"> |
| <div class="block">Checks that a query is valid.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i100"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateSelect(org.apache.calcite.sql.SqlSelect,org.apache.calcite.rel.type.RelDataType)">validateSelect</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Validates a SELECT statement.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i101"> |
| <td class="colFirst"><code>protected <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateSelectList(org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlSelect,org.apache.calcite.rel.type.RelDataType)">validateSelectList</a></span>​(<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></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i102"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateSequenceValue(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlIdentifier)">validateSequenceValue</a></span>​(<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></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="rowColor" id="i103"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateUnnest(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.rel.type.RelDataType)">validateUnnest</a></span>​(<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></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i104"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateUpdate(org.apache.calcite.sql.SqlUpdate)">validateUpdate</a></span>​(<a href="../SqlUpdate.html" title="class in org.apache.calcite.sql">SqlUpdate</a> call)</code></th> |
| <td class="colLast"> |
| <div class="block">Validates an UPDATE statement.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i105"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateValues(org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope)">validateValues</a></span>​(<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></th> |
| <td class="colLast"> |
| <div class="block">Validates a VALUES clause.</div> |
| </td> |
| </tr> |
| <tr class="altColor" id="i106"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateWhereClause(org.apache.calcite.sql.SqlSelect)">validateWhereClause</a></span>​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="rowColor" id="i107"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateWhereOrOn(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode,java.lang.String)">validateWhereOrOn</a></span>​(<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/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> clause)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i108"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateWindow(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">validateWindow</a></span>​(<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, |
| <a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call)</code></th> |
| <td class="colLast"> |
| <div class="block">Validates the right-hand side of an OVER expression.</div> |
| </td> |
| </tr> |
| <tr class="rowColor" id="i109"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateWindowClause(org.apache.calcite.sql.SqlSelect)">validateWindowClause</a></span>​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor" id="i110"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateWith(org.apache.calcite.sql.SqlWith,org.apache.calcite.sql.validate.SqlValidatorScope)">validateWith</a></span>​(<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></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="rowColor" id="i111"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateWithItem(org.apache.calcite.sql.SqlWithItem)">validateWithItem</a></span>​(<a href="../SqlWithItem.html" title="class in org.apache.calcite.sql">SqlWithItem</a> withItem)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </div> |
| <div class="inheritedList"> |
| <h3>Methods inherited from class java.lang.<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3> |
| <a id="methods.inherited.from.class.java.lang.Object"> |
| <!-- --> |
| </a><code><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hashCode</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">toString</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></div> |
| <div class="inheritedList"> |
| <h3>Methods inherited from interface org.apache.calcite.sql.validate.<a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></h3> |
| <a id="methods.inherited.from.class.org.apache.calcite.sql.validate.SqlValidator"> |
| <!-- --> |
| </a><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="blockList"> |
| <!-- ============ FIELD DETAIL =========== --> |
| <li class="blockList"> |
| <section class="fieldDetails"><a id="field.detail"> |
| <!-- --> |
| </a> |
| <h2>Field Details</h2> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="TRACER">TRACER</a></h3> |
| <div class="memberSignature"><span class="modifiers">public static final</span> <span class="returnType">org.slf4j.Logger</span> <span class="memberName">TRACER</span></div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="UPDATE_SRC_ALIAS">UPDATE_SRC_ALIAS</a></h3> |
| <div class="memberSignature"><span class="modifiers">public static final</span> <span class="returnType"><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></span> <span class="memberName">UPDATE_SRC_ALIAS</span></div> |
| <div class="block">Alias generated for the source table when rewriting UPDATE to MERGE.</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../../constant-values.html#org.apache.calcite.sql.validate.SqlValidatorImpl.UPDATE_SRC_ALIAS">Constant Field Values</a></dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="UPDATE_TGT_ALIAS">UPDATE_TGT_ALIAS</a></h3> |
| <div class="memberSignature"><span class="modifiers">public static final</span> <span class="returnType"><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></span> <span class="memberName">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> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../../constant-values.html#org.apache.calcite.sql.validate.SqlValidatorImpl.UPDATE_TGT_ALIAS">Constant Field Values</a></dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="UPDATE_ANON_PREFIX">UPDATE_ANON_PREFIX</a></h3> |
| <div class="memberSignature"><span class="modifiers">public static final</span> <span class="returnType"><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></span> <span class="memberName">UPDATE_ANON_PREFIX</span></div> |
| <div class="block">Alias prefix generated for source columns when rewriting UPDATE to MERGE.</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../../constant-values.html#org.apache.calcite.sql.validate.SqlValidatorImpl.UPDATE_ANON_PREFIX">Constant Field Values</a></dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="idPositions">idPositions</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected final</span> <span class="returnType"><a href="https://docs.oracle.com/javase/9/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,​<a href="SqlValidatorImpl.IdInfo.html" title="class in org.apache.calcite.sql.validate">SqlValidatorImpl.IdInfo</a>></span> <span class="memberName">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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="scopes">scopes</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected final</span> <span class="returnType"><a href="https://docs.oracle.com/javase/9/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a><<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>,​<a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a>></span> <span class="memberName">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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="namespaces">namespaces</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected final</span> <span class="returnType"><a href="https://docs.oracle.com/javase/9/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a><<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>,​<a href="SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorNamespace</a>></span> <span class="memberName">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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="functionCallStack">functionCallStack</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected final</span> <span class="returnType"><a href="https://docs.oracle.com/javase/9/docs/api/java/util/Deque.html?is-external=true" title="class or interface in java.util" class="externalLink">Deque</a><<a href="SqlValidatorImpl.FunctionParamInfo.html" title="class in org.apache.calcite.sql.validate">SqlValidatorImpl.FunctionParamInfo</a>></span> <span class="memberName">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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="typeFactory">typeFactory</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected final</span> <span class="returnType"><a href="../../rel/type/RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a></span> <span class="memberName">typeFactory</span></div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="unknownType">unknownType</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected final</span> <span class="returnType"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="memberName">unknownType</span></div> |
| <div class="block">The type of dynamic parameters until a type is imposed on them.</div> |
| </section> |
| </li> |
| </ul> |
| </section> |
| </li> |
| <!-- ========= CONSTRUCTOR DETAIL ======== --> |
| <li class="blockList"> |
| <section class="constructorDetails"><a id="constructor.detail"> |
| <!-- --> |
| </a> |
| <h2>Constructor Details</h2> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a 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)">SqlValidatorImpl</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="memberName">SqlValidatorImpl</span>​(<span class="arguments"><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> |
| <dt><span class="paramLabel">Parameters:</span></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 class="blockList"> |
| <section class="methodDetails"><a id="method.detail"> |
| <!-- --> |
| </a> |
| <h2>Method Details</h2> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getConformance()">getConformance</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlConformance.html" title="interface in org.apache.calcite.sql.validate">SqlConformance</a></span> <span class="memberName">getConformance</span>()</div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getCatalogReader()">getCatalogReader</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlValidatorCatalogReader.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorCatalogReader</a></span> <span class="memberName">getCatalogReader</span>()</div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></dt> |
| <dd>catalog reader</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getOperatorTable()">getOperatorTable</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../SqlOperatorTable.html" title="interface in org.apache.calcite.sql">SqlOperatorTable</a></span> <span class="memberName">getOperatorTable</span>()</div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></dt> |
| <dd>operator table</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getTypeFactory()">getTypeFactory</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../../rel/type/RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a></span> <span class="memberName">getTypeFactory</span>()</div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></dt> |
| <dd>type factory</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getUnknownType()">getUnknownType</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="memberName">getUnknownType</span>()</div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></dt> |
| <dd>unknown type</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="expandStar(org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlSelect,boolean)">expandStar</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a></span> <span class="memberName">expandStar</span>​(<span class="arguments"><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="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></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><span class="returnLabel">Returns:</span></dt> |
| <dd>expanded select clause</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="declareCursor(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.validate.SqlValidatorScope)">declareCursor</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">declareCursor</span>​(<span class="arguments"><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="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="pushFunctionCall()">pushFunctionCall</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">pushFunctionCall</span>()</div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="popFunctionCall()">popFunctionCall</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">popFunctionCall</span>()</div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="getParentCursor(java.lang.String)">getParentCursor</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></span> <span class="memberName">getParentCursor</span>​(<span class="arguments"><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> columnListParamName)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>columnListParamName</code> - name of the column list parameter</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>name of the parent cursor</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="usingNames(org.apache.calcite.sql.SqlJoin)">usingNames</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>></span> <span class="memberName">usingNames</span>​(<span class="arguments"><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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="validate(org.apache.calcite.sql.SqlNode)">validate</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="memberName">validate</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> topNode)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>topNode</code> - top of expression tree to be validated</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>validated tree (possibly rewritten)</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="lookupHints(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.parser.SqlParserPos)">lookupHints</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="SqlMoniker.html" title="interface in org.apache.calcite.sql.validate">SqlMoniker</a>></span> <span class="memberName">lookupHints</span>​(<span class="arguments"><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="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></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><span class="returnLabel">Returns:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="lookupQualifiedName(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.parser.SqlParserPos)">lookupQualifiedName</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlMoniker.html" title="interface in org.apache.calcite.sql.validate">SqlMoniker</a></span> <span class="memberName">lookupQualifiedName</span>​(<span class="arguments"><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="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></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><span class="returnLabel">Returns:</span></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 an empty string</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="lookupNameCompletionHints(org.apache.calcite.sql.validate.SqlValidatorScope,java.util.List,org.apache.calcite.sql.parser.SqlParserPos,java.util.Collection)">lookupNameCompletionHints</a></h3> |
| <div class="memberSignature"><span class="modifiers">public final</span> <span class="returnType">void</span> <span class="memberName">lookupNameCompletionHints</span>​(<span class="arguments"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">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/javase/9/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">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> |
| <dt><span class="paramLabel">Parameters:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateParameterizedExpression(org.apache.calcite.sql.SqlNode,java.util.Map)">validateParameterizedExpression</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="memberName">validateParameterizedExpression</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> topNode, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,​<a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a>> nameToTypeMap)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></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><span class="returnLabel">Returns:</span></dt> |
| <dd>validated tree (possibly rewritten)</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateQuery(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.rel.type.RelDataType)">validateQuery</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateQuery</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</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> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateNamespace(org.apache.calcite.sql.validate.SqlValidatorNamespace,org.apache.calcite.rel.type.RelDataType)">validateNamespace</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">validateNamespace</span>​(<span class="arguments"><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> |
| <dt><span class="paramLabel">Parameters:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="getEmptyScope()">getEmptyScope</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="memberName">getEmptyScope</span>()</div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getCursorScope(org.apache.calcite.sql.SqlSelect)">getCursorScope</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="memberName">getCursorScope</span>​(<span class="arguments"><a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getWhereScope(org.apache.calcite.sql.SqlSelect)">getWhereScope</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="memberName">getWhereScope</span>​(<span class="arguments"><a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>select</code> - Query</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>naming scope of WHERE clause</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getSelectScope(org.apache.calcite.sql.SqlSelect)">getSelectScope</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="memberName">getSelectScope</span>​(<span class="arguments"><a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>select</code> - SELECT statement</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>naming scope for SELECT statement</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getRawSelectScope(org.apache.calcite.sql.SqlSelect)">getRawSelectScope</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SelectScope.html" title="class in org.apache.calcite.sql.validate">SelectScope</a></span> <span class="memberName">getRawSelectScope</span>​(<span class="arguments"><a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>select</code> - SELECT statement</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>naming scope for SELECT statement, sans any aggregating scope</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getHavingScope(org.apache.calcite.sql.SqlSelect)">getHavingScope</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="memberName">getHavingScope</span>​(<span class="arguments"><a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>select</code> - SELECT statement</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>naming scope for HAVING clause</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getGroupScope(org.apache.calcite.sql.SqlSelect)">getGroupScope</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="memberName">getGroupScope</span>​(<span class="arguments"><a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>select</code> - SELECT statement</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>naming scope for GROUP BY clause</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getFromScope(org.apache.calcite.sql.SqlSelect)">getFromScope</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="memberName">getFromScope</span>​(<span class="arguments"><a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>select</code> - SELECT statement</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>naming scope for FROM clause</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getOrderScope(org.apache.calcite.sql.SqlSelect)">getOrderScope</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="memberName">getOrderScope</span>​(<span class="arguments"><a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>select</code> - SELECT statement</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>naming scope for ORDER BY clause</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getMatchRecognizeScope(org.apache.calcite.sql.SqlMatchRecognize)">getMatchRecognizeScope</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="memberName">getMatchRecognizeScope</span>​(<span class="arguments"><a href="../SqlMatchRecognize.html" title="class in org.apache.calcite.sql">SqlMatchRecognize</a> node)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>node</code> - Match recognize</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>naming scope for Match recognize clause</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getJoinScope(org.apache.calcite.sql.SqlNode)">getJoinScope</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="memberName">getJoinScope</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>node</code> - The item in the FROM clause which contains the ON or USING |
| expression</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>naming scope for JOIN clause</dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="SqlValidator.html#getFromScope(org.apache.calcite.sql.SqlSelect)"><code>SqlValidator.getFromScope(org.apache.calcite.sql.SqlSelect)</code></a></dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getOverScope(org.apache.calcite.sql.SqlNode)">getOverScope</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="memberName">getOverScope</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>node</code> - Node</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Scope</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getNamespace(org.apache.calcite.sql.SqlNode)">getNamespace</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorNamespace</a></span> <span class="memberName">getNamespace</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>node</code> - Parse tree node</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>namespace of node</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="performUnconditionalRewrites(org.apache.calcite.sql.SqlNode,boolean)">performUnconditionalRewrites</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="memberName">performUnconditionalRewrites</span>​(<span class="arguments"><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.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>node</code> - expression to be rewritten</dd> |
| <dd><code>underFrom</code> - whether node appears directly under a FROM clause</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>rewritten expression</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getSelfJoinExprForUpdate(org.apache.calcite.sql.SqlNode,java.lang.String)">getSelfJoinExprForUpdate</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="memberName">getSelfJoinExprForUpdate</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> table, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">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> |
| <dt><span class="paramLabel">Parameters:</span></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><span class="returnLabel">Returns:</span></dt> |
| <dd>expression for unique identifier, or null to prevent conversion</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="createSourceSelectForUpdate(org.apache.calcite.sql.SqlUpdate)">createSourceSelectForUpdate</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType"><a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a></span> <span class="memberName">createSourceSelectForUpdate</span>​(<span class="arguments"><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> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>call</code> - Call to the UPDATE operator</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>select statement</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="createSourceSelectForDelete(org.apache.calcite.sql.SqlDelete)">createSourceSelectForDelete</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType"><a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a></span> <span class="memberName">createSourceSelectForDelete</span>​(<span class="arguments"><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> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>call</code> - Call to the DELETE operator</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>select statement</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getValidatedNodeType(org.apache.calcite.sql.SqlNode)">getValidatedNodeType</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="memberName">getValidatedNodeType</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>node</code> - the node of interest</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>validated type, never null</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getValidatedNodeTypeIfKnown(org.apache.calcite.sql.SqlNode)">getValidatedNodeTypeIfKnown</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="memberName">getValidatedNodeTypeIfKnown</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>node</code> - the node of interest</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>validated type, or null if unknown or not applicable</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="setValidatedNodeType(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)">setValidatedNodeType</a></h3> |
| <div class="memberSignature"><span class="modifiers">public final</span> <span class="returnType">void</span> <span class="memberName">setValidatedNodeType</span>​(<span class="arguments"><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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="removeValidatedNodeType(org.apache.calcite.sql.SqlNode)">removeValidatedNodeType</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">removeValidatedNodeType</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>node</code> - node to be removed</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="makeNullaryCall(org.apache.calcite.sql.SqlIdentifier)">makeNullaryCall</a></h3> |
| <div class="memberSignature"><span class="annotations"><a href="https://docs.oracle.com/javase/9/docs/api/javax/annotation/Nullable.html?is-external=true" title="class or interface in javax.annotation" class="externalLink">@Nullable</a> |
| </span><span class="modifiers">public</span> <span class="returnType"><a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a></span> <span class="memberName">makeNullaryCall</span>​(<span class="arguments"><a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a> id)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="deriveType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode)">deriveType</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="memberName">deriveType</span>​(<span class="arguments"><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="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>scope</code> - Syntactic scope</dd> |
| <dd><code>expr</code> - Parse tree node</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Type of the SqlNode. Should never return <code>NULL</code></dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a 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)">deriveConstructorType</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="memberName">deriveConstructorType</span>​(<span class="arguments"><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, |
| <a href="../SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a> resolvedConstructor, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">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="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></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><span class="returnLabel">Returns:</span></dt> |
| <dd>Resolved type of constructor</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="handleUnresolvedFunction(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlFunction,java.util.List,java.util.List)">handleUnresolvedFunction</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../../runtime/CalciteException.html" title="class in org.apache.calcite.runtime">CalciteException</a></span> <span class="memberName">handleUnresolvedFunction</span>​(<span class="arguments"><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> unresolvedFunction, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">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/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>> argNames)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="SqlValidator.html#handleUnresolvedFunction(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlFunction,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 a an |
| appropriately descriptive error, which caller must throw.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="SqlValidator.html#handleUnresolvedFunction(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlFunction,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><span class="paramLabel">Parameters:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="inferUnknownTypes(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode)">inferUnknownTypes</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">inferUnknownTypes</span>​(<span class="arguments"><a href="https://docs.oracle.com/javase/9/docs/api/javax/annotation/Nonnull.html?is-external=true" title="class or interface in javax.annotation" class="externalLink">@Nonnull</a> |
| <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> inferredType, |
| <a href="https://docs.oracle.com/javase/9/docs/api/javax/annotation/Nonnull.html?is-external=true" title="class or interface in javax.annotation" class="externalLink">@Nonnull</a> |
| <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> scope, |
| <a href="https://docs.oracle.com/javase/9/docs/api/javax/annotation/Nonnull.html?is-external=true" title="class or interface in javax.annotation" class="externalLink">@Nonnull</a> |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="addToSelectList(java.util.List,java.util.Set,java.util.List,org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SelectScope,boolean)">addToSelectList</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">addToSelectList</span>​(<span class="arguments"><a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>> list, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util" class="externalLink">Set</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>> aliases, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/util/Map.Entry.html?is-external=true" title="class or interface in java.util" class="externalLink">Map.Entry</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>,​<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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="deriveAlias(org.apache.calcite.sql.SqlNode,int)">deriveAlias</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></span> <span class="memberName">deriveAlias</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node, |
| int ordinal)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>node</code> - Expression</dd> |
| <dd><code>ordinal</code> - Ordinal of expression</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>derived alias, or null if no alias can be derived and ordinal is |
| less than zero</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="shouldAllowIntermediateOrderBy()">shouldAllowIntermediateOrderBy</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">boolean</span> <span class="memberName">shouldAllowIntermediateOrderBy</span>()</div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="createMatchRecognizeNameSpace(org.apache.calcite.sql.SqlMatchRecognize,org.apache.calcite.sql.SqlNode)">createMatchRecognizeNameSpace</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType"><a href="MatchRecognizeNamespace.html" title="class in org.apache.calcite.sql.validate">MatchRecognizeNamespace</a></span> <span class="memberName">createMatchRecognizeNameSpace</span>​(<span class="arguments"><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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="createPivotNameSpace(org.apache.calcite.sql.SqlPivot,org.apache.calcite.sql.SqlNode)">createPivotNameSpace</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType"><a href="PivotNamespace.html" title="class in org.apache.calcite.sql.validate">PivotNamespace</a></span> <span class="memberName">createPivotNameSpace</span>​(<span class="arguments"><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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="registerNamespace(org.apache.calcite.sql.validate.SqlValidatorScope,java.lang.String,org.apache.calcite.sql.validate.SqlValidatorNamespace,boolean)">registerNamespace</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">registerNamespace</span>​(<span class="arguments"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> usingScope, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">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> |
| <dt><span class="paramLabel">Parameters:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="shouldAllowOverRelation()">shouldAllowOverRelation</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">boolean</span> <span class="memberName">shouldAllowOverRelation</span>()</div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="createSelectNamespace(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.SqlNode)">createSelectNamespace</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType"><a href="SelectNamespace.html" title="class in org.apache.calcite.sql.validate">SelectNamespace</a></span> <span class="memberName">createSelectNamespace</span>​(<span class="arguments"><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> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>select</code> - Select node</dd> |
| <dd><code>enclosingNode</code> - Enclosing node</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Select namespace</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="createSetopNamespace(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlNode)">createSetopNamespace</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType"><a href="SetopNamespace.html" title="class in org.apache.calcite.sql.validate">SetopNamespace</a></span> <span class="memberName">createSetopNamespace</span>​(<span class="arguments"><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> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>call</code> - Call to set operation</dd> |
| <dd><code>enclosingNode</code> - Enclosing node</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Set operation namespace</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="isAggregate(org.apache.calcite.sql.SqlSelect)">isAggregate</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">boolean</span> <span class="memberName">isAggregate</span>​(<span class="arguments"><a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>select</code> - SELECT statement</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>whether SELECT statement is an aggregation</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="isNestedAggregateWindow(org.apache.calcite.sql.SqlNode)">isNestedAggregateWindow</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">boolean</span> <span class="memberName">isNestedAggregateWindow</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="isOverAggregateWindow(org.apache.calcite.sql.SqlNode)">isOverAggregateWindow</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">boolean</span> <span class="memberName">isOverAggregateWindow</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</span></div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getAggregate(org.apache.calcite.sql.SqlSelect)">getAggregate</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="memberName">getAggregate</span>​(<span class="arguments"><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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="isAggregate(org.apache.calcite.sql.SqlNode)">isAggregate</a></h3> |
| <div class="memberSignature"><span class="annotations"><a href="https://docs.oracle.com/javase/9/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang" class="externalLink">@Deprecated</a> |
| </span><span class="modifiers">public</span> <span class="returnType">boolean</span> <span class="memberName">isAggregate</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> selectNode)</span></div> |
| <div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>selectNode</code> - Expression in SELECT clause</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>whether expression is an aggregate function</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateIdentifier(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.validate.SqlValidatorScope)">validateIdentifier</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateIdentifier</span>​(<span class="arguments"><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="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>id</code> - Identifier</dd> |
| <dd><code>scope</code> - Naming scope</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateLiteral(org.apache.calcite.sql.SqlLiteral)">validateLiteral</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateLiteral</span>​(<span class="arguments"><a href="../SqlLiteral.html" title="class in org.apache.calcite.sql">SqlLiteral</a> literal)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>literal</code> - Literal</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateIntervalQualifier(org.apache.calcite.sql.SqlIntervalQualifier)">validateIntervalQualifier</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateIntervalQualifier</span>​(<span class="arguments"><a href="../SqlIntervalQualifier.html" title="class in org.apache.calcite.sql">SqlIntervalQualifier</a> qualifier)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>qualifier</code> - Interval qualifier</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateFrom(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope)">validateFrom</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">validateFrom</span>​(<span class="arguments"><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> |
| <dt><span class="paramLabel">Parameters:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateOver(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope)">validateOver</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">validateOver</span>​(<span class="arguments"><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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateUnnest(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.rel.type.RelDataType)">validateUnnest</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">validateUnnest</span>​(<span class="arguments"><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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateJoin(org.apache.calcite.sql.SqlJoin,org.apache.calcite.sql.validate.SqlValidatorScope)">validateJoin</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">validateJoin</span>​(<span class="arguments"><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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateSelect(org.apache.calcite.sql.SqlSelect,org.apache.calcite.rel.type.RelDataType)">validateSelect</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">validateSelect</span>​(<span class="arguments"><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> |
| <dt><span class="paramLabel">Parameters:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateModality(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.validate.SqlModality,boolean)">validateModality</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">boolean</span> <span class="memberName">validateModality</span>​(<span class="arguments"><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="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></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><span class="returnLabel">Returns:</span></dt> |
| <dd>whether query supports the given modality</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateWindowClause(org.apache.calcite.sql.SqlSelect)">validateWindowClause</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">validateWindowClause</span>​(<span class="arguments"><a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateWith(org.apache.calcite.sql.SqlWith,org.apache.calcite.sql.validate.SqlValidatorScope)">validateWith</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateWith</span>​(<span class="arguments"><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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateWithItem(org.apache.calcite.sql.SqlWithItem)">validateWithItem</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateWithItem</span>​(<span class="arguments"><a href="../SqlWithItem.html" title="class in org.apache.calcite.sql">SqlWithItem</a> withItem)</span></div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateSequenceValue(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlIdentifier)">validateSequenceValue</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateSequenceValue</span>​(<span class="arguments"><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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="getWithScope(org.apache.calcite.sql.SqlNode)">getWithScope</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a></span> <span class="memberName">getWithScope</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> withItem)</span></div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="getTypeCoercion()">getTypeCoercion</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="implicit/TypeCoercion.html" title="interface in org.apache.calcite.sql.validate.implicit">TypeCoercion</a></span> <span class="memberName">getTypeCoercion</span>()</div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="config()">config</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlValidator.Config.html" title="interface in org.apache.calcite.sql.validate">SqlValidator.Config</a></span> <span class="memberName">config</span>()</div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="transform(java.util.function.UnaryOperator)">transform</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a></span> <span class="memberName">transform</span>​(<span class="arguments"><a href="https://docs.oracle.com/javase/9/docs/api/java/util/function/UnaryOperator.html?is-external=true" title="class or interface in java.util.function" class="externalLink">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="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateOrderList(org.apache.calcite.sql.SqlSelect)">validateOrderList</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">validateOrderList</span>​(<span class="arguments"><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> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>select</code> - Select statement</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="expandOrderExpr(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.SqlNode)">expandOrderExpr</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="memberName">expandOrderExpr</span>​(<span class="arguments"><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="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>select</code> - Select statement which contains ORDER BY</dd> |
| <dd><code>orderExpr</code> - Expression in the ORDER BY clause.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Expression translated into SELECT clause semantics</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateGroupClause(org.apache.calcite.sql.SqlSelect)">validateGroupClause</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">validateGroupClause</span>​(<span class="arguments"><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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateWhereClause(org.apache.calcite.sql.SqlSelect)">validateWhereClause</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">validateWhereClause</span>​(<span class="arguments"><a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateWhereOrOn(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode,java.lang.String)">validateWhereOrOn</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">validateWhereOrOn</span>​(<span class="arguments"><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/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a> clause)</span></div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateHavingClause(org.apache.calcite.sql.SqlSelect)">validateHavingClause</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">validateHavingClause</span>​(<span class="arguments"><a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</span></div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateSelectList(org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlSelect,org.apache.calcite.rel.type.RelDataType)">validateSelectList</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="memberName">validateSelectList</span>​(<span class="arguments"><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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="createTargetRowType(org.apache.calcite.sql.validate.SqlValidatorTable,org.apache.calcite.sql.SqlNodeList,boolean)">createTargetRowType</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="memberName">createTargetRowType</span>​(<span class="arguments"><a href="SqlValidatorTable.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorTable</a> table, |
| <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> |
| <dt><span class="paramLabel">Parameters:</span></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><span class="returnLabel">Returns:</span></dt> |
| <dd>Rowtype</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateInsert(org.apache.calcite.sql.SqlInsert)">validateInsert</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateInsert</span>​(<span class="arguments"><a href="../SqlInsert.html" title="class in org.apache.calcite.sql">SqlInsert</a> insert)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>insert</code> - INSERT statement</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getLogicalTargetRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)">getLogicalTargetRowType</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="memberName">getLogicalTargetRowType</span>​(<span class="arguments"><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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="getLogicalSourceRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)">getLogicalSourceRowType</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="memberName">getLogicalSourceRowType</span>​(<span class="arguments"><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 class="blockList"> |
| <section class="detail"> |
| <h3><a 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)">checkTypeAssignment</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">checkTypeAssignment</span>​(<span class="arguments"><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> |
| <dt><span class="paramLabel">Parameters:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateDelete(org.apache.calcite.sql.SqlDelete)">validateDelete</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateDelete</span>​(<span class="arguments"><a href="../SqlDelete.html" title="class in org.apache.calcite.sql">SqlDelete</a> call)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>call</code> - DELETE statement</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateUpdate(org.apache.calcite.sql.SqlUpdate)">validateUpdate</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateUpdate</span>​(<span class="arguments"><a href="../SqlUpdate.html" title="class in org.apache.calcite.sql">SqlUpdate</a> call)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>call</code> - UPDATE statement</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateMerge(org.apache.calcite.sql.SqlMerge)">validateMerge</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateMerge</span>​(<span class="arguments"><a href="../SqlMerge.html" title="class in org.apache.calcite.sql">SqlMerge</a> call)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>call</code> - MERGE statement</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateValues(org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope)">validateValues</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">validateValues</span>​(<span class="arguments"><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> |
| <dt><span class="paramLabel">Parameters:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateDataType(org.apache.calcite.sql.SqlDataTypeSpec)">validateDataType</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateDataType</span>​(<span class="arguments"><a href="../SqlDataTypeSpec.html" title="class in org.apache.calcite.sql">SqlDataTypeSpec</a> dataType)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>dataType</code> - Data type</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateDynamicParam(org.apache.calcite.sql.SqlDynamicParam)">validateDynamicParam</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateDynamicParam</span>​(<span class="arguments"><a href="../SqlDynamicParam.html" title="class in org.apache.calcite.sql">SqlDynamicParam</a> dynamicParam)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>dynamicParam</code> - Dynamic parameter</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getValidationErrorFunction()">getValidationErrorFunction</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">org.apache.calcite.sql.validate.SqlValidatorImpl.ValidationErrorFunction</span> <span class="memberName">getValidationErrorFunction</span>()</div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="newValidationError(org.apache.calcite.sql.SqlNode,org.apache.calcite.runtime.Resources.ExInst)">newValidationError</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../../runtime/CalciteContextException.html" title="class in org.apache.calcite.runtime">CalciteContextException</a></span> <span class="memberName">newValidationError</span>​(<span class="arguments"><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="descfrmTypeLabel">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/javase/9/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>Exception</code></a>) and the output exception is unchecked (it derives from |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/lang/RuntimeException.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>RuntimeException</code></a>). This is intentional -- it should remind code |
| authors to provide context for their validation errors.</p></div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>node</code> - The place where the exception occurred, not null</dd> |
| <dd><code>e</code> - The validation error</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Exception containing positional information, never null</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getWindowByName(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.validate.SqlValidatorScope)">getWindowByName</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType"><a href="../SqlWindow.html" title="class in org.apache.calcite.sql">SqlWindow</a></span> <span class="memberName">getWindowByName</span>​(<span class="arguments"><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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="resolveWindow(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope)">resolveWindow</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../SqlWindow.html" title="class in org.apache.calcite.sql">SqlWindow</a></span> <span class="memberName">resolveWindow</span>​(<span class="arguments"><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="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></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><span class="returnLabel">Returns:</span></dt> |
| <dd>A window</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getOriginal(org.apache.calcite.sql.SqlNode)">getOriginal</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="memberName">getOriginal</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expr)</span></div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="setOriginal(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.SqlNode)">setOriginal</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">setOriginal</span>​(<span class="arguments"><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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateWindow(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)">validateWindow</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateWindow</span>​(<span class="arguments"><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, |
| <a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateMatchRecognize(org.apache.calcite.sql.SqlCall)">validateMatchRecognize</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateMatchRecognize</span>​(<span class="arguments"><a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>call</code> - MATCH_RECOGNIZE clause</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validatePivot(org.apache.calcite.sql.SqlPivot)">validatePivot</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validatePivot</span>​(<span class="arguments"><a href="../SqlPivot.html" title="class in org.apache.calcite.sql">SqlPivot</a> pivot)</span></div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateAggregateParams(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.validate.SqlValidatorScope)">validateAggregateParams</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateAggregateParams</span>​(<span class="arguments"><a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> aggCall, |
| <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> filter, |
| <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="descfrmTypeLabel">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.validate.SqlValidatorScope)">SqlValidator</a></code></span></div> |
| <div class="block">Validates parameters for aggregate function.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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.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><span class="paramLabel">Parameters:</span></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>orderList</code> - Ordering specification (<code>WITHING GROUP</code> clause), |
| or null</dd> |
| <dd><code>scope</code> - Syntactic scope</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateCall(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope)">validateCall</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateCall</span>​(<span class="arguments"><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="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>call</code> - Operator call</dd> |
| <dd><code>scope</code> - Naming scope</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateFeature(org.apache.calcite.runtime.Feature,org.apache.calcite.sql.parser.SqlParserPos)">validateFeature</a></h3> |
| <div class="memberSignature"><span class="modifiers">protected</span> <span class="returnType">void</span> <span class="memberName">validateFeature</span>​(<span class="arguments"><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> |
| <dt><span class="paramLabel">Parameters:</span></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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="expandSelectExpr(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SelectScope,org.apache.calcite.sql.SqlSelect)">expandSelectExpr</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="memberName">expandSelectExpr</span>​(<span class="arguments"><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 class="blockList"> |
| <section class="detail"> |
| <h3><a id="expand(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope)">expand</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="memberName">expand</span>​(<span class="arguments"><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="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>expr</code> - Expression</dd> |
| <dd><code>scope</code> - Scope</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Expanded expression</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="expandGroupByOrHavingExpr(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlSelect,boolean)">expandGroupByOrHavingExpr</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a></span> <span class="memberName">expandGroupByOrHavingExpr</span>​(<span class="arguments"><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, |
| boolean havingExpression)</span></div> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="isSystemField(org.apache.calcite.rel.type.RelDataTypeField)">isSystemField</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">boolean</span> <span class="memberName">isSystemField</span>​(<span class="arguments"><a href="../../rel/type/RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a> field)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>field</code> - Field</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>whether field is a system field</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getFieldOrigins(org.apache.calcite.sql.SqlNode)">getFieldOrigins</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="https://docs.oracle.com/javase/9/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>>></span> <span class="memberName">getFieldOrigins</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> sqlQuery)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>sqlQuery</code> - Query</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Description of how each field in the row type maps to a schema |
| object</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="getParameterRowType(org.apache.calcite.sql.SqlNode)">getParameterRowType</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType"><a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a></span> <span class="memberName">getParameterRowType</span>​(<span class="arguments"><a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> sqlQuery)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>sqlQuery</code> - Query</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Record type</dd> |
| </dl> |
| </section> |
| </li> |
| <li class="blockList"> |
| <section class="detail"> |
| <h3><a id="validateColumnListParams(org.apache.calcite.sql.SqlFunction,java.util.List,java.util.List)">validateColumnListParams</a></h3> |
| <div class="memberSignature"><span class="modifiers">public</span> <span class="returnType">void</span> <span class="memberName">validateColumnListParams</span>​(<span class="arguments"><a href="../SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a> function, |
| <a href="https://docs.oracle.com/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">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/javase/9/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util" class="externalLink">List</a><<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a>> operands)</span></div> |
| <div class="block"><span class="descfrmTypeLabel">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> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></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> |
| </div> |
| <!-- ========= END OF CLASS DATA ========= --> |
| </main> |
| <footer role="contentinfo"> |
| <nav role="navigation"> |
| <!-- ======= START OF BOTTOM NAVBAR ====== --> |
| <div class="bottomNav"><a id="navbar.bottom"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> |
| <a id="navbar.bottom.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../../index.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">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">Help</a></li> |
| </ul> |
| <div class="aboutLanguage"><b>Apache Calcite</b></div> |
| </div> |
| <div class="subNav"> |
| <div> |
| <ul class="subNavList"> |
| <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="subNavList"> |
| <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> |
| <a id="skip.navbar.bottom"> |
| <!-- --> |
| </a> |
| <!-- ======== END OF BOTTOM NAVBAR ======= --> |
| </nav> |
| <p class="legalCopy"><small>Copyright © 2012-2020 Apache Software Foundation. All Rights Reserved.</small></p> |
| </footer> |
| </div> |
| </div> |
| </body> |
| </html> |