blob: 74ef3d78d54498a7ffd09da47b83f729446da856 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="zh">
<head>
<!-- Generated by javadoc -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>SqlDialect (Apache Calcite calcite API)</title>
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="SqlDialect (Apache Calcite calcite API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":9,"i3":41,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":42,"i12":10,"i13":41,"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":42,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10,"i51":10};
var tabs = {65535:["t0","所有方法"],1:["t1","静态方法"],2:["t2","实例方法"],8:["t4","具体方法"],32:["t6","已过时的方法"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>您的浏览器已禁用 JavaScript。</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="跳过导航链接">跳过导航链接</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="导航">
<li><a href="../../../../overview-summary.html">概览</a></li>
<li><a href="package-summary.html">程序包</a></li>
<li class="navBarCell1Rev"></li>
<li><a href="package-tree.html"></a></li>
<li><a href="../../../../deprecated-list.html">已过时</a></li>
<li><a href="../../../../index-all.html">索引</a></li>
<li><a href="../../../../help-doc.html">帮助</a></li>
</ul>
<div class="aboutLanguage"><b>Apache Calcite</b></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/calcite/sql/SqlDescriptorOperator.html" title="org.apache.calcite.sql中的类"><span class="typeNameLink">上一个类</span></a></li>
<li><a href="../../../../org/apache/calcite/sql/SqlDialect.CalendarPolicy.html" title="org.apache.calcite.sql中的枚举"><span class="typeNameLink">下一个类</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/calcite/sql/SqlDialect.html" target="_top">框架</a></li>
<li><a href="SqlDialect.html" target="_top">无框架</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">所有类</a></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>
</div>
<div>
<ul class="subNavList">
<li>概要:&nbsp;</li>
<li><a href="#nested.class.summary">嵌套</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">字段</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">构造器</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">方法</a></li>
</ul>
<ul class="subNavList">
<li>详细资料:&nbsp;</li>
<li><a href="#field.detail">字段</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">构造器</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">方法</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.calcite.sql</div>
<h2 title="类 SqlDialect" class="title">类 SqlDialect</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="java.lang中的类或接口">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.apache.calcite.sql.SqlDialect</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>直接已知子类:</dt>
<dd><a href="../../../../org/apache/calcite/sql/dialect/AccessSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">AccessSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/AnsiSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">AnsiSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/BigQuerySqlDialect.html" title="org.apache.calcite.sql.dialect中的类">BigQuerySqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/CalciteSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">CalciteSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/Db2SqlDialect.html" title="org.apache.calcite.sql.dialect中的类">Db2SqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/DerbySqlDialect.html" title="org.apache.calcite.sql.dialect中的类">DerbySqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/FirebirdSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">FirebirdSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/H2SqlDialect.html" title="org.apache.calcite.sql.dialect中的类">H2SqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/HiveSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">HiveSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/HsqldbSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">HsqldbSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/InfobrightSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">InfobrightSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/InformixSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">InformixSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/IngresSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">IngresSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/InterbaseSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">InterbaseSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/JethroDataSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">JethroDataSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/LucidDbSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">LucidDbSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/MssqlSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">MssqlSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/MysqlSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">MysqlSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/NeoviewSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">NeoviewSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/NetezzaSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">NetezzaSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/OracleSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">OracleSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/ParaccelSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">ParaccelSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/PhoenixSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">PhoenixSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/PostgresqlSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">PostgresqlSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/RedshiftSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">RedshiftSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/SnowflakeSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">SnowflakeSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/SparkSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">SparkSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/SybaseSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">SybaseSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/TeradataSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">TeradataSqlDialect</a>, <a href="../../../../org/apache/calcite/sql/dialect/VerticaSqlDialect.html" title="org.apache.calcite.sql.dialect中的类">VerticaSqlDialect</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">SqlDialect</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="java.lang中的类或接口">Object</a></pre>
<div class="block"><code>SqlDialect</code> encapsulates the differences between dialects of SQL.
<p>It is used by classes such as <a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口"><code>SqlWriter</code></a> and
<a href="../../../../org/apache/calcite/sql/util/SqlBuilder.html" title="org.apache.calcite.sql.util中的类"><code>SqlBuilder</code></a>.
<p>To add a new <a href="../../../../org/apache/calcite/sql/SqlDialect.html" title="org.apache.calcite.sql中的类"><code>SqlDialect</code></a> sub-class, extends this class to hold 2 public final
static member:
<ul>
<li>DEFAULT_CONTEXT: a default <a href="../../../../org/apache/calcite/sql/SqlDialect.Context.html" title="org.apache.calcite.sql中的接口"><code>SqlDialect.Context</code></a> instance, which can be used to customize
or extending the dialect if the DEFAULT instance does not meet the requests</li>
<li>DEFAULT: the default <a href="../../../../org/apache/calcite/sql/SqlDialect.html" title="org.apache.calcite.sql中的类"><code>SqlDialect</code></a> instance with context properties defined with
<code>DEFAULT_CONTEXT</code></li>
</ul></div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- -->
</a>
<h3>嵌套类概要</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="嵌套类概要表, 列表嵌套类和解释">
<caption><span>嵌套类</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">限定符和类型</th>
<th class="colLast" scope="col">类和说明</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.CalendarPolicy.html" title="org.apache.calcite.sql中的枚举">SqlDialect.CalendarPolicy</a></span></code>
<div class="block">Whether this JDBC driver needs you to pass a Calendar object to methods
such as <a href="https://docs.oracle.com/javase/8/docs/api/java/sql/ResultSet.html?is-external=true#getTimestamp-int-java.util.Calendar-" title="java.sql中的类或接口"><code>ResultSet.getTimestamp(int, java.util.Calendar)</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static interface&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.Context.html" title="org.apache.calcite.sql中的接口">SqlDialect.Context</a></span></code>
<div class="block">Information for creating a dialect.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.DatabaseProduct.html" title="org.apache.calcite.sql中的枚举">SqlDialect.DatabaseProduct</a></span></code>
<div class="block">Rough list of flavors of database.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.FakeUtil.html" title="org.apache.calcite.sql中的类">SqlDialect.FakeUtil</a></span></code>
<div class="block"><span class="deprecatedLabel">已过时。</span>&nbsp;</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>字段概要</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="字段概要表, 列表字段和解释">
<caption><span>字段</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">限定符和类型</th>
<th class="colLast" scope="col">字段和说明</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="java.util中的类或接口">Set</a>&lt;<a href="../../../../org/apache/calcite/sql/SqlOperator.html" title="org.apache.calcite.sql中的类">SqlOperator</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#BUILT_IN_OPERATORS_LIST">BUILT_IN_OPERATORS_LIST</a></span></code>
<div class="block">Built-in scalar functions and operators common for every dialect.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/calcite/sql/SqlDialect.html" title="org.apache.calcite.sql中的类">SqlDialect</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#CALCITE">CALCITE</a></span></code>
<div class="block"><span class="deprecatedLabel">已过时。</span>&nbsp;
<div class="block"><span class="deprecationComment">Use <a href="../../../../org/apache/calcite/sql/dialect/CalciteSqlDialect.html#DEFAULT"><code>CalciteSqlDialect.DEFAULT</code></a> instead.</span></div>
</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/calcite/sql/SqlDialect.html" title="org.apache.calcite.sql中的类">SqlDialect</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#DUMMY">DUMMY</a></span></code>
<div class="block"><span class="deprecatedLabel">已过时。</span>&nbsp;
<div class="block"><span class="deprecationComment">Use <a href="../../../../org/apache/calcite/sql/dialect/AnsiSqlDialect.html#DEFAULT"><code>AnsiSqlDialect.DEFAULT</code></a> instead.</span></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/calcite/sql/SqlDialect.Context.html" title="org.apache.calcite.sql中的接口">SqlDialect.Context</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#EMPTY_CONTEXT">EMPTY_CONTEXT</a></span></code>
<div class="block">Empty context.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#identifierEndQuoteString">identifierEndQuoteString</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#identifierEscapedQuote">identifierEscapedQuote</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#identifierQuoteString">identifierQuoteString</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#literalEndQuoteString">literalEndQuoteString</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#literalEscapedQuote">literalEscapedQuote</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#literalQuoteString">literalQuoteString</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static org.slf4j.Logger</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#LOGGER">LOGGER</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/apache/calcite/config/NullCollation.html" title="org.apache.calcite.config中的枚举">NullCollation</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#nullCollation">nullCollation</a></span></code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>构造器概要</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="构造器概要表, 列表构造器和解释">
<caption><span>构造器</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">构造器和说明</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#SqlDialect-org.apache.calcite.sql.SqlDialect.Context-">SqlDialect</a></span>(<a href="../../../../org/apache/calcite/sql/SqlDialect.Context.html" title="org.apache.calcite.sql中的接口">SqlDialect.Context</a>&nbsp;context)</code>
<div class="block">Creates a SqlDialect.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#SqlDialect-org.apache.calcite.sql.SqlDialect.DatabaseProduct-java.lang.String-java.lang.String-">SqlDialect</a></span>(<a href="../../../../org/apache/calcite/sql/SqlDialect.DatabaseProduct.html" title="org.apache.calcite.sql中的枚举">SqlDialect.DatabaseProduct</a>&nbsp;databaseProduct,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;databaseProductName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;identifierQuoteString)</code>
<div class="block"><span class="deprecatedLabel">已过时。</span>&nbsp;</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#SqlDialect-org.apache.calcite.sql.SqlDialect.DatabaseProduct-java.lang.String-java.lang.String-org.apache.calcite.config.NullCollation-">SqlDialect</a></span>(<a href="../../../../org/apache/calcite/sql/SqlDialect.DatabaseProduct.html" title="org.apache.calcite.sql中的枚举">SqlDialect.DatabaseProduct</a>&nbsp;databaseProduct,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;databaseProductName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;identifierQuoteString,
<a href="../../../../org/apache/calcite/config/NullCollation.html" title="org.apache.calcite.config中的枚举">NullCollation</a>&nbsp;nullCollation)</code>
<div class="block"><span class="deprecatedLabel">已过时。</span>&nbsp;
<div class="block"><span class="deprecationComment">Use <a href="../../../../org/apache/calcite/sql/SqlDialect.html#SqlDialect-org.apache.calcite.sql.SqlDialect.Context-"><code>SqlDialect(Context)</code></a></span></div>
</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>方法概要</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="方法概要表, 列表方法和解释">
<caption><span id="t0" class="activeTableTab"><span>所有方法</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">静态方法</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">实例方法</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">具体方法</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">已过时的方法</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">限定符和类型</th>
<th class="colLast" scope="col">方法和说明</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#allowsAs--">allowsAs</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/calcite/sql/parser/SqlParser.ConfigBuilder.html" title="org.apache.calcite.sql.parser中的类">SqlParser.ConfigBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#configureParser-org.apache.calcite.sql.parser.SqlParser.ConfigBuilder-">configureParser</a></span>(<a href="../../../../org/apache/calcite/sql/parser/SqlParser.ConfigBuilder.html" title="org.apache.calcite.sql.parser中的类">SqlParser.ConfigBuilder</a>&nbsp;configBuilder)</code>
<div class="block">Copies settings from this dialect into a parser configuration.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>protected static boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#containsNonAscii-java.lang.String-">containsNonAscii</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;s)</code>
<div class="block">Returns whether the string contains any characters outside the
comfortable 7-bit ASCII range (32 through 127, plus linefeed (10) and
carriage return (13)).</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/calcite/sql/SqlDialect.html" title="org.apache.calcite.sql中的类">SqlDialect</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#create-java.sql.DatabaseMetaData-">create</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/DatabaseMetaData.html?is-external=true" title="java.sql中的类或接口">DatabaseMetaData</a>&nbsp;databaseMetaData)</code>
<div class="block"><span class="deprecatedLabel">已过时。</span>&nbsp;
<div class="block"><span class="deprecationComment">Replaced by <a href="../../../../org/apache/calcite/sql/SqlDialectFactory.html" title="org.apache.calcite.sql中的接口"><code>SqlDialectFactory</code></a></span></div>
</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/calcite/rel/RelFieldCollation.NullDirection.html" title="org.apache.calcite.rel中的枚举">RelFieldCollation.NullDirection</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#defaultNullDirection-org.apache.calcite.rel.RelFieldCollation.Direction-">defaultNullDirection</a></span>(<a href="../../../../org/apache/calcite/rel/RelFieldCollation.Direction.html" title="org.apache.calcite.rel中的枚举">RelFieldCollation.Direction</a>&nbsp;direction)</code>
<div class="block">Returns whether NULL values are sorted first or last, in this dialect,
in an ORDER BY item of a given direction.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/calcite/sql/JoinType.html" title="org.apache.calcite.sql中的枚举">JoinType</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#emulateJoinTypeForCrossJoin--">emulateJoinTypeForCrossJoin</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#emulateNullDirection-org.apache.calcite.sql.SqlNode-boolean-boolean-">emulateNullDirection</a></span>(<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;node,
boolean&nbsp;nullsFirst,
boolean&nbsp;desc)</code>
<div class="block">Returns the SqlNode for emulating the null direction for the given field
or <code>null</code> if no emulation needs to be done.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#emulateNullDirectionWithIsNull-org.apache.calcite.sql.SqlNode-boolean-boolean-">emulateNullDirectionWithIsNull</a></span>(<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;node,
boolean&nbsp;nullsFirst,
boolean&nbsp;desc)</code>&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/calcite/sql/SqlDialect.CalendarPolicy.html" title="org.apache.calcite.sql中的枚举">SqlDialect.CalendarPolicy</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#getCalendarPolicy--">getCalendarPolicy</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#getCastSpec-org.apache.calcite.rel.type.RelDataType-">getCastSpec</a></span>(<a href="../../../../org/apache/calcite/rel/type/RelDataType.html" title="org.apache.calcite.rel.type中的接口">RelDataType</a>&nbsp;type)</code>
<div class="block">Returns SqlNode for type in "cast(column as type)", which might be
different between databases by type name, precision etc.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/calcite/sql/validate/SqlConformance.html" title="org.apache.calcite.sql.validate中的接口">SqlConformance</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#getConformance--">getConformance</a></span>()</code>
<div class="block">Returns the <a href="../../../../org/apache/calcite/sql/validate/SqlConformance.html" title="org.apache.calcite.sql.validate中的接口"><code>SqlConformance</code></a> that matches this dialect.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/calcite/sql/SqlDialect.DatabaseProduct.html" title="org.apache.calcite.sql中的枚举">SqlDialect.DatabaseProduct</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#getDatabaseProduct--">getDatabaseProduct</a></span>()</code>
<div class="block"><span class="deprecatedLabel">已过时。</span>&nbsp;
<div class="block"><span class="deprecationComment">To be removed without replacement</span></div>
</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/calcite/config/NullCollation.html" title="org.apache.calcite.config中的枚举">NullCollation</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#getNullCollation--">getNullCollation</a></span>()</code>
<div class="block">Returns how NULL values are sorted if an ORDER BY item does not contain
NULLS ASCENDING or NULLS DESCENDING.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/calcite/sql/SqlDialect.DatabaseProduct.html" title="org.apache.calcite.sql中的枚举">SqlDialect.DatabaseProduct</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#getProduct-java.lang.String-java.lang.String-">getProduct</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;productName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;productVersion)</code>
<div class="block"><span class="deprecatedLabel">已过时。</span>&nbsp;</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>org.apache.calcite.avatica.util.Casing</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#getQuotedCasing--">getQuotedCasing</a></span>()</code>
<div class="block">Returns how quoted identifiers are stored.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>protected org.apache.calcite.avatica.util.Quoting</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#getQuoting--">getQuoting</a></span>()</code>
<div class="block">Returns the quoting scheme, or null if the combination of
<a href="../../../../org/apache/calcite/sql/SqlDialect.html#identifierQuoteString"><code>identifierQuoteString</code></a> and <a href="../../../../org/apache/calcite/sql/SqlDialect.html#identifierEndQuoteString"><code>identifierEndQuoteString</code></a>
does not correspond to any known quoting scheme.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="java.util中的类或接口">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#getSingleRowTableName--">getSingleRowTableName</a></span>()</code>
<div class="block">Returns the name of the system table that has precisely one row.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code><a href="../../../../org/apache/calcite/rel/type/RelDataTypeSystem.html" title="org.apache.calcite.rel.type中的接口">RelDataTypeSystem</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#getTypeSystem--">getTypeSystem</a></span>()</code>
<div class="block">Returns the type system implementation for this dialect.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>org.apache.calcite.avatica.util.Casing</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#getUnquotedCasing--">getUnquotedCasing</a></span>()</code>
<div class="block">Returns how unquoted identifiers are stored.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#hasImplicitTableAlias--">hasImplicitTableAlias</a></span>()</code>
<div class="block">Returns whether a qualified table in the FROM clause has an implicit alias
which consists of just the table name.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#identifierNeedsQuote-java.lang.String-">identifierNeedsQuote</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;val)</code>
<div class="block">Returns whether to quote an identifier.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#isCaseSensitive--">isCaseSensitive</a></span>()</code>
<div class="block">Returns whether matching of identifiers is case-sensitive.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#quoteIdentifier-java.lang.String-">quoteIdentifier</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;val)</code>
<div class="block">Encloses an identifier in quotation marks appropriate for the current SQL
dialect.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="java.lang中的类或接口">StringBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#quoteIdentifier-java.lang.StringBuilder-java.util.List-">quoteIdentifier</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="java.lang中的类或接口">StringBuilder</a>&nbsp;buf,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="java.util中的类或接口">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&gt;&nbsp;identifiers)</code>
<div class="block">Quotes a multi-part identifier.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="java.lang中的类或接口">StringBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#quoteIdentifier-java.lang.StringBuilder-java.lang.String-">quoteIdentifier</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="java.lang中的类或接口">StringBuilder</a>&nbsp;buf,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;val)</code>
<div class="block">Encloses an identifier in quotation marks appropriate for the current SQL
dialect, writing the result to a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="java.lang中的类或接口"><code>StringBuilder</code></a>.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#quoteStringLiteral-java.lang.String-">quoteStringLiteral</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;val)</code>
<div class="block">Converts a string into a string literal.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#quoteStringLiteral-java.lang.StringBuilder-java.lang.String-java.lang.String-">quoteStringLiteral</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="java.lang中的类或接口">StringBuilder</a>&nbsp;buf,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;charsetName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;val)</code>
<div class="block">Appends a string literal to a buffer.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#quoteStringLiteralUnicode-java.lang.StringBuilder-java.lang.String-">quoteStringLiteralUnicode</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="java.lang中的类或接口">StringBuilder</a>&nbsp;buf,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;val)</code>
<div class="block">Converts a string into a unicode string literal.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#quoteTimestampLiteral-java.sql.Timestamp-">quoteTimestampLiteral</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/Timestamp.html?is-external=true" title="java.sql中的类或接口">Timestamp</a>&nbsp;timestamp)</code>
<div class="block">Converts a timestamp to a SQL timestamp literal, e.g.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#requiresAliasForFromItems--">requiresAliasForFromItems</a></span>()</code>
<div class="block">Whether a sub-query in the FROM clause must have an alias.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#rewriteSingleValueExpr-org.apache.calcite.sql.SqlNode-">rewriteSingleValueExpr</a></span>(<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;aggCall)</code>
<div class="block">Rewrite SINGLE_VALUE into expression based on database variants
E.g.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#supportsAggregateFunction-org.apache.calcite.sql.SqlKind-">supportsAggregateFunction</a></span>(<a href="../../../../org/apache/calcite/sql/SqlKind.html" title="org.apache.calcite.sql中的枚举">SqlKind</a>&nbsp;kind)</code>&nbsp;</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#supportsAliasedValues--">supportsAliasedValues</a></span>()</code>
<div class="block">Returns whether the dialect supports VALUES in a sub-query with
and an "AS t(column, ...)" values to define column names.</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#supportsCharSet--">supportsCharSet</a></span>()</code>
<div class="block">Returns whether the dialect supports character set names as part of a
data type, for instance <code>VARCHAR(30) CHARACTER SET `ISO-8859-1`</code>.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#supportsDataType-org.apache.calcite.rel.type.RelDataType-">supportsDataType</a></span>(<a href="../../../../org/apache/calcite/rel/type/RelDataType.html" title="org.apache.calcite.rel.type中的接口">RelDataType</a>&nbsp;type)</code>
<div class="block">Returns whether this dialect supports a given type.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#supportsFunction-org.apache.calcite.sql.SqlOperator-org.apache.calcite.rel.type.RelDataType-java.util.List-">supportsFunction</a></span>(<a href="../../../../org/apache/calcite/sql/SqlOperator.html" title="org.apache.calcite.sql中的类">SqlOperator</a>&nbsp;operator,
<a href="../../../../org/apache/calcite/rel/type/RelDataType.html" title="org.apache.calcite.rel.type中的接口">RelDataType</a>&nbsp;type,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="java.util中的类或接口">List</a>&lt;<a href="../../../../org/apache/calcite/rel/type/RelDataType.html" title="org.apache.calcite.rel.type中的接口">RelDataType</a>&gt;&nbsp;paramTypes)</code>
<div class="block">Returns whether this dialect supports a given function or operator.</div>
</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#supportsGroupByWithCube--">supportsGroupByWithCube</a></span>()</code>
<div class="block">Returns whether this dialect supports "WITH CUBE" in "GROUP BY" clause.</div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#supportsGroupByWithRollup--">supportsGroupByWithRollup</a></span>()</code>
<div class="block">Returns whether this dialect supports "WITH ROLLUP" in the "GROUP BY"
clause.</div>
</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#supportsImplicitTypeCoercion-org.apache.calcite.rex.RexCall-">supportsImplicitTypeCoercion</a></span>(<a href="../../../../org/apache/calcite/rex/RexCall.html" title="org.apache.calcite.rex中的类">RexCall</a>&nbsp;call)</code>
<div class="block">Returns whether the dialect supports implicit type coercion.</div>
</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#supportsNestedAggregations--">supportsNestedAggregations</a></span>()</code>
<div class="block">Returns whether the dialect supports nested aggregations, for instance
<code>SELECT SUM(SUM(1)) </code>.</div>
</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#supportsOffsetFetch--">supportsOffsetFetch</a></span>()</code>
<div class="block"><span class="deprecatedLabel">已过时。</span>&nbsp;
<div class="block"><span class="deprecationComment">This method is no longer used. To change how the dialect
unparses offset/fetch, override the <a href="../../../../org/apache/calcite/sql/SqlDialect.html#unparseOffsetFetch-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlNode-org.apache.calcite.sql.SqlNode-"><code>unparseOffsetFetch(org.apache.calcite.sql.SqlWriter, org.apache.calcite.sql.SqlNode, org.apache.calcite.sql.SqlNode)</code></a> method.</span></div>
</div>
</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#supportsWindowFunctions--">supportsWindowFunctions</a></span>()</code>
<div class="block">Returns whether this dialect supports window functions (OVER clause).</div>
</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#unparseCall-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlCall-int-int-">unparseCall</a></span>(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlCall.html" title="org.apache.calcite.sql中的类">SqlCall</a>&nbsp;call,
int&nbsp;leftPrec,
int&nbsp;rightPrec)</code>&nbsp;</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#unparseDateTimeLiteral-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlAbstractDateTimeLiteral-int-int-">unparseDateTimeLiteral</a></span>(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlAbstractDateTimeLiteral.html" title="org.apache.calcite.sql中的类">SqlAbstractDateTimeLiteral</a>&nbsp;literal,
int&nbsp;leftPrec,
int&nbsp;rightPrec)</code>&nbsp;</td>
</tr>
<tr id="i44" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#unparseFetchUsingAnsi-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlNode-org.apache.calcite.sql.SqlNode-">unparseFetchUsingAnsi</a></span>(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;offset,
<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;fetch)</code>
<div class="block">Unparses offset/fetch using ANSI standard "OFFSET offset ROWS FETCH NEXT
fetch ROWS ONLY" syntax.</div>
</td>
</tr>
<tr id="i45" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#unparseFetchUsingLimit-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlNode-org.apache.calcite.sql.SqlNode-">unparseFetchUsingLimit</a></span>(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;offset,
<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;fetch)</code>
<div class="block">Unparses offset/fetch using "LIMIT fetch OFFSET offset" syntax.</div>
</td>
</tr>
<tr id="i46" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#unparseOffsetFetch-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlNode-org.apache.calcite.sql.SqlNode-">unparseOffsetFetch</a></span>(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;offset,
<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;fetch)</code>
<div class="block">Converts an offset and fetch into SQL.</div>
</td>
</tr>
<tr id="i47" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#unparseSqlDatetimeArithmetic-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlCall-org.apache.calcite.sql.SqlKind-int-int-">unparseSqlDatetimeArithmetic</a></span>(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlCall.html" title="org.apache.calcite.sql中的类">SqlCall</a>&nbsp;call,
<a href="../../../../org/apache/calcite/sql/SqlKind.html" title="org.apache.calcite.sql中的枚举">SqlKind</a>&nbsp;sqlKind,
int&nbsp;leftPrec,
int&nbsp;rightPrec)</code>&nbsp;</td>
</tr>
<tr id="i48" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#unparseSqlIntervalLiteral-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlIntervalLiteral-int-int-">unparseSqlIntervalLiteral</a></span>(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlIntervalLiteral.html" title="org.apache.calcite.sql中的类">SqlIntervalLiteral</a>&nbsp;literal,
int&nbsp;leftPrec,
int&nbsp;rightPrec)</code>
<div class="block">Converts an interval literal to a SQL string.</div>
</td>
</tr>
<tr id="i49" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#unparseSqlIntervalQualifier-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlIntervalQualifier-org.apache.calcite.rel.type.RelDataTypeSystem-">unparseSqlIntervalQualifier</a></span>(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlIntervalQualifier.html" title="org.apache.calcite.sql中的类">SqlIntervalQualifier</a>&nbsp;qualifier,
<a href="../../../../org/apache/calcite/rel/type/RelDataTypeSystem.html" title="org.apache.calcite.rel.type中的接口">RelDataTypeSystem</a>&nbsp;typeSystem)</code>
<div class="block">Converts an interval qualifier to a SQL string.</div>
</td>
</tr>
<tr id="i50" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#unparseTopN-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlNode-org.apache.calcite.sql.SqlNode-">unparseTopN</a></span>(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;offset,
<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;fetch)</code>
<div class="block">Converts a fetch into a "SELECT TOP(fetch)".</div>
</td>
</tr>
<tr id="i51" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/sql/SqlDialect.html#unquoteStringLiteral-java.lang.String-">unquoteStringLiteral</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;val)</code>
<div class="block">Converts a string literal back into a string.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>从类继承的方法&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="java.lang中的类或接口">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="java.lang中的类或接口">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="java.lang中的类或接口">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="java.lang中的类或接口">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="java.lang中的类或接口">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="java.lang中的类或接口">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="java.lang中的类或接口">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="java.lang中的类或接口">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="java.lang中的类或接口">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="java.lang中的类或接口">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="java.lang中的类或接口">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="java.lang中的类或接口">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>字段详细资料</h3>
<a name="LOGGER">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>LOGGER</h4>
<pre>protected static final&nbsp;org.slf4j.Logger LOGGER</pre>
</li>
</ul>
<a name="EMPTY_CONTEXT">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>EMPTY_CONTEXT</h4>
<pre>public static final&nbsp;<a href="../../../../org/apache/calcite/sql/SqlDialect.Context.html" title="org.apache.calcite.sql中的接口">SqlDialect.Context</a> EMPTY_CONTEXT</pre>
<div class="block">Empty context.</div>
</li>
</ul>
<a name="DUMMY">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DUMMY</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="java.lang中的类或接口">@Deprecated</a>
public static final&nbsp;<a href="../../../../org/apache/calcite/sql/SqlDialect.html" title="org.apache.calcite.sql中的类">SqlDialect</a> DUMMY</pre>
<div class="block"><span class="deprecatedLabel">已过时。</span>&nbsp;<span class="deprecationComment">Use <a href="../../../../org/apache/calcite/sql/dialect/AnsiSqlDialect.html#DEFAULT"><code>AnsiSqlDialect.DEFAULT</code></a> instead.</span></div>
</li>
</ul>
<a name="CALCITE">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CALCITE</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="java.lang中的类或接口">@Deprecated</a>
public static final&nbsp;<a href="../../../../org/apache/calcite/sql/SqlDialect.html" title="org.apache.calcite.sql中的类">SqlDialect</a> CALCITE</pre>
<div class="block"><span class="deprecatedLabel">已过时。</span>&nbsp;<span class="deprecationComment">Use <a href="../../../../org/apache/calcite/sql/dialect/CalciteSqlDialect.html#DEFAULT"><code>CalciteSqlDialect.DEFAULT</code></a> instead.</span></div>
</li>
</ul>
<a name="BUILT_IN_OPERATORS_LIST">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>BUILT_IN_OPERATORS_LIST</h4>
<pre>protected static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="java.util中的类或接口">Set</a>&lt;<a href="../../../../org/apache/calcite/sql/SqlOperator.html" title="org.apache.calcite.sql中的类">SqlOperator</a>&gt; BUILT_IN_OPERATORS_LIST</pre>
<div class="block">Built-in scalar functions and operators common for every dialect.</div>
</li>
</ul>
<a name="identifierQuoteString">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>identifierQuoteString</h4>
<pre>protected final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a> identifierQuoteString</pre>
</li>
</ul>
<a name="identifierEndQuoteString">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>identifierEndQuoteString</h4>
<pre>protected final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a> identifierEndQuoteString</pre>
</li>
</ul>
<a name="identifierEscapedQuote">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>identifierEscapedQuote</h4>
<pre>protected final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a> identifierEscapedQuote</pre>
</li>
</ul>
<a name="literalQuoteString">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>literalQuoteString</h4>
<pre>protected final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a> literalQuoteString</pre>
</li>
</ul>
<a name="literalEndQuoteString">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>literalEndQuoteString</h4>
<pre>protected final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a> literalEndQuoteString</pre>
</li>
</ul>
<a name="literalEscapedQuote">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>literalEscapedQuote</h4>
<pre>protected final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a> literalEscapedQuote</pre>
</li>
</ul>
<a name="nullCollation">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>nullCollation</h4>
<pre>protected final&nbsp;<a href="../../../../org/apache/calcite/config/NullCollation.html" title="org.apache.calcite.config中的枚举">NullCollation</a> nullCollation</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>构造器详细资料</h3>
<a name="SqlDialect-org.apache.calcite.sql.SqlDialect.DatabaseProduct-java.lang.String-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SqlDialect</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="java.lang中的类或接口">@Deprecated</a>
public&nbsp;SqlDialect(<a href="../../../../org/apache/calcite/sql/SqlDialect.DatabaseProduct.html" title="org.apache.calcite.sql中的枚举">SqlDialect.DatabaseProduct</a>&nbsp;databaseProduct,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;databaseProductName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;identifierQuoteString)</pre>
<div class="block"><span class="deprecatedLabel">已过时。</span>&nbsp;</div>
</li>
</ul>
<a name="SqlDialect-org.apache.calcite.sql.SqlDialect.DatabaseProduct-java.lang.String-java.lang.String-org.apache.calcite.config.NullCollation-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SqlDialect</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="java.lang中的类或接口">@Deprecated</a>
public&nbsp;SqlDialect(<a href="../../../../org/apache/calcite/sql/SqlDialect.DatabaseProduct.html" title="org.apache.calcite.sql中的枚举">SqlDialect.DatabaseProduct</a>&nbsp;databaseProduct,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;databaseProductName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;identifierQuoteString,
<a href="../../../../org/apache/calcite/config/NullCollation.html" title="org.apache.calcite.config中的枚举">NullCollation</a>&nbsp;nullCollation)</pre>
<div class="block"><span class="deprecatedLabel">已过时。</span>&nbsp;<span class="deprecationComment">Use <a href="../../../../org/apache/calcite/sql/SqlDialect.html#SqlDialect-org.apache.calcite.sql.SqlDialect.Context-"><code>SqlDialect(Context)</code></a></span></div>
<div class="block">Creates a SqlDialect.</div>
<dl>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>databaseProduct</code> - Database product; may be UNKNOWN, never null</dd>
<dd><code>databaseProductName</code> - Database product name from JDBC driver</dd>
<dd><code>identifierQuoteString</code> - String to quote identifiers. Null if quoting
is not supported. If "[", close quote is
deemed to be "]".</dd>
<dd><code>nullCollation</code> - Whether NULL values appear first or last</dd>
</dl>
</li>
</ul>
<a name="SqlDialect-org.apache.calcite.sql.SqlDialect.Context-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>SqlDialect</h4>
<pre>public&nbsp;SqlDialect(<a href="../../../../org/apache/calcite/sql/SqlDialect.Context.html" title="org.apache.calcite.sql中的接口">SqlDialect.Context</a>&nbsp;context)</pre>
<div class="block">Creates a SqlDialect.</div>
<dl>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>context</code> - All the information necessary to create a dialect</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>方法详细资料</h3>
<a name="create-java.sql.DatabaseMetaData-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>create</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="java.lang中的类或接口">@Deprecated</a>
public static&nbsp;<a href="../../../../org/apache/calcite/sql/SqlDialect.html" title="org.apache.calcite.sql中的类">SqlDialect</a>&nbsp;create(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/DatabaseMetaData.html?is-external=true" title="java.sql中的类或接口">DatabaseMetaData</a>&nbsp;databaseMetaData)</pre>
<div class="block"><span class="deprecatedLabel">已过时。</span>&nbsp;<span class="deprecationComment">Replaced by <a href="../../../../org/apache/calcite/sql/SqlDialectFactory.html" title="org.apache.calcite.sql中的接口"><code>SqlDialectFactory</code></a></span></div>
<div class="block">Creates a <code>SqlDialect</code> from a DatabaseMetaData.
<p>Does not maintain a reference to the DatabaseMetaData -- or, more
importantly, to its <a href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html?is-external=true" title="java.sql中的类或接口"><code>Connection</code></a> -- after this call has
returned.</div>
<dl>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>databaseMetaData</code> - used to determine which dialect of SQL to generate</dd>
</dl>
</li>
</ul>
<a name="getProduct-java.lang.String-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getProduct</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="java.lang中的类或接口">@Deprecated</a>
public static&nbsp;<a href="../../../../org/apache/calcite/sql/SqlDialect.DatabaseProduct.html" title="org.apache.calcite.sql中的枚举">SqlDialect.DatabaseProduct</a>&nbsp;getProduct(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;productName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;productVersion)</pre>
<div class="block"><span class="deprecatedLabel">已过时。</span>&nbsp;</div>
<div class="block">Converts a product name and version (per the JDBC driver) into a product
enumeration.</div>
<dl>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>productName</code> - Product name</dd>
<dd><code>productVersion</code> - Product version</dd>
<dt><span class="returnLabel">返回:</span></dt>
<dd>database product</dd>
</dl>
</li>
</ul>
<a name="getTypeSystem--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTypeSystem</h4>
<pre>public&nbsp;<a href="../../../../org/apache/calcite/rel/type/RelDataTypeSystem.html" title="org.apache.calcite.rel.type中的接口">RelDataTypeSystem</a>&nbsp;getTypeSystem()</pre>
<div class="block">Returns the type system implementation for this dialect.</div>
</li>
</ul>
<a name="quoteIdentifier-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>quoteIdentifier</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;quoteIdentifier(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;val)</pre>
<div class="block">Encloses an identifier in quotation marks appropriate for the current SQL
dialect.
<p>For example, <code>quoteIdentifier("emp")</code> yields a string
containing <code>"emp"</code> in Oracle, and a string containing <code>
[emp]</code> in Access.</div>
<dl>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>val</code> - Identifier to quote</dd>
<dt><span class="returnLabel">返回:</span></dt>
<dd>Quoted identifier</dd>
</dl>
</li>
</ul>
<a name="quoteIdentifier-java.lang.StringBuilder-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>quoteIdentifier</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="java.lang中的类或接口">StringBuilder</a>&nbsp;quoteIdentifier(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="java.lang中的类或接口">StringBuilder</a>&nbsp;buf,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;val)</pre>
<div class="block">Encloses an identifier in quotation marks appropriate for the current SQL
dialect, writing the result to a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="java.lang中的类或接口"><code>StringBuilder</code></a>.
<p>For example, <code>quoteIdentifier("emp")</code> yields a string
containing <code>"emp"</code> in Oracle, and a string containing <code>
[emp]</code> in Access.</div>
<dl>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>buf</code> - Buffer</dd>
<dd><code>val</code> - Identifier to quote</dd>
<dt><span class="returnLabel">返回:</span></dt>
<dd>The buffer</dd>
</dl>
</li>
</ul>
<a name="quoteIdentifier-java.lang.StringBuilder-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>quoteIdentifier</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="java.lang中的类或接口">StringBuilder</a>&nbsp;quoteIdentifier(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="java.lang中的类或接口">StringBuilder</a>&nbsp;buf,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="java.util中的类或接口">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&gt;&nbsp;identifiers)</pre>
<div class="block">Quotes a multi-part identifier.</div>
<dl>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>buf</code> - Buffer</dd>
<dd><code>identifiers</code> - List of parts of the identifier to quote</dd>
<dt><span class="returnLabel">返回:</span></dt>
<dd>The buffer</dd>
</dl>
</li>
</ul>
<a name="identifierNeedsQuote-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>identifierNeedsQuote</h4>
<pre>protected&nbsp;boolean&nbsp;identifierNeedsQuote(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;val)</pre>
<div class="block">Returns whether to quote an identifier.
By default, all identifiers are quoted.</div>
</li>
</ul>
<a name="quoteStringLiteral-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>quoteStringLiteral</h4>
<pre>public final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;quoteStringLiteral(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;val)</pre>
<div class="block">Converts a string into a string literal.
<p>For example, <code>"can't run"</code> becomes <code>"'can''t run'"</code>.</div>
</li>
</ul>
<a name="quoteStringLiteral-java.lang.StringBuilder-java.lang.String-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>quoteStringLiteral</h4>
<pre>public&nbsp;void&nbsp;quoteStringLiteral(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="java.lang中的类或接口">StringBuilder</a>&nbsp;buf,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;charsetName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;val)</pre>
<div class="block">Appends a string literal to a buffer.</div>
<dl>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>buf</code> - Buffer</dd>
<dd><code>charsetName</code> - Character set name, e.g. "utf16", or null</dd>
<dd><code>val</code> - String value</dd>
</dl>
</li>
</ul>
<a name="unparseCall-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlCall-int-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unparseCall</h4>
<pre>public&nbsp;void&nbsp;unparseCall(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlCall.html" title="org.apache.calcite.sql中的类">SqlCall</a>&nbsp;call,
int&nbsp;leftPrec,
int&nbsp;rightPrec)</pre>
</li>
</ul>
<a name="unparseDateTimeLiteral-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlAbstractDateTimeLiteral-int-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unparseDateTimeLiteral</h4>
<pre>public&nbsp;void&nbsp;unparseDateTimeLiteral(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlAbstractDateTimeLiteral.html" title="org.apache.calcite.sql中的类">SqlAbstractDateTimeLiteral</a>&nbsp;literal,
int&nbsp;leftPrec,
int&nbsp;rightPrec)</pre>
</li>
</ul>
<a name="unparseSqlDatetimeArithmetic-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlCall-org.apache.calcite.sql.SqlKind-int-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unparseSqlDatetimeArithmetic</h4>
<pre>public&nbsp;void&nbsp;unparseSqlDatetimeArithmetic(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlCall.html" title="org.apache.calcite.sql中的类">SqlCall</a>&nbsp;call,
<a href="../../../../org/apache/calcite/sql/SqlKind.html" title="org.apache.calcite.sql中的枚举">SqlKind</a>&nbsp;sqlKind,
int&nbsp;leftPrec,
int&nbsp;rightPrec)</pre>
</li>
</ul>
<a name="unparseSqlIntervalQualifier-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlIntervalQualifier-org.apache.calcite.rel.type.RelDataTypeSystem-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unparseSqlIntervalQualifier</h4>
<pre>public&nbsp;void&nbsp;unparseSqlIntervalQualifier(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlIntervalQualifier.html" title="org.apache.calcite.sql中的类">SqlIntervalQualifier</a>&nbsp;qualifier,
<a href="../../../../org/apache/calcite/rel/type/RelDataTypeSystem.html" title="org.apache.calcite.rel.type中的接口">RelDataTypeSystem</a>&nbsp;typeSystem)</pre>
<div class="block">Converts an interval qualifier to a SQL string. The default implementation
returns strings such as
<code>INTERVAL '1 2:3:4' DAY(4) TO SECOND(4)</code>.</div>
</li>
</ul>
<a name="unparseSqlIntervalLiteral-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlIntervalLiteral-int-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unparseSqlIntervalLiteral</h4>
<pre>public&nbsp;void&nbsp;unparseSqlIntervalLiteral(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlIntervalLiteral.html" title="org.apache.calcite.sql中的类">SqlIntervalLiteral</a>&nbsp;literal,
int&nbsp;leftPrec,
int&nbsp;rightPrec)</pre>
<div class="block">Converts an interval literal to a SQL string. The default implementation
returns strings such as
<code>INTERVAL '1 2:3:4' DAY(4) TO SECOND(4)</code>.</div>
</li>
</ul>
<a name="containsNonAscii-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>containsNonAscii</h4>
<pre>protected static&nbsp;boolean&nbsp;containsNonAscii(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;s)</pre>
<div class="block">Returns whether the string contains any characters outside the
comfortable 7-bit ASCII range (32 through 127, plus linefeed (10) and
carriage return (13)).
<p>Such characters can be used unquoted in SQL character literals.</div>
<dl>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>s</code> - String</dd>
<dt><span class="returnLabel">返回:</span></dt>
<dd>Whether string contains any non-7-bit-ASCII characters</dd>
</dl>
</li>
</ul>
<a name="quoteStringLiteralUnicode-java.lang.StringBuilder-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>quoteStringLiteralUnicode</h4>
<pre>public&nbsp;void&nbsp;quoteStringLiteralUnicode(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/StringBuilder.html?is-external=true" title="java.lang中的类或接口">StringBuilder</a>&nbsp;buf,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;val)</pre>
<div class="block">Converts a string into a unicode string literal. For example,
<code>can't{tab}run\</code> becomes <code>u'can''t\0009run\\'</code>.</div>
</li>
</ul>
<a name="unquoteStringLiteral-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unquoteStringLiteral</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;unquoteStringLiteral(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;val)</pre>
<div class="block">Converts a string literal back into a string. For example, <code>'can''t
run'</code> becomes <code>can't run</code>.</div>
</li>
</ul>
<a name="allowsAs--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>allowsAs</h4>
<pre>protected&nbsp;boolean&nbsp;allowsAs()</pre>
</li>
</ul>
<a name="requiresAliasForFromItems--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>requiresAliasForFromItems</h4>
<pre>public&nbsp;boolean&nbsp;requiresAliasForFromItems()</pre>
<div class="block">Whether a sub-query in the FROM clause must have an alias.
<p>For example, in PostgreSQL, this query is legal:
<blockquote><code>SELECT * FROM (SELECT * FROM Emp) As e</code></blockquote>
<p>but remove the alias <code>e</code> and it is not:
<blockquote><code>SELECT * FROM (SELECT * FROM Emp)</code></blockquote>
<p>In Oracle, both queries are legal.</div>
</li>
</ul>
<a name="hasImplicitTableAlias--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasImplicitTableAlias</h4>
<pre>public&nbsp;boolean&nbsp;hasImplicitTableAlias()</pre>
<div class="block">Returns whether a qualified table in the FROM clause has an implicit alias
which consists of just the table name.
<p>For example, in <a href="../../../../org/apache/calcite/sql/SqlDialect.DatabaseProduct.html#ORACLE"><code>SqlDialect.DatabaseProduct.ORACLE</code></a>
<blockquote>SELECT * FROM sales.emp</blockquote>
<p>is equivalent to
<blockquote>SELECT * FROM sales.emp AS emp</blockquote>
<p>and therefore
<blockquote>SELECT emp.empno FROM sales.emp</blockquote>
<p>is valid. But <a href="../../../../org/apache/calcite/sql/SqlDialect.DatabaseProduct.html#DB2"><code>SqlDialect.DatabaseProduct.DB2</code></a> does not have an implicit
alias, so the previous query it not valid; you need to write
<blockquote>SELECT sales.emp.empno FROM sales.emp</blockquote>
<p>Returns true for all databases except DB2.</div>
</li>
</ul>
<a name="quoteTimestampLiteral-java.sql.Timestamp-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>quoteTimestampLiteral</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&nbsp;quoteTimestampLiteral(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/Timestamp.html?is-external=true" title="java.sql中的类或接口">Timestamp</a>&nbsp;timestamp)</pre>
<div class="block">Converts a timestamp to a SQL timestamp literal, e.g.
<code>TIMESTAMP '2009-12-17 12:34:56'</code>.
<p>Timestamp values do not have a time zone. We therefore interpret them
as the number of milliseconds after the UTC epoch, and the formatted
value is that time in UTC.
<p>In particular,
<blockquote><code>quoteTimestampLiteral(new Timestamp(0));</code>
</blockquote>
<p>returns <code>TIMESTAMP '1970-01-01 00:00:00'</code>, regardless of the JVM's
time zone.</div>
<dl>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>timestamp</code> - Timestamp</dd>
<dt><span class="returnLabel">返回:</span></dt>
<dd>SQL timestamp literal</dd>
</dl>
</li>
</ul>
<a name="getDatabaseProduct--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDatabaseProduct</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="java.lang中的类或接口">@Deprecated</a>
public&nbsp;<a href="../../../../org/apache/calcite/sql/SqlDialect.DatabaseProduct.html" title="org.apache.calcite.sql中的枚举">SqlDialect.DatabaseProduct</a>&nbsp;getDatabaseProduct()</pre>
<div class="block"><span class="deprecatedLabel">已过时。</span>&nbsp;<span class="deprecationComment">To be removed without replacement</span></div>
<div class="block">Returns the database this dialect belongs to,
<a href="../../../../org/apache/calcite/sql/SqlDialect.DatabaseProduct.html#UNKNOWN"><code>SqlDialect.DatabaseProduct.UNKNOWN</code></a> if not known, never null.
<p>Please be judicious in how you use this method. If you wish to determine
whether a dialect has a particular capability or behavior, it is usually
better to add a method to SqlDialect and override that method in particular
sub-classes of SqlDialect.</div>
<dl>
<dt><span class="returnLabel">返回:</span></dt>
<dd>Database product</dd>
</dl>
</li>
</ul>
<a name="supportsCharSet--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsCharSet</h4>
<pre>public&nbsp;boolean&nbsp;supportsCharSet()</pre>
<div class="block">Returns whether the dialect supports character set names as part of a
data type, for instance <code>VARCHAR(30) CHARACTER SET `ISO-8859-1`</code>.</div>
</li>
</ul>
<a name="supportsAggregateFunction-org.apache.calcite.sql.SqlKind-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsAggregateFunction</h4>
<pre>public&nbsp;boolean&nbsp;supportsAggregateFunction(<a href="../../../../org/apache/calcite/sql/SqlKind.html" title="org.apache.calcite.sql中的枚举">SqlKind</a>&nbsp;kind)</pre>
</li>
</ul>
<a name="supportsWindowFunctions--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsWindowFunctions</h4>
<pre>public&nbsp;boolean&nbsp;supportsWindowFunctions()</pre>
<div class="block">Returns whether this dialect supports window functions (OVER clause).</div>
</li>
</ul>
<a name="supportsFunction-org.apache.calcite.sql.SqlOperator-org.apache.calcite.rel.type.RelDataType-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsFunction</h4>
<pre>public&nbsp;boolean&nbsp;supportsFunction(<a href="../../../../org/apache/calcite/sql/SqlOperator.html" title="org.apache.calcite.sql中的类">SqlOperator</a>&nbsp;operator,
<a href="../../../../org/apache/calcite/rel/type/RelDataType.html" title="org.apache.calcite.rel.type中的接口">RelDataType</a>&nbsp;type,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="java.util中的类或接口">List</a>&lt;<a href="../../../../org/apache/calcite/rel/type/RelDataType.html" title="org.apache.calcite.rel.type中的接口">RelDataType</a>&gt;&nbsp;paramTypes)</pre>
<div class="block">Returns whether this dialect supports a given function or operator.
It only applies to built-in scalar functions and operators, since
user-defined functions and procedures should be read by JdbcSchema.</div>
</li>
</ul>
<a name="getCalendarPolicy--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCalendarPolicy</h4>
<pre>public&nbsp;<a href="../../../../org/apache/calcite/sql/SqlDialect.CalendarPolicy.html" title="org.apache.calcite.sql中的枚举">SqlDialect.CalendarPolicy</a>&nbsp;getCalendarPolicy()</pre>
</li>
</ul>
<a name="supportsDataType-org.apache.calcite.rel.type.RelDataType-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsDataType</h4>
<pre>public&nbsp;boolean&nbsp;supportsDataType(<a href="../../../../org/apache/calcite/rel/type/RelDataType.html" title="org.apache.calcite.rel.type中的接口">RelDataType</a>&nbsp;type)</pre>
<div class="block">Returns whether this dialect supports a given type.</div>
</li>
</ul>
<a name="getCastSpec-org.apache.calcite.rel.type.RelDataType-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCastSpec</h4>
<pre>public&nbsp;<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;getCastSpec(<a href="../../../../org/apache/calcite/rel/type/RelDataType.html" title="org.apache.calcite.rel.type中的接口">RelDataType</a>&nbsp;type)</pre>
<div class="block">Returns SqlNode for type in "cast(column as type)", which might be
different between databases by type name, precision etc.</div>
</li>
</ul>
<a name="rewriteSingleValueExpr-org.apache.calcite.sql.SqlNode-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rewriteSingleValueExpr</h4>
<pre>public&nbsp;<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;rewriteSingleValueExpr(<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;aggCall)</pre>
<div class="block">Rewrite SINGLE_VALUE into expression based on database variants
E.g. HSQLDB, MYSQL, ORACLE, etc</div>
</li>
</ul>
<a name="emulateNullDirection-org.apache.calcite.sql.SqlNode-boolean-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>emulateNullDirection</h4>
<pre>public&nbsp;<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;emulateNullDirection(<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;node,
boolean&nbsp;nullsFirst,
boolean&nbsp;desc)</pre>
<div class="block">Returns the SqlNode for emulating the null direction for the given field
or <code>null</code> if no emulation needs to be done.</div>
<dl>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>node</code> - The SqlNode representing the expression</dd>
<dd><code>nullsFirst</code> - Whether nulls should come first</dd>
<dd><code>desc</code> - Whether the sort direction is
<a href="../../../../org/apache/calcite/rel/RelFieldCollation.Direction.html#DESCENDING"><code>RelFieldCollation.Direction.DESCENDING</code></a> or
<a href="../../../../org/apache/calcite/rel/RelFieldCollation.Direction.html#STRICTLY_DESCENDING"><code>RelFieldCollation.Direction.STRICTLY_DESCENDING</code></a></dd>
<dt><span class="returnLabel">返回:</span></dt>
<dd>A SqlNode for null direction emulation or <code>null</code> if not required</dd>
</dl>
</li>
</ul>
<a name="emulateJoinTypeForCrossJoin--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>emulateJoinTypeForCrossJoin</h4>
<pre>public&nbsp;<a href="../../../../org/apache/calcite/sql/JoinType.html" title="org.apache.calcite.sql中的枚举">JoinType</a>&nbsp;emulateJoinTypeForCrossJoin()</pre>
</li>
</ul>
<a name="emulateNullDirectionWithIsNull-org.apache.calcite.sql.SqlNode-boolean-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>emulateNullDirectionWithIsNull</h4>
<pre>protected&nbsp;<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;emulateNullDirectionWithIsNull(<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;node,
boolean&nbsp;nullsFirst,
boolean&nbsp;desc)</pre>
</li>
</ul>
<a name="supportsOffsetFetch--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsOffsetFetch</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="java.lang中的类或接口">@Deprecated</a>
public&nbsp;boolean&nbsp;supportsOffsetFetch()</pre>
<div class="block"><span class="deprecatedLabel">已过时。</span>&nbsp;<span class="deprecationComment">This method is no longer used. To change how the dialect
unparses offset/fetch, override the <a href="../../../../org/apache/calcite/sql/SqlDialect.html#unparseOffsetFetch-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlNode-org.apache.calcite.sql.SqlNode-"><code>unparseOffsetFetch(org.apache.calcite.sql.SqlWriter, org.apache.calcite.sql.SqlNode, org.apache.calcite.sql.SqlNode)</code></a> method.</span></div>
<div class="block">Returns whether the dialect supports OFFSET/FETCH clauses
introduced by SQL:2008, for instance
<code>OFFSET 10 ROWS FETCH NEXT 20 ROWS ONLY</code>.
If false, we assume that the dialect supports the alternative syntax
<code>LIMIT 20 OFFSET 10</code>.</div>
</li>
</ul>
<a name="unparseOffsetFetch-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlNode-org.apache.calcite.sql.SqlNode-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unparseOffsetFetch</h4>
<pre>public&nbsp;void&nbsp;unparseOffsetFetch(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;offset,
<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;fetch)</pre>
<div class="block">Converts an offset and fetch into SQL.
<p>At least one of <code>offset</code> and <code>fetch</code> must be provided.
<p>Common options:
<ul>
<li><code>OFFSET offset ROWS FETCH NEXT fetch ROWS ONLY</code>
(ANSI standard SQL, Oracle, PostgreSQL, and the default)
<li><code>LIMIT fetch OFFSET offset</code> (Apache Hive, MySQL, Redshift)
</ul></div>
<dl>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>writer</code> - Writer</dd>
<dd><code>offset</code> - Number of rows to skip before emitting, or null</dd>
<dd><code>fetch</code> - Number of rows to fetch, or null</dd>
<dt><span class="seeLabel">另请参阅:</span></dt>
<dd><a href="../../../../org/apache/calcite/sql/SqlDialect.html#unparseFetchUsingAnsi-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlNode-org.apache.calcite.sql.SqlNode-"><code>unparseFetchUsingAnsi(SqlWriter, SqlNode, SqlNode)</code></a>,
<a href="../../../../org/apache/calcite/sql/SqlDialect.html#unparseFetchUsingLimit-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlNode-org.apache.calcite.sql.SqlNode-"><code>unparseFetchUsingLimit(SqlWriter, SqlNode, SqlNode)</code></a></dd>
</dl>
</li>
</ul>
<a name="unparseTopN-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlNode-org.apache.calcite.sql.SqlNode-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unparseTopN</h4>
<pre>public&nbsp;void&nbsp;unparseTopN(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;offset,
<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;fetch)</pre>
<div class="block">Converts a fetch into a "SELECT TOP(fetch)".
<p>A dialect that uses "TOP" syntax should override this method to print
"TOP(fetch)", and override <a href="../../../../org/apache/calcite/sql/SqlDialect.html#unparseOffsetFetch-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlNode-org.apache.calcite.sql.SqlNode-"><code>unparseOffsetFetch(org.apache.calcite.sql.SqlWriter, org.apache.calcite.sql.SqlNode, org.apache.calcite.sql.SqlNode)</code></a> to no-op.
<p>The default implementation of this method is no-op.</div>
<dl>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>writer</code> - Writer</dd>
<dd><code>offset</code> - Number of rows to skip before emitting, or null</dd>
<dd><code>fetch</code> - Number of rows to fetch, or null</dd>
</dl>
</li>
</ul>
<a name="unparseFetchUsingAnsi-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlNode-org.apache.calcite.sql.SqlNode-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unparseFetchUsingAnsi</h4>
<pre>protected final&nbsp;void&nbsp;unparseFetchUsingAnsi(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;offset,
<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;fetch)</pre>
<div class="block">Unparses offset/fetch using ANSI standard "OFFSET offset ROWS FETCH NEXT
fetch ROWS ONLY" syntax.</div>
</li>
</ul>
<a name="unparseFetchUsingLimit-org.apache.calcite.sql.SqlWriter-org.apache.calcite.sql.SqlNode-org.apache.calcite.sql.SqlNode-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unparseFetchUsingLimit</h4>
<pre>protected final&nbsp;void&nbsp;unparseFetchUsingLimit(<a href="../../../../org/apache/calcite/sql/SqlWriter.html" title="org.apache.calcite.sql中的接口">SqlWriter</a>&nbsp;writer,
<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;offset,
<a href="../../../../org/apache/calcite/sql/SqlNode.html" title="org.apache.calcite.sql中的类">SqlNode</a>&nbsp;fetch)</pre>
<div class="block">Unparses offset/fetch using "LIMIT fetch OFFSET offset" syntax.</div>
</li>
</ul>
<a name="supportsNestedAggregations--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsNestedAggregations</h4>
<pre>public&nbsp;boolean&nbsp;supportsNestedAggregations()</pre>
<div class="block">Returns whether the dialect supports nested aggregations, for instance
<code>SELECT SUM(SUM(1)) </code>.</div>
</li>
</ul>
<a name="supportsGroupByWithRollup--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsGroupByWithRollup</h4>
<pre>public&nbsp;boolean&nbsp;supportsGroupByWithRollup()</pre>
<div class="block">Returns whether this dialect supports "WITH ROLLUP" in the "GROUP BY"
clause.
<p>For instance, in MySQL version 5,
<blockquote>
<code>
SELECT deptno, job, COUNT(*) AS c
FROM emp
GROUP BY deptno, job WITH ROLLUP
</code>
</blockquote>
<p>is equivalent to standard SQL
<blockquote>
<code>
SELECT deptno, job, COUNT(*) AS c
FROM emp
GROUP BY ROLLUP(deptno, job)
ORDER BY deptno, job
</code>
</blockquote>
<p>The "WITH ROLLUP" clause was introduced in MySQL and is not standard
SQL.
<p>See also <a href="../../../../org/apache/calcite/sql/SqlDialect.html#supportsAggregateFunction-org.apache.calcite.sql.SqlKind-"><code>supportsAggregateFunction(SqlKind)</code></a> applied to
<a href="../../../../org/apache/calcite/sql/SqlKind.html#ROLLUP"><code>SqlKind.ROLLUP</code></a>, which returns true in MySQL 8 and higher.</div>
</li>
</ul>
<a name="supportsGroupByWithCube--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsGroupByWithCube</h4>
<pre>public&nbsp;boolean&nbsp;supportsGroupByWithCube()</pre>
<div class="block">Returns whether this dialect supports "WITH CUBE" in "GROUP BY" clause.</div>
</li>
</ul>
<a name="getNullCollation--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNullCollation</h4>
<pre>public&nbsp;<a href="../../../../org/apache/calcite/config/NullCollation.html" title="org.apache.calcite.config中的枚举">NullCollation</a>&nbsp;getNullCollation()</pre>
<div class="block">Returns how NULL values are sorted if an ORDER BY item does not contain
NULLS ASCENDING or NULLS DESCENDING.</div>
</li>
</ul>
<a name="defaultNullDirection-org.apache.calcite.rel.RelFieldCollation.Direction-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>defaultNullDirection</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/javax/annotation/Nonnull.html?is-external=true" title="javax.annotation中的类或接口">@Nonnull</a>
public&nbsp;<a href="../../../../org/apache/calcite/rel/RelFieldCollation.NullDirection.html" title="org.apache.calcite.rel中的枚举">RelFieldCollation.NullDirection</a>&nbsp;defaultNullDirection(<a href="../../../../org/apache/calcite/rel/RelFieldCollation.Direction.html" title="org.apache.calcite.rel中的枚举">RelFieldCollation.Direction</a>&nbsp;direction)</pre>
<div class="block">Returns whether NULL values are sorted first or last, in this dialect,
in an ORDER BY item of a given direction.</div>
</li>
</ul>
<a name="supportsAliasedValues--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsAliasedValues</h4>
<pre>public&nbsp;boolean&nbsp;supportsAliasedValues()</pre>
<div class="block">Returns whether the dialect supports VALUES in a sub-query with
and an "AS t(column, ...)" values to define column names.
<p>Currently, only Oracle does not. For this, we generate "SELECT v0 AS c0,
v1 AS c1 ... UNION ALL ...". We may need to refactor this method when we
support VALUES for other dialects.</div>
</li>
</ul>
<a name="supportsImplicitTypeCoercion-org.apache.calcite.rex.RexCall-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsImplicitTypeCoercion</h4>
<pre>public&nbsp;boolean&nbsp;supportsImplicitTypeCoercion(<a href="../../../../org/apache/calcite/rex/RexCall.html" title="org.apache.calcite.rex中的类">RexCall</a>&nbsp;call)</pre>
<div class="block">Returns whether the dialect supports implicit type coercion.
<p>Most of the sql dialects support implicit type coercion, so we make this method
default return true. For instance, "cast('10' as integer) &gt; 5"
can be simplified to "'10' &gt; 5" if the dialect supports implicit type coercion
for VARCHAR and INTEGER comparison.
<p>For sql dialect that does not support implicit type coercion, such as the BigQuery,
we can not convert '10' into INT64 implicitly.
<p>Now this method is used for some auxiliary decision when translating some <a href="../../../../org/apache/calcite/rex/RexCall.html" title="org.apache.calcite.rex中的类"><code>RexCall</code></a>s,
see SqlImplementor#stripCastFromString for details.</div>
<dl>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>call</code> - the call to make decision</dd>
</dl>
</li>
</ul>
<a name="getSingleRowTableName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSingleRowTableName</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/javax/annotation/Nullable.html?is-external=true" title="javax.annotation中的类或接口">@Nullable</a>
public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="java.util中的类或接口">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="java.lang中的类或接口">String</a>&gt;&nbsp;getSingleRowTableName()</pre>
<div class="block">Returns the name of the system table that has precisely one row.
If there is no such table, returns null, and we will generate SELECT with
no FROM clause.
<p>For <code>VALUES 1</code>,
Oracle returns ["DUAL"] and we generate "SELECT 1 FROM DUAL";
MySQL returns null and we generate "SELECT 1".</div>
</li>
</ul>
<a name="configureParser-org.apache.calcite.sql.parser.SqlParser.ConfigBuilder-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>configureParser</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/javax/annotation/Nonnull.html?is-external=true" title="javax.annotation中的类或接口">@Nonnull</a>
public&nbsp;<a href="../../../../org/apache/calcite/sql/parser/SqlParser.ConfigBuilder.html" title="org.apache.calcite.sql.parser中的类">SqlParser.ConfigBuilder</a>&nbsp;configureParser(<a href="../../../../org/apache/calcite/sql/parser/SqlParser.ConfigBuilder.html" title="org.apache.calcite.sql.parser中的类">SqlParser.ConfigBuilder</a>&nbsp;configBuilder)</pre>
<div class="block">Copies settings from this dialect into a parser configuration.
<p><code>SqlDialect</code>, <code>SqlParser.Config</code> and <a href="../../../../org/apache/calcite/sql/validate/SqlConformance.html" title="org.apache.calcite.sql.validate中的接口"><code>SqlConformance</code></a>
cover different aspects of the same thing - the dialect of SQL spoken by a
database - and this method helps to bridge between them. (The aspects are,
respectively, generating SQL to send to a source database, parsing SQL
sent to Calcite, and validating queries sent to Calcite. It makes sense to
keep them as separate interfaces because they are used by different
modules.)
<p>The settings copied may differ among dialects, and may change over time,
but currently include the following:
<ul>
<li><a href="../../../../org/apache/calcite/sql/SqlDialect.html#getQuoting--"><code>getQuoting()</code></a>
<li><a href="../../../../org/apache/calcite/sql/SqlDialect.html#getQuotedCasing--"><code>getQuotedCasing()</code></a>
<li><a href="../../../../org/apache/calcite/sql/SqlDialect.html#getUnquotedCasing--"><code>getUnquotedCasing()</code></a>
<li><a href="../../../../org/apache/calcite/sql/SqlDialect.html#isCaseSensitive--"><code>isCaseSensitive()</code></a>
<li><a href="../../../../org/apache/calcite/sql/SqlDialect.html#getConformance--"><code>getConformance()</code></a>
</ul></div>
<dl>
<dt><span class="paramLabel">参数:</span></dt>
<dd><code>configBuilder</code> - Parser configuration builder</dd>
<dt><span class="returnLabel">返回:</span></dt>
<dd>The configuration builder</dd>
</dl>
</li>
</ul>
<a name="getConformance--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getConformance</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/javax/annotation/Nonnull.html?is-external=true" title="javax.annotation中的类或接口">@Nonnull</a>
public&nbsp;<a href="../../../../org/apache/calcite/sql/validate/SqlConformance.html" title="org.apache.calcite.sql.validate中的接口">SqlConformance</a>&nbsp;getConformance()</pre>
<div class="block">Returns the <a href="../../../../org/apache/calcite/sql/validate/SqlConformance.html" title="org.apache.calcite.sql.validate中的接口"><code>SqlConformance</code></a> that matches this dialect.
<p>The base implementation returns its best guess, based upon
<a href="../../../../org/apache/calcite/sql/SqlDialect.html#databaseProduct"><code>databaseProduct</code></a>; sub-classes may override.</div>
</li>
</ul>
<a name="getQuoting--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQuoting</h4>
<pre>protected&nbsp;org.apache.calcite.avatica.util.Quoting&nbsp;getQuoting()</pre>
<div class="block">Returns the quoting scheme, or null if the combination of
<a href="../../../../org/apache/calcite/sql/SqlDialect.html#identifierQuoteString"><code>identifierQuoteString</code></a> and <a href="../../../../org/apache/calcite/sql/SqlDialect.html#identifierEndQuoteString"><code>identifierEndQuoteString</code></a>
does not correspond to any known quoting scheme.</div>
</li>
</ul>
<a name="getUnquotedCasing--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUnquotedCasing</h4>
<pre>public&nbsp;org.apache.calcite.avatica.util.Casing&nbsp;getUnquotedCasing()</pre>
<div class="block">Returns how unquoted identifiers are stored.</div>
</li>
</ul>
<a name="getQuotedCasing--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQuotedCasing</h4>
<pre>public&nbsp;org.apache.calcite.avatica.util.Casing&nbsp;getQuotedCasing()</pre>
<div class="block">Returns how quoted identifiers are stored.</div>
</li>
</ul>
<a name="isCaseSensitive--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>isCaseSensitive</h4>
<pre>public&nbsp;boolean&nbsp;isCaseSensitive()</pre>
<div class="block">Returns whether matching of identifiers is case-sensitive.</div>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="跳过导航链接">跳过导航链接</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="导航">
<li><a href="../../../../overview-summary.html">概览</a></li>
<li><a href="package-summary.html">程序包</a></li>
<li class="navBarCell1Rev"></li>
<li><a href="package-tree.html"></a></li>
<li><a href="../../../../deprecated-list.html">已过时</a></li>
<li><a href="../../../../index-all.html">索引</a></li>
<li><a href="../../../../help-doc.html">帮助</a></li>
</ul>
<div class="aboutLanguage"><b>Apache Calcite</b></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/calcite/sql/SqlDescriptorOperator.html" title="org.apache.calcite.sql中的类"><span class="typeNameLink">上一个类</span></a></li>
<li><a href="../../../../org/apache/calcite/sql/SqlDialect.CalendarPolicy.html" title="org.apache.calcite.sql中的枚举"><span class="typeNameLink">下一个类</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/calcite/sql/SqlDialect.html" target="_top">框架</a></li>
<li><a href="SqlDialect.html" target="_top">无框架</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">所有类</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>
</div>
<div>
<ul class="subNavList">
<li>概要:&nbsp;</li>
<li><a href="#nested.class.summary">嵌套</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">字段</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">构造器</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">方法</a></li>
</ul>
<ul class="subNavList">
<li>详细资料:&nbsp;</li>
<li><a href="#field.detail">字段</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">构造器</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">方法</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &copy; 2012-2020 Apache Software Foundation. All Rights Reserved.</small></p>
</body>
</html>