| <!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"> |
| <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style"> |
| <link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.css" title="Style"> |
| <script type="text/javascript" src="../../../../../script.js"></script> |
| <script type="text/javascript" src="../../../../../jquery/jszip/dist/jszip.min.js"></script> |
| <script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script> |
| <!--[if IE]> |
| <script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script> |
| <![endif]--> |
| <script type="text/javascript" src="../../../../../jquery/jquery-3.3.1.js"></script> |
| <script type="text/javascript" src="../../../../../jquery/jquery-migrate-3.0.1.js"></script> |
| <script type="text/javascript" src="../../../../../jquery/jquery-ui.js"></script> |
| </head> |
| <body> |
| <script type="text/javascript"><!-- |
| try { |
| if (location.href.indexOf('is-external=true') == -1) { |
| parent.document.title="SqlValidatorImpl (Apache Calcite calcite API)"; |
| } |
| } |
| catch(err) { |
| } |
| //--> |
| 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":42,"i53":10,"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}; |
| 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 = "../../../../../"; |
| var useModuleDirectories = true; |
| loadScripts(document, 'script');</script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| <header role="banner"> |
| <nav role="navigation"> |
| <div class="fixedNav"> |
| <!-- ========= 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"> |
| <ul class="navList" id="allclasses_navbar_top"> |
| <li><a href="../../../../../allclasses.html">All Classes</a></li> |
| </ul> |
| <ul class="navListSearch"> |
| <li><label for="search">SEARCH:</label> |
| <input type="text" id="search" value="search" disabled="disabled"> |
| <input type="reset" id="reset" value="reset" disabled="disabled"> |
| </li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_top"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| </div> |
| <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> |
| <a id="skip.navbar.top"> |
| <!-- --> |
| </a></div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| </div> |
| <div class="navPadding"> </div> |
| <script type="text/javascript"><!-- |
| $('.navPadding').css('padding-top', $('.fixedNav').css("height")); |
| //--> |
| </script> |
| </nav> |
| </header> |
| <!-- ======== START OF CLASS DATA ======== --> |
| <main role="main"> |
| <div class="header"> |
| <div class="subTitle"><span class="packageLabelInType">Package</span> <a href="package-summary.html">org.apache.calcite.sql.validate</a></div> |
| <h2 title="Class SqlValidatorImpl" class="title">Class SqlValidatorImpl</h2> |
| </div> |
| <div class="contentContainer"> |
| <ul class="inheritance"> |
| <li><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></li> |
| <li> |
| <ul class="inheritance"> |
| <li>org.apache.calcite.sql.validate.SqlValidatorImpl</li> |
| </ul> |
| </li> |
| </ul> |
| <div class="description"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <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> |
| </li> |
| </ul> |
| </div> |
| <div class="summary"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ======== NESTED CLASS SUMMARY ======== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="nested.class.summary"> |
| <!-- --> |
| </a> |
| <h3>Nested Class Summary</h3> |
| <table class="memberSummary"> |
| <caption><span>Nested Classes</span><span class="tabEnd"> </span></caption> |
| <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> |
| <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> |
| </table> |
| <ul class="blockList"> |
| <li class="blockList"><a id="nested.classes.inherited.from.class.org.apache.calcite.sql.validate.SqlValidator"> |
| <!-- --> |
| </a> |
| <h3>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></h3> |
| <code><a href="SqlValidator.Config.html" title="interface in org.apache.calcite.sql.validate">SqlValidator.Config</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| <!-- =========== FIELD SUMMARY =========== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="field.summary"> |
| <!-- --> |
| </a> |
| <h3>Field Summary</h3> |
| <table class="memberSummary"> |
| <caption><span>Fields</span><span class="tabEnd"> </span></caption> |
| <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> |
| <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> |
| </table> |
| </li> |
| </ul> |
| </section> |
| <!-- ======== CONSTRUCTOR SUMMARY ======== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="constructor.summary"> |
| <!-- --> |
| </a> |
| <h3>Constructor Summary</h3> |
| <table class="memberSummary"> |
| <caption><span>Constructors</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier</th> |
| <th class="colSecond" scope="col">Constructor</th> |
| <th class="colLast" scope="col">Description</th> |
| </tr> |
| <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> |
| </table> |
| </li> |
| </ul> |
| </section> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="method.summary"> |
| <!-- --> |
| </a> |
| <h3>Method Summary</h3> |
| <table class="memberSummary"> |
| <caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd"> </span></span></caption> |
| <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> |
| <tr id="i0" class="altColor"> |
| <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 id="i1" class="rowColor"> |
| <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 id="i2" class="altColor"> |
| <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 id="i3" class="rowColor"> |
| <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 id="i4" class="altColor"> |
| <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 id="i5" class="rowColor"> |
| <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 id="i6" class="altColor"> |
| <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 id="i7" class="rowColor"> |
| <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 id="i8" 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="#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 id="i9" class="rowColor"> |
| <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 id="i10" class="altColor"> |
| <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 id="i11" class="rowColor"> |
| <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 id="i12" class="altColor"> |
| <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 id="i13" class="rowColor"> |
| <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 id="i14" class="altColor"> |
| <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 id="i15" class="rowColor"> |
| <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 id="i16" class="altColor"> |
| <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 id="i17" class="rowColor"> |
| <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 id="i18" class="altColor"> |
| <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 id="i19" class="rowColor"> |
| <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 id="i20" class="altColor"> |
| <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 id="i21" class="rowColor"> |
| <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 id="i22" class="altColor"> |
| <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 id="i23" class="rowColor"> |
| <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 id="i24" class="altColor"> |
| <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 id="i25" class="rowColor"> |
| <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 id="i26" class="altColor"> |
| <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 id="i27" class="rowColor"> |
| <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 id="i28" 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="#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 id="i29" class="rowColor"> |
| <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 id="i30" class="altColor"> |
| <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 id="i31" class="rowColor"> |
| <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 id="i32" class="altColor"> |
| <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 id="i33" class="rowColor"> |
| <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 id="i34" class="altColor"> |
| <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 id="i35" class="rowColor"> |
| <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 id="i36" class="altColor"> |
| <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 id="i37" class="rowColor"> |
| <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 id="i38" class="altColor"> |
| <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 id="i39" class="rowColor"> |
| <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 id="i40" class="altColor"> |
| <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 id="i41" class="rowColor"> |
| <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 id="i42" class="altColor"> |
| <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 id="i43" class="rowColor"> |
| <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 id="i44" class="altColor"> |
| <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 id="i45" class="rowColor"> |
| <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 id="i46" class="altColor"> |
| <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 id="i47" class="rowColor"> |
| <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 id="i48" class="altColor"> |
| <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 id="i49" class="rowColor"> |
| <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 id="i50" class="altColor"> |
| <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 id="i51" class="rowColor"> |
| <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 id="i52" class="altColor"> |
| <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 id="i53" class="rowColor"> |
| <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 id="i54" class="altColor"> |
| <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 id="i55" class="rowColor"> |
| <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 id="i56" class="altColor"> |
| <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 id="i57" class="rowColor"> |
| <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 id="i58" class="altColor"> |
| <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 id="i59" class="rowColor"> |
| <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 id="i60" class="altColor"> |
| <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 id="i61" class="rowColor"> |
| <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 id="i62" class="altColor"> |
| <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 id="i63" class="rowColor"> |
| <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 id="i64" class="altColor"> |
| <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 id="i65" class="rowColor"> |
| <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 id="i66" class="altColor"> |
| <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 id="i67" class="rowColor"> |
| <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 id="i68" class="altColor"> |
| <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 id="i69" class="rowColor"> |
| <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 id="i70" class="altColor"> |
| <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 id="i71" class="rowColor"> |
| <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 id="i72" class="altColor"> |
| <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 id="i73" class="rowColor"> |
| <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 id="i74" class="altColor"> |
| <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 id="i75" class="rowColor"> |
| <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 id="i76" class="altColor"> |
| <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 id="i77" class="rowColor"> |
| <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 id="i78" class="altColor"> |
| <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 id="i79" class="rowColor"> |
| <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 id="i80" class="altColor"> |
| <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 id="i81" class="rowColor"> |
| <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 id="i82" class="altColor"> |
| <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 id="i83" class="rowColor"> |
| <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 id="i84" class="altColor"> |
| <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 id="i85" class="rowColor"> |
| <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 id="i86" class="altColor"> |
| <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 id="i87" class="rowColor"> |
| <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 id="i88" class="altColor"> |
| <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 id="i89" class="rowColor"> |
| <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 id="i90" class="altColor"> |
| <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 id="i91" class="rowColor"> |
| <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 id="i92" class="altColor"> |
| <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 id="i93" class="rowColor"> |
| <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 id="i94" class="altColor"> |
| <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 id="i95" class="rowColor"> |
| <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 id="i96" class="altColor"> |
| <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 id="i97" class="rowColor"> |
| <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 id="i98" class="altColor"> |
| <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 id="i99" class="rowColor"> |
| <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 id="i100" class="altColor"> |
| <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 id="i101" class="rowColor"> |
| <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 id="i102" class="altColor"> |
| <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 id="i103" class="rowColor"> |
| <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 id="i104" class="altColor"> |
| <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 id="i105" class="rowColor"> |
| <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 id="i106" class="altColor"> |
| <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 id="i107" class="rowColor"> |
| <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 id="i108" class="altColor"> |
| <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 id="i109" class="rowColor"> |
| <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> |
| </table> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object"> |
| <!-- --> |
| </a> |
| <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> |
| <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></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.org.apache.calcite.sql.validate.SqlValidator"> |
| <!-- --> |
| </a> |
| <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> |
| <code><a href="SqlValidator.html#resolveWindow(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,boolean)">resolveWindow</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| </li> |
| </ul> |
| </div> |
| <div class="details"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ============ FIELD DETAIL =========== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="field.detail"> |
| <!-- --> |
| </a> |
| <h3>Field Detail</h3> |
| <a id="TRACER"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>TRACER</h4> |
| <pre>public static final org.slf4j.Logger TRACER</pre> |
| </li> |
| </ul> |
| <a id="UPDATE_SRC_ALIAS"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>UPDATE_SRC_ALIAS</h4> |
| <pre>public static final <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> UPDATE_SRC_ALIAS</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="UPDATE_TGT_ALIAS"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>UPDATE_TGT_ALIAS</h4> |
| <pre>public static final <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> UPDATE_TGT_ALIAS</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="UPDATE_ANON_PREFIX"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>UPDATE_ANON_PREFIX</h4> |
| <pre>public static final <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> UPDATE_ANON_PREFIX</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="idPositions"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>idPositions</h4> |
| <pre>protected final <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>> idPositions</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="scopes"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>scopes</h4> |
| <pre>protected final <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>> scopes</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="namespaces"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>namespaces</h4> |
| <pre>protected final <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>> namespaces</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="functionCallStack"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>functionCallStack</h4> |
| <pre>protected final <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>> functionCallStack</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="typeFactory"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>typeFactory</h4> |
| <pre>protected final <a href="../../rel/type/RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a> typeFactory</pre> |
| </li> |
| </ul> |
| <a id="unknownType"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>unknownType</h4> |
| <pre>protected final <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> unknownType</pre> |
| <div class="block">The type of dynamic parameters until a type is imposed on them.</div> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| <!-- ========= CONSTRUCTOR DETAIL ======== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="constructor.detail"> |
| <!-- --> |
| </a> |
| <h3>Constructor 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)"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>SqlValidatorImpl</h4> |
| <pre>protected SqlValidatorImpl​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| <!-- ============ METHOD DETAIL ========== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="method.detail"> |
| <!-- --> |
| </a> |
| <h3>Method Detail</h3> |
| <a id="getConformance()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getConformance</h4> |
| <pre class="methodSignature">public <a href="SqlConformance.html" title="interface in org.apache.calcite.sql.validate">SqlConformance</a> getConformance()</pre> |
| </li> |
| </ul> |
| <a id="getCatalogReader()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getCatalogReader</h4> |
| <pre class="methodSignature">public <a href="SqlValidatorCatalogReader.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorCatalogReader</a> getCatalogReader()</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getOperatorTable()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getOperatorTable</h4> |
| <pre class="methodSignature">public <a href="../SqlOperatorTable.html" title="interface in org.apache.calcite.sql">SqlOperatorTable</a> getOperatorTable()</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getTypeFactory()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getTypeFactory</h4> |
| <pre class="methodSignature">public <a href="../../rel/type/RelDataTypeFactory.html" title="interface in org.apache.calcite.rel.type">RelDataTypeFactory</a> getTypeFactory()</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getUnknownType()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getUnknownType</h4> |
| <pre class="methodSignature">public <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> getUnknownType()</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="expandStar(org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlSelect,boolean)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>expandStar</h4> |
| <pre class="methodSignature">public <a href="../SqlNodeList.html" title="class in org.apache.calcite.sql">SqlNodeList</a> expandStar​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="declareCursor(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>declareCursor</h4> |
| <pre class="methodSignature">public void declareCursor​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="pushFunctionCall()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>pushFunctionCall</h4> |
| <pre class="methodSignature">public void pushFunctionCall()</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="popFunctionCall()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>popFunctionCall</h4> |
| <pre class="methodSignature">public void popFunctionCall()</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getParentCursor(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getParentCursor</h4> |
| <pre class="methodSignature">public <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> getParentCursor​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="usingNames(org.apache.calcite.sql.SqlJoin)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>usingNames</h4> |
| <pre class="methodSignature">public <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>> usingNames​(<a href="../SqlJoin.html" title="class in org.apache.calcite.sql">SqlJoin</a> join)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validate(org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validate</h4> |
| <pre class="methodSignature">public <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> validate​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> topNode)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="lookupHints(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.parser.SqlParserPos)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>lookupHints</h4> |
| <pre class="methodSignature">public <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>> lookupHints​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="lookupQualifiedName(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.parser.SqlParserPos)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>lookupQualifiedName</h4> |
| <pre class="methodSignature">public <a href="SqlMoniker.html" title="interface in org.apache.calcite.sql.validate">SqlMoniker</a> lookupQualifiedName​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="lookupNameCompletionHints(org.apache.calcite.sql.validate.SqlValidatorScope,java.util.List,org.apache.calcite.sql.parser.SqlParserPos,java.util.Collection)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>lookupNameCompletionHints</h4> |
| <pre class="methodSignature">public final void lookupNameCompletionHints​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateParameterizedExpression(org.apache.calcite.sql.SqlNode,java.util.Map)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateParameterizedExpression</h4> |
| <pre class="methodSignature">public <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> validateParameterizedExpression​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateQuery(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.rel.type.RelDataType)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateQuery</h4> |
| <pre class="methodSignature">public void validateQuery​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateNamespace(org.apache.calcite.sql.validate.SqlValidatorNamespace,org.apache.calcite.rel.type.RelDataType)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateNamespace</h4> |
| <pre class="methodSignature">protected void validateNamespace​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getEmptyScope()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getEmptyScope</h4> |
| <pre class="methodSignature">public <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> getEmptyScope()</pre> |
| </li> |
| </ul> |
| <a id="getCursorScope(org.apache.calcite.sql.SqlSelect)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getCursorScope</h4> |
| <pre class="methodSignature">public <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> getCursorScope​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</pre> |
| </li> |
| </ul> |
| <a id="getWhereScope(org.apache.calcite.sql.SqlSelect)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getWhereScope</h4> |
| <pre class="methodSignature">public <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> getWhereScope​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getSelectScope(org.apache.calcite.sql.SqlSelect)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getSelectScope</h4> |
| <pre class="methodSignature">public <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> getSelectScope​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getRawSelectScope(org.apache.calcite.sql.SqlSelect)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getRawSelectScope</h4> |
| <pre class="methodSignature">public <a href="SelectScope.html" title="class in org.apache.calcite.sql.validate">SelectScope</a> getRawSelectScope​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getHavingScope(org.apache.calcite.sql.SqlSelect)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getHavingScope</h4> |
| <pre class="methodSignature">public <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> getHavingScope​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getGroupScope(org.apache.calcite.sql.SqlSelect)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getGroupScope</h4> |
| <pre class="methodSignature">public <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> getGroupScope​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getFromScope(org.apache.calcite.sql.SqlSelect)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getFromScope</h4> |
| <pre class="methodSignature">public <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> getFromScope​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getOrderScope(org.apache.calcite.sql.SqlSelect)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getOrderScope</h4> |
| <pre class="methodSignature">public <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> getOrderScope​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getMatchRecognizeScope(org.apache.calcite.sql.SqlMatchRecognize)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getMatchRecognizeScope</h4> |
| <pre class="methodSignature">public <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> getMatchRecognizeScope​(<a href="../SqlMatchRecognize.html" title="class in org.apache.calcite.sql">SqlMatchRecognize</a> node)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getJoinScope(org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getJoinScope</h4> |
| <pre class="methodSignature">public <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> getJoinScope​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getOverScope(org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getOverScope</h4> |
| <pre class="methodSignature">public <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> getOverScope​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getNamespace(org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getNamespace</h4> |
| <pre class="methodSignature">public <a href="SqlValidatorNamespace.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorNamespace</a> getNamespace​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="performUnconditionalRewrites(org.apache.calcite.sql.SqlNode,boolean)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>performUnconditionalRewrites</h4> |
| <pre class="methodSignature">protected <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> performUnconditionalRewrites​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node, |
| boolean underFrom)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getSelfJoinExprForUpdate(org.apache.calcite.sql.SqlNode,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getSelfJoinExprForUpdate</h4> |
| <pre class="methodSignature">protected <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> getSelfJoinExprForUpdate​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="createSourceSelectForUpdate(org.apache.calcite.sql.SqlUpdate)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createSourceSelectForUpdate</h4> |
| <pre class="methodSignature">protected <a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> createSourceSelectForUpdate​(<a href="../SqlUpdate.html" title="class in org.apache.calcite.sql">SqlUpdate</a> call)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="createSourceSelectForDelete(org.apache.calcite.sql.SqlDelete)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createSourceSelectForDelete</h4> |
| <pre class="methodSignature">protected <a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> createSourceSelectForDelete​(<a href="../SqlDelete.html" title="class in org.apache.calcite.sql">SqlDelete</a> call)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getValidatedNodeType(org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getValidatedNodeType</h4> |
| <pre class="methodSignature">public <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> getValidatedNodeType​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getValidatedNodeTypeIfKnown(org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getValidatedNodeTypeIfKnown</h4> |
| <pre class="methodSignature">public <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> getValidatedNodeTypeIfKnown​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="setValidatedNodeType(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setValidatedNodeType</h4> |
| <pre class="methodSignature">public final void setValidatedNodeType​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="removeValidatedNodeType(org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>removeValidatedNodeType</h4> |
| <pre class="methodSignature">public void removeValidatedNodeType​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="makeNullaryCall(org.apache.calcite.sql.SqlIdentifier)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>makeNullaryCall</h4> |
| <pre class="methodSignature"><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> |
| public <a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> makeNullaryCall​(<a href="../SqlIdentifier.html" title="class in org.apache.calcite.sql">SqlIdentifier</a> id)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="deriveType(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>deriveType</h4> |
| <pre class="methodSignature">public <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> deriveType​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <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)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>deriveConstructorType</h4> |
| <pre class="methodSignature">public <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> deriveConstructorType​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="handleUnresolvedFunction(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlFunction,java.util.List,java.util.List)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>handleUnresolvedFunction</h4> |
| <pre class="methodSignature">public <a href="../../runtime/CalciteException.html" title="class in org.apache.calcite.runtime">CalciteException</a> handleUnresolvedFunction​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="inferUnknownTypes(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>inferUnknownTypes</h4> |
| <pre class="methodSignature">protected void inferUnknownTypes​(<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)</pre> |
| </li> |
| </ul> |
| <a id="addToSelectList(java.util.List,java.util.Set,java.util.List,org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SelectScope,boolean)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>addToSelectList</h4> |
| <pre class="methodSignature">protected void addToSelectList​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="deriveAlias(org.apache.calcite.sql.SqlNode,int)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>deriveAlias</h4> |
| <pre class="methodSignature">public <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> deriveAlias​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node, |
| int ordinal)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="shouldAllowIntermediateOrderBy()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>shouldAllowIntermediateOrderBy</h4> |
| <pre class="methodSignature">protected boolean shouldAllowIntermediateOrderBy()</pre> |
| </li> |
| </ul> |
| <a id="createMatchRecognizeNameSpace(org.apache.calcite.sql.SqlMatchRecognize,org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createMatchRecognizeNameSpace</h4> |
| <pre class="methodSignature">protected <a href="MatchRecognizeNamespace.html" title="class in org.apache.calcite.sql.validate">MatchRecognizeNamespace</a> createMatchRecognizeNameSpace​(<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)</pre> |
| </li> |
| </ul> |
| <a id="registerNamespace(org.apache.calcite.sql.validate.SqlValidatorScope,java.lang.String,org.apache.calcite.sql.validate.SqlValidatorNamespace,boolean)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>registerNamespace</h4> |
| <pre class="methodSignature">protected void registerNamespace​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="shouldAllowOverRelation()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>shouldAllowOverRelation</h4> |
| <pre class="methodSignature">protected boolean shouldAllowOverRelation()</pre> |
| </li> |
| </ul> |
| <a id="createSelectNamespace(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createSelectNamespace</h4> |
| <pre class="methodSignature">protected <a href="SelectNamespace.html" title="class in org.apache.calcite.sql.validate">SelectNamespace</a> createSelectNamespace​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="createSetopNamespace(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createSetopNamespace</h4> |
| <pre class="methodSignature">protected <a href="SetopNamespace.html" title="class in org.apache.calcite.sql.validate">SetopNamespace</a> createSetopNamespace​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="isAggregate(org.apache.calcite.sql.SqlSelect)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isAggregate</h4> |
| <pre class="methodSignature">public boolean isAggregate​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="isNestedAggregateWindow(org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isNestedAggregateWindow</h4> |
| <pre class="methodSignature">protected boolean isNestedAggregateWindow​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</pre> |
| </li> |
| </ul> |
| <a id="isOverAggregateWindow(org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isOverAggregateWindow</h4> |
| <pre class="methodSignature">protected boolean isOverAggregateWindow​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> node)</pre> |
| </li> |
| </ul> |
| <a id="getAggregate(org.apache.calcite.sql.SqlSelect)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getAggregate</h4> |
| <pre class="methodSignature">protected <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> getAggregate​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="isAggregate(org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isAggregate</h4> |
| <pre class="methodSignature"><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> |
| public boolean isAggregate​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> selectNode)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateIdentifier(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateIdentifier</h4> |
| <pre class="methodSignature">public void validateIdentifier​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateLiteral(org.apache.calcite.sql.SqlLiteral)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateLiteral</h4> |
| <pre class="methodSignature">public void validateLiteral​(<a href="../SqlLiteral.html" title="class in org.apache.calcite.sql">SqlLiteral</a> literal)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateIntervalQualifier(org.apache.calcite.sql.SqlIntervalQualifier)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateIntervalQualifier</h4> |
| <pre class="methodSignature">public void validateIntervalQualifier​(<a href="../SqlIntervalQualifier.html" title="class in org.apache.calcite.sql">SqlIntervalQualifier</a> qualifier)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateFrom(org.apache.calcite.sql.SqlNode,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateFrom</h4> |
| <pre class="methodSignature">protected void validateFrom​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateOver(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateOver</h4> |
| <pre class="methodSignature">protected void validateOver​(<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)</pre> |
| </li> |
| </ul> |
| <a id="validateUnnest(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.rel.type.RelDataType)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateUnnest</h4> |
| <pre class="methodSignature">protected void validateUnnest​(<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)</pre> |
| </li> |
| </ul> |
| <a id="validateJoin(org.apache.calcite.sql.SqlJoin,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateJoin</h4> |
| <pre class="methodSignature">protected void validateJoin​(<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)</pre> |
| </li> |
| </ul> |
| <a id="validateSelect(org.apache.calcite.sql.SqlSelect,org.apache.calcite.rel.type.RelDataType)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateSelect</h4> |
| <pre class="methodSignature">protected void validateSelect​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateModality(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.validate.SqlModality,boolean)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateModality</h4> |
| <pre class="methodSignature">public boolean validateModality​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateWindowClause(org.apache.calcite.sql.SqlSelect)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateWindowClause</h4> |
| <pre class="methodSignature">protected void validateWindowClause​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</pre> |
| </li> |
| </ul> |
| <a id="validateWith(org.apache.calcite.sql.SqlWith,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateWith</h4> |
| <pre class="methodSignature">public void validateWith​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateWithItem(org.apache.calcite.sql.SqlWithItem)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateWithItem</h4> |
| <pre class="methodSignature">public void validateWithItem​(<a href="../SqlWithItem.html" title="class in org.apache.calcite.sql">SqlWithItem</a> withItem)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateSequenceValue(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlIdentifier)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateSequenceValue</h4> |
| <pre class="methodSignature">public void validateSequenceValue​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getWithScope(org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getWithScope</h4> |
| <pre class="methodSignature">public <a href="SqlValidatorScope.html" title="interface in org.apache.calcite.sql.validate">SqlValidatorScope</a> getWithScope​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> withItem)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getTypeCoercion()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getTypeCoercion</h4> |
| <pre class="methodSignature">public <a href="implicit/TypeCoercion.html" title="interface in org.apache.calcite.sql.validate.implicit">TypeCoercion</a> getTypeCoercion()</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="config()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>config</h4> |
| <pre class="methodSignature">public <a href="SqlValidator.Config.html" title="interface in org.apache.calcite.sql.validate">SqlValidator.Config</a> config()</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="transform(java.util.function.UnaryOperator)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>transform</h4> |
| <pre class="methodSignature">public <a href="SqlValidator.html" title="interface in org.apache.calcite.sql.validate">SqlValidator</a> transform​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateOrderList(org.apache.calcite.sql.SqlSelect)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateOrderList</h4> |
| <pre class="methodSignature">protected void validateOrderList​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="expandOrderExpr(org.apache.calcite.sql.SqlSelect,org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>expandOrderExpr</h4> |
| <pre class="methodSignature">public <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expandOrderExpr​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateGroupClause(org.apache.calcite.sql.SqlSelect)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateGroupClause</h4> |
| <pre class="methodSignature">protected void validateGroupClause​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateWhereClause(org.apache.calcite.sql.SqlSelect)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateWhereClause</h4> |
| <pre class="methodSignature">protected void validateWhereClause​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</pre> |
| </li> |
| </ul> |
| <a id="validateWhereOrOn(org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlNode,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateWhereOrOn</h4> |
| <pre class="methodSignature">protected void validateWhereOrOn​(<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)</pre> |
| </li> |
| </ul> |
| <a id="validateHavingClause(org.apache.calcite.sql.SqlSelect)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateHavingClause</h4> |
| <pre class="methodSignature">protected void validateHavingClause​(<a href="../SqlSelect.html" title="class in org.apache.calcite.sql">SqlSelect</a> select)</pre> |
| </li> |
| </ul> |
| <a id="validateSelectList(org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.SqlSelect,org.apache.calcite.rel.type.RelDataType)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateSelectList</h4> |
| <pre class="methodSignature">protected <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> validateSelectList​(<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)</pre> |
| </li> |
| </ul> |
| <a id="createTargetRowType(org.apache.calcite.sql.validate.SqlValidatorTable,org.apache.calcite.sql.SqlNodeList,boolean)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createTargetRowType</h4> |
| <pre class="methodSignature">protected <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> createTargetRowType​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateInsert(org.apache.calcite.sql.SqlInsert)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateInsert</h4> |
| <pre class="methodSignature">public void validateInsert​(<a href="../SqlInsert.html" title="class in org.apache.calcite.sql">SqlInsert</a> insert)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getLogicalTargetRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getLogicalTargetRowType</h4> |
| <pre class="methodSignature">protected <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> getLogicalTargetRowType​(<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)</pre> |
| </li> |
| </ul> |
| <a id="getLogicalSourceRowType(org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.SqlInsert)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getLogicalSourceRowType</h4> |
| <pre class="methodSignature">protected <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> getLogicalSourceRowType​(<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)</pre> |
| </li> |
| </ul> |
| <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)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkTypeAssignment</h4> |
| <pre class="methodSignature">protected void checkTypeAssignment​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateDelete(org.apache.calcite.sql.SqlDelete)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateDelete</h4> |
| <pre class="methodSignature">public void validateDelete​(<a href="../SqlDelete.html" title="class in org.apache.calcite.sql">SqlDelete</a> call)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateUpdate(org.apache.calcite.sql.SqlUpdate)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateUpdate</h4> |
| <pre class="methodSignature">public void validateUpdate​(<a href="../SqlUpdate.html" title="class in org.apache.calcite.sql">SqlUpdate</a> call)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateMerge(org.apache.calcite.sql.SqlMerge)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateMerge</h4> |
| <pre class="methodSignature">public void validateMerge​(<a href="../SqlMerge.html" title="class in org.apache.calcite.sql">SqlMerge</a> call)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateValues(org.apache.calcite.sql.SqlCall,org.apache.calcite.rel.type.RelDataType,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateValues</h4> |
| <pre class="methodSignature">protected void validateValues​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateDataType(org.apache.calcite.sql.SqlDataTypeSpec)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateDataType</h4> |
| <pre class="methodSignature">public void validateDataType​(<a href="../SqlDataTypeSpec.html" title="class in org.apache.calcite.sql">SqlDataTypeSpec</a> dataType)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateDynamicParam(org.apache.calcite.sql.SqlDynamicParam)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateDynamicParam</h4> |
| <pre class="methodSignature">public void validateDynamicParam​(<a href="../SqlDynamicParam.html" title="class in org.apache.calcite.sql">SqlDynamicParam</a> dynamicParam)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getValidationErrorFunction()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getValidationErrorFunction</h4> |
| <pre class="methodSignature">public org.apache.calcite.sql.validate.SqlValidatorImpl.ValidationErrorFunction getValidationErrorFunction()</pre> |
| </li> |
| </ul> |
| <a id="newValidationError(org.apache.calcite.sql.SqlNode,org.apache.calcite.runtime.Resources.ExInst)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>newValidationError</h4> |
| <pre class="methodSignature">public <a href="../../runtime/CalciteContextException.html" title="class in org.apache.calcite.runtime">CalciteContextException</a> newValidationError​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getWindowByName(org.apache.calcite.sql.SqlIdentifier,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getWindowByName</h4> |
| <pre class="methodSignature">protected <a href="../SqlWindow.html" title="class in org.apache.calcite.sql">SqlWindow</a> getWindowByName​(<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)</pre> |
| </li> |
| </ul> |
| <a id="resolveWindow(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>resolveWindow</h4> |
| <pre class="methodSignature">public <a href="../SqlWindow.html" title="class in org.apache.calcite.sql">SqlWindow</a> resolveWindow​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getOriginal(org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getOriginal</h4> |
| <pre class="methodSignature">public <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> getOriginal​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expr)</pre> |
| </li> |
| </ul> |
| <a id="setOriginal(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setOriginal</h4> |
| <pre class="methodSignature">public void setOriginal​(<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)</pre> |
| </li> |
| </ul> |
| <a id="validateWindow(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlCall)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateWindow</h4> |
| <pre class="methodSignature">public void validateWindow​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateMatchRecognize(org.apache.calcite.sql.SqlCall)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateMatchRecognize</h4> |
| <pre class="methodSignature">public void validateMatchRecognize​(<a href="../SqlCall.html" title="class in org.apache.calcite.sql">SqlCall</a> call)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateAggregateParams(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.SqlNodeList,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateAggregateParams</h4> |
| <pre class="methodSignature">public void validateAggregateParams​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateCall(org.apache.calcite.sql.SqlCall,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateCall</h4> |
| <pre class="methodSignature">public void validateCall​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateFeature(org.apache.calcite.runtime.Feature,org.apache.calcite.sql.parser.SqlParserPos)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>validateFeature</h4> |
| <pre class="methodSignature">protected void validateFeature​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="expandSelectExpr(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SelectScope,org.apache.calcite.sql.SqlSelect)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>expandSelectExpr</h4> |
| <pre class="methodSignature">public <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expandSelectExpr​(<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)</pre> |
| </li> |
| </ul> |
| <a id="expand(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>expand</h4> |
| <pre class="methodSignature">public <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expand​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="expandGroupByOrHavingExpr(org.apache.calcite.sql.SqlNode,org.apache.calcite.sql.validate.SqlValidatorScope,org.apache.calcite.sql.SqlSelect,boolean)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>expandGroupByOrHavingExpr</h4> |
| <pre class="methodSignature">public <a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> expandGroupByOrHavingExpr​(<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)</pre> |
| </li> |
| </ul> |
| <a id="isSystemField(org.apache.calcite.rel.type.RelDataTypeField)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isSystemField</h4> |
| <pre class="methodSignature">public boolean isSystemField​(<a href="../../rel/type/RelDataTypeField.html" title="interface in org.apache.calcite.rel.type">RelDataTypeField</a> field)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getFieldOrigins(org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getFieldOrigins</h4> |
| <pre class="methodSignature">public <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>>> getFieldOrigins​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> sqlQuery)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="getParameterRowType(org.apache.calcite.sql.SqlNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getParameterRowType</h4> |
| <pre class="methodSignature">public <a href="../../rel/type/RelDataType.html" title="interface in org.apache.calcite.rel.type">RelDataType</a> getParameterRowType​(<a href="../SqlNode.html" title="class in org.apache.calcite.sql">SqlNode</a> sqlQuery)</pre> |
| <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> |
| </li> |
| </ul> |
| <a id="validateColumnListParams(org.apache.calcite.sql.SqlFunction,java.util.List,java.util.List)"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>validateColumnListParams</h4> |
| <pre class="methodSignature">public void validateColumnListParams​(<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)</pre> |
| <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> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </main> |
| <!-- ========= END OF CLASS DATA ========= --> |
| <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"> |
| <ul class="navList" id="allclasses_navbar_bottom"> |
| <li><a href="../../../../../allclasses.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_bottom"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| </div> |
| <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> |
| <a id="skip.navbar.bottom"> |
| <!-- --> |
| </a></div> |
| <!-- ======== END OF BOTTOM NAVBAR ======= --> |
| </nav> |
| <p class="legalCopy"><small>Copyright © 2012-2020 Apache Software Foundation. All Rights Reserved.</small></p> |
| </footer> |
| </body> |
| </html> |