<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>RelMdUtil (Apache Calcite API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../../jquery/jquery-3.3.1.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-migrate-3.0.1.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="RelMdUtil (Apache Calcite API)";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":41,"i11":9,"i12":9,"i13":9,"i14":9,"i15":9,"i16":9,"i17":9,"i18":9,"i19":9,"i20":9,"i21":9,"i22":9,"i23":9,"i24":9,"i25":9,"i26":9,"i27":9,"i28":9,"i29":9,"i30":9,"i31":9,"i32":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/RelMdUtil.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.calcite.rel.metadata</a></div>
<h2 title="Class RelMdUtil" class="title">Class RelMdUtil</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.apache.calcite.rel.metadata.RelMdUtil</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<pre>public class <span class="typeNameLabel">RelMdUtil</span>
extends java.lang.Object</pre>
<div class="block">RelMdUtil provides utility methods used by the metadata provider methods.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="nested.class.summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="RelMdUtil.CardOfProjExpr.html" title="class in org.apache.calcite.rel.metadata">RelMdUtil.CardOfProjExpr</a></span></code></th>
<td class="colLast">
<div class="block">Visitor that walks over a scalar expression and computes the
 cardinality of its result.</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- =========== FIELD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#ARTIFICIAL_SELECTIVITY_FUNC">ARTIFICIAL_SELECTIVITY_FUNC</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colSecond" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private </code></td>
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">RelMdUtil</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>static double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addEpsilon(double)">addEpsilon</a></span>&#8203;(double&nbsp;d)</code></th>
<td class="colLast">
<div class="block">Add an epsilon to the value passed in.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#areColumnsDefinitelyUnique(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,java.util.List)">areColumnsDefinitelyUnique</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                          <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
                          java.util.List&lt;<a href="../../rex/RexInputRef.html" title="class in org.apache.calcite.rex">RexInputRef</a>&gt;&nbsp;columnRefs)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#areColumnsDefinitelyUnique(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,org.apache.calcite.util.ImmutableBitSet)">areColumnsDefinitelyUnique</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                          <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
                          <a href="../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;colMask)</code></th>
<td class="colLast">
<div class="block">Returns true if the columns represented in a bit mask are definitely
 known to form a unique column set.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#areColumnsDefinitelyUniqueWhenNullsFiltered(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,java.util.List)">areColumnsDefinitelyUniqueWhenNullsFiltered</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                           <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
                                           java.util.List&lt;<a href="../../rex/RexInputRef.html" title="class in org.apache.calcite.rex">RexInputRef</a>&gt;&nbsp;columnRefs)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#areColumnsDefinitelyUniqueWhenNullsFiltered(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,org.apache.calcite.util.ImmutableBitSet)">areColumnsDefinitelyUniqueWhenNullsFiltered</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                           <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
                                           <a href="../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;colMask)</code></th>
<td class="colLast">
<div class="block">Returns true if the columns represented in a bit mask are definitely
 known to form a unique column set, when nulls have been filtered from
 the columns.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>static java.lang.Boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#areColumnsUnique(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,java.util.List)">areColumnsUnique</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
                java.util.List&lt;<a href="../../rex/RexInputRef.html" title="class in org.apache.calcite.rex">RexInputRef</a>&gt;&nbsp;columnRefs)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>static java.lang.Boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#areColumnsUniqueWhenNullsFiltered(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,java.util.List)">areColumnsUniqueWhenNullsFiltered</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                 <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
                                 java.util.List&lt;<a href="../../rex/RexInputRef.html" title="class in org.apache.calcite.rex">RexInputRef</a>&gt;&nbsp;columnRefs)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>static double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#capInfinity(java.lang.Double)">capInfinity</a></span>&#8203;(java.lang.Double&nbsp;d)</code></th>
<td class="colLast">
<div class="block">Caps a double value at Double.MAX_VALUE if it's currently infinity</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>static java.lang.Double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#cardOfProjExpr(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.core.Project,org.apache.calcite.rex.RexNode)">cardOfProjExpr</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
              <a href="../core/Project.html" title="class in org.apache.calcite.rel.core">Project</a>&nbsp;rel,
              <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;expr)</code></th>
<td class="colLast">
<div class="block">Computes the cardinality of a particular expression from the projection
 list.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkInputForCollationAndLimit(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.RelCollation,org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">checkInputForCollationAndLimit</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                              <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
                              <a href="../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;collation,
                              <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;offset,
                              <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;fetch)</code></th>
<td class="colLast">
<div class="block">Returns whether a relational expression is already sorted and has fewer
 rows than the sum of offset and limit.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>static double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#computeSemiJoinSelectivity(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.core.SemiJoin)">computeSemiJoinSelectivity</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                          <a href="../core/SemiJoin.html" title="class in org.apache.calcite.rel.core">SemiJoin</a>&nbsp;rel)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>static double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#computeSemiJoinSelectivity(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.RelNode,java.util.List,java.util.List)">computeSemiJoinSelectivity</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                          <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;factRel,
                          <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;dimRel,
                          java.util.List&lt;java.lang.Integer&gt;&nbsp;factKeyList,
                          java.util.List&lt;java.lang.Integer&gt;&nbsp;dimKeyList)</code></th>
<td class="colLast">
<div class="block">Computes the selectivity of a semijoin filter if it is applied on a fact
 table.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>static double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#computeSemiJoinSelectivity(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.core.Join)">computeSemiJoinSelectivity</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                          <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;factRel,
                          <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;dimRel,
                          <a href="../core/Join.html" title="class in org.apache.calcite.rel.core">Join</a>&nbsp;rel)</code></th>
<td class="colLast">
<div class="block">Computes the selectivity of a semijoin filter if it is applied on a fact
 table.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>static double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#estimateFilteredRows(org.apache.calcite.rel.RelNode,org.apache.calcite.rex.RexNode,org.apache.calcite.rel.metadata.RelMetadataQuery)">estimateFilteredRows</a></span>&#8203;(<a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;child,
                    <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;condition,
                    <a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>static double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#estimateFilteredRows(org.apache.calcite.rel.RelNode,org.apache.calcite.rex.RexProgram,org.apache.calcite.rel.metadata.RelMetadataQuery)">estimateFilteredRows</a></span>&#8203;(<a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;child,
                    <a href="../../rex/RexProgram.html" title="class in org.apache.calcite.rex">RexProgram</a>&nbsp;program,
                    <a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>static java.lang.Double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getJoinDistinctRowCount(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.core.JoinRelType,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rex.RexNode,boolean)">getJoinDistinctRowCount</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                       <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;joinRel,
                       <a href="../core/JoinRelType.html" title="enum in org.apache.calcite.rel.core">JoinRelType</a>&nbsp;joinType,
                       <a href="../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;groupKey,
                       <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;predicate,
                       boolean&nbsp;useMaxNdv)</code></th>
<td class="colLast">
<div class="block">Computes the number of distinct rows for a set of keys returned from a
 join.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>static java.lang.Double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getJoinPopulationSize(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,org.apache.calcite.util.ImmutableBitSet)">getJoinPopulationSize</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                     <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;joinRel,
                     <a href="../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;groupKey)</code></th>
<td class="colLast">
<div class="block">Computes the population size for a set of keys returned from a join</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>static java.lang.Double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getJoinRowCount(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.core.Join,org.apache.calcite.rex.RexNode)">getJoinRowCount</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
               <a href="../core/Join.html" title="class in org.apache.calcite.rel.core">Join</a>&nbsp;join,
               <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;condition)</code></th>
<td class="colLast">
<div class="block">Returns an estimate of the number of rows returned by a <a href="../core/Join.html" title="class in org.apache.calcite.rel.core"><code>Join</code></a>.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>static double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMinusRowCount(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.core.Minus)">getMinusRowCount</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                <a href="../core/Minus.html" title="class in org.apache.calcite.rel.core">Minus</a>&nbsp;minus)</code></th>
<td class="colLast">
<div class="block">Returns an estimate of the number of rows returned by a <a href="../core/Minus.html" title="class in org.apache.calcite.rel.core"><code>Minus</code></a>.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>static double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getSelectivityValue(org.apache.calcite.rex.RexNode)">getSelectivityValue</a></span>&#8203;(<a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;artificialSelectivityFuncNode)</code></th>
<td class="colLast">
<div class="block">Returns the selectivity value stored in a call.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>static java.lang.Double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getSemiJoinDistinctRowCount(org.apache.calcite.rel.core.Join,org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rex.RexNode)">getSemiJoinDistinctRowCount</a></span>&#8203;(<a href="../core/Join.html" title="class in org.apache.calcite.rel.core">Join</a>&nbsp;semiJoinRel,
                           <a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                           <a href="../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;groupKey,
                           <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;predicate)</code></th>
<td class="colLast">
<div class="block">Computes the number of distinct rows for a set of keys returned from a
 semi-join</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>static java.lang.Double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getSemiJoinRowCount(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.core.JoinRelType,org.apache.calcite.rex.RexNode)">getSemiJoinRowCount</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                   <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;left,
                   <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;right,
                   <a href="../core/JoinRelType.html" title="enum in org.apache.calcite.rel.core">JoinRelType</a>&nbsp;joinType,
                   <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;condition)</code></th>
<td class="colLast">
<div class="block">Returns an estimate of the number of rows returned by a semi-join.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>static double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getUnionAllRowCount(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.core.Union)">getUnionAllRowCount</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                   <a href="../core/Union.html" title="class in org.apache.calcite.rel.core">Union</a>&nbsp;rel)</code></th>
<td class="colLast">
<div class="block">Returns an estimate of the number of rows returned by a <a href="../core/Union.html" title="class in org.apache.calcite.rel.core"><code>Union</code></a>
 (before duplicates are eliminated).</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>static double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#guessSelectivity(org.apache.calcite.rex.RexNode)">guessSelectivity</a></span>&#8203;(<a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;predicate)</code></th>
<td class="colLast">
<div class="block">Returns default estimates for selectivities, in the absence of stats.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>static double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#guessSelectivity(org.apache.calcite.rex.RexNode,boolean)">guessSelectivity</a></span>&#8203;(<a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;predicate,
                boolean&nbsp;artificialOnly)</code></th>
<td class="colLast">
<div class="block">Returns default estimates for selectivities, in the absence of stats.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>static double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#linear(int,int,int,double,double)">linear</a></span>&#8203;(int&nbsp;x,
      int&nbsp;minX,
      int&nbsp;maxX,
      double&nbsp;minY,
      double&nbsp;maxY)</code></th>
<td class="colLast">
<div class="block">Returns a point on a line.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>static <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#makeSemiJoinSelectivityRexNode(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.core.Join)">makeSemiJoinSelectivityRexNode</a></span>&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                              <a href="../core/Join.html" title="class in org.apache.calcite.rel.core">Join</a>&nbsp;rel)</code></th>
<td class="colLast">
<div class="block">Creates a RexNode that stores a selectivity value corresponding to the
 selectivity of a semijoin.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>static <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#minusPreds(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">minusPreds</a></span>&#8203;(<a href="../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
          <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pred1,
          <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pred2)</code></th>
<td class="colLast">
<div class="block">Takes the difference between two predicates, removing from the first any
 predicates also in the second</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>static java.lang.Double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#numDistinctVals(java.lang.Double,java.lang.Double)">numDistinctVals</a></span>&#8203;(java.lang.Double&nbsp;domainSize,
               java.lang.Double&nbsp;numSelected)</code></th>
<td class="colLast">
<div class="block">Returns the number of distinct values provided numSelected are selected
 where there are domainSize distinct values.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>static void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setAggChildKeys(org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rel.core.Aggregate,org.apache.calcite.util.ImmutableBitSet.Builder)">setAggChildKeys</a></span>&#8203;(<a href="../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;groupKey,
               <a href="../core/Aggregate.html" title="class in org.apache.calcite.rel.core">Aggregate</a>&nbsp;aggRel,
               <a href="../../util/ImmutableBitSet.Builder.html" title="class in org.apache.calcite.util">ImmutableBitSet.Builder</a>&nbsp;childKey)</code></th>
<td class="colLast">
<div class="block">Takes a bitmap representing a set of input references and extracts the
 ones that reference the group by columns in an aggregate.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>static void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setLeftRightBitmaps(org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.util.ImmutableBitSet.Builder,org.apache.calcite.util.ImmutableBitSet.Builder,int)">setLeftRightBitmaps</a></span>&#8203;(<a href="../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;groupKey,
                   <a href="../../util/ImmutableBitSet.Builder.html" title="class in org.apache.calcite.util">ImmutableBitSet.Builder</a>&nbsp;leftMask,
                   <a href="../../util/ImmutableBitSet.Builder.html" title="class in org.apache.calcite.util">ImmutableBitSet.Builder</a>&nbsp;rightMask,
                   int&nbsp;nFieldsOnLeft)</code></th>
<td class="colLast">
<div class="block">Separates a bit-mask representing a join into masks representing the left
 and right inputs into the join.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>static void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#splitCols(java.util.List,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.util.ImmutableBitSet.Builder,org.apache.calcite.util.ImmutableBitSet.Builder)">splitCols</a></span>&#8203;(java.util.List&lt;<a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projExprs,
         <a href="../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;groupKey,
         <a href="../../util/ImmutableBitSet.Builder.html" title="class in org.apache.calcite.util">ImmutableBitSet.Builder</a>&nbsp;baseCols,
         <a href="../../util/ImmutableBitSet.Builder.html" title="class in org.apache.calcite.util">ImmutableBitSet.Builder</a>&nbsp;projCols)</code></th>
<td class="colLast">
<div class="block">Forms two bitmaps by splitting the columns in a bitmap according to
 whether or not the column references the child input or is an expression</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>static <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#unionPreds(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">unionPreds</a></span>&#8203;(<a href="../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
          <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pred1,
          <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pred2)</code></th>
<td class="colLast">
<div class="block">AND's two predicates together, either of which may be null, removing
 redundant filters.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a id="ARTIFICIAL_SELECTIVITY_FUNC">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ARTIFICIAL_SELECTIVITY_FUNC</h4>
<pre>public static final&nbsp;<a href="../../sql/SqlFunction.html" title="class in org.apache.calcite.sql">SqlFunction</a> ARTIFICIAL_SELECTIVITY_FUNC</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>RelMdUtil</h4>
<pre>private&nbsp;RelMdUtil()</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a id="makeSemiJoinSelectivityRexNode(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.core.Join)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>makeSemiJoinSelectivityRexNode</h4>
<pre class="methodSignature">public static&nbsp;<a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;makeSemiJoinSelectivityRexNode&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                                     <a href="../core/Join.html" title="class in org.apache.calcite.rel.core">Join</a>&nbsp;rel)</pre>
<div class="block">Creates a RexNode that stores a selectivity value corresponding to the
 selectivity of a semijoin. This can be added to a filter to simulate the
 effect of the semijoin during costing, but should never appear in a real
 plan since it has no physical implementation.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>rel</code> - the semijoin of interest</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>constructed rexnode</dd>
</dl>
</li>
</ul>
<a id="getSelectivityValue(org.apache.calcite.rex.RexNode)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSelectivityValue</h4>
<pre class="methodSignature">public static&nbsp;double&nbsp;getSelectivityValue&#8203;(<a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;artificialSelectivityFuncNode)</pre>
<div class="block">Returns the selectivity value stored in a call.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>artificialSelectivityFuncNode</code> - Call containing the selectivity value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>selectivity value</dd>
</dl>
</li>
</ul>
<a id="computeSemiJoinSelectivity(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.core.SemiJoin)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>computeSemiJoinSelectivity</h4>
<pre class="methodSignature">@Deprecated
public static&nbsp;double&nbsp;computeSemiJoinSelectivity&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                                <a href="../core/SemiJoin.html" title="class in org.apache.calcite.rel.core">SemiJoin</a>&nbsp;rel)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
<div class="block">Computes the selectivity of a semijoin filter if it is applied on a fact
 table. The computation is based on the selectivity of the dimension
 table/columns and the number of distinct values in the fact table
 columns.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>rel</code> - semijoin rel</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>calculated selectivity</dd>
</dl>
</li>
</ul>
<a id="computeSemiJoinSelectivity(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.core.Join)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>computeSemiJoinSelectivity</h4>
<pre class="methodSignature">public static&nbsp;double&nbsp;computeSemiJoinSelectivity&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                                <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;factRel,
                                                <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;dimRel,
                                                <a href="../core/Join.html" title="class in org.apache.calcite.rel.core">Join</a>&nbsp;rel)</pre>
<div class="block">Computes the selectivity of a semijoin filter if it is applied on a fact
 table. The computation is based on the selectivity of the dimension
 table/columns and the number of distinct values in the fact table
 columns.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>factRel</code> - fact table participating in the semijoin</dd>
<dd><code>dimRel</code> - dimension table participating in the semijoin</dd>
<dd><code>rel</code> - semijoin rel</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>calculated selectivity</dd>
</dl>
</li>
</ul>
<a id="computeSemiJoinSelectivity(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.RelNode,java.util.List,java.util.List)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>computeSemiJoinSelectivity</h4>
<pre class="methodSignature">public static&nbsp;double&nbsp;computeSemiJoinSelectivity&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                                <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;factRel,
                                                <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;dimRel,
                                                java.util.List&lt;java.lang.Integer&gt;&nbsp;factKeyList,
                                                java.util.List&lt;java.lang.Integer&gt;&nbsp;dimKeyList)</pre>
<div class="block">Computes the selectivity of a semijoin filter if it is applied on a fact
 table. The computation is based on the selectivity of the dimension
 table/columns and the number of distinct values in the fact table
 columns.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>factRel</code> - fact table participating in the semijoin</dd>
<dd><code>dimRel</code> - dimension table participating in the semijoin</dd>
<dd><code>factKeyList</code> - LHS keys used in the filter</dd>
<dd><code>dimKeyList</code> - RHS keys used in the filter</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>calculated selectivity</dd>
</dl>
</li>
</ul>
<a id="areColumnsDefinitelyUnique(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,org.apache.calcite.util.ImmutableBitSet)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>areColumnsDefinitelyUnique</h4>
<pre class="methodSignature">public static&nbsp;boolean&nbsp;areColumnsDefinitelyUnique&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                                 <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
                                                 <a href="../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;colMask)</pre>
<div class="block">Returns true if the columns represented in a bit mask are definitely
 known to form a unique column set.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>rel</code> - the relational expression that the column mask corresponds
                to</dd>
<dd><code>colMask</code> - bit mask containing columns that will be tested for
                uniqueness</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if bit mask represents a unique column set; false if not (or
 if no metadata is available)</dd>
</dl>
</li>
</ul>
<a id="areColumnsUnique(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,java.util.List)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>areColumnsUnique</h4>
<pre class="methodSignature">public static&nbsp;java.lang.Boolean&nbsp;areColumnsUnique&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                                 <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
                                                 java.util.List&lt;<a href="../../rex/RexInputRef.html" title="class in org.apache.calcite.rex">RexInputRef</a>&gt;&nbsp;columnRefs)</pre>
</li>
</ul>
<a id="areColumnsDefinitelyUnique(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,java.util.List)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>areColumnsDefinitelyUnique</h4>
<pre class="methodSignature">public static&nbsp;boolean&nbsp;areColumnsDefinitelyUnique&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                                 <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
                                                 java.util.List&lt;<a href="../../rex/RexInputRef.html" title="class in org.apache.calcite.rex">RexInputRef</a>&gt;&nbsp;columnRefs)</pre>
</li>
</ul>
<a id="areColumnsDefinitelyUniqueWhenNullsFiltered(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,org.apache.calcite.util.ImmutableBitSet)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>areColumnsDefinitelyUniqueWhenNullsFiltered</h4>
<pre class="methodSignature">public static&nbsp;boolean&nbsp;areColumnsDefinitelyUniqueWhenNullsFiltered&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                                                  <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
                                                                  <a href="../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;colMask)</pre>
<div class="block">Returns true if the columns represented in a bit mask are definitely
 known to form a unique column set, when nulls have been filtered from
 the columns.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>rel</code> - the relational expression that the column mask corresponds
                to</dd>
<dd><code>colMask</code> - bit mask containing columns that will be tested for
                uniqueness</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if bit mask represents a unique column set; false if not (or
 if no metadata is available)</dd>
</dl>
</li>
</ul>
<a id="areColumnsUniqueWhenNullsFiltered(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,java.util.List)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>areColumnsUniqueWhenNullsFiltered</h4>
<pre class="methodSignature">public static&nbsp;java.lang.Boolean&nbsp;areColumnsUniqueWhenNullsFiltered&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                                                  <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
                                                                  java.util.List&lt;<a href="../../rex/RexInputRef.html" title="class in org.apache.calcite.rex">RexInputRef</a>&gt;&nbsp;columnRefs)</pre>
</li>
</ul>
<a id="areColumnsDefinitelyUniqueWhenNullsFiltered(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,java.util.List)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>areColumnsDefinitelyUniqueWhenNullsFiltered</h4>
<pre class="methodSignature">public static&nbsp;boolean&nbsp;areColumnsDefinitelyUniqueWhenNullsFiltered&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                                                  <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;rel,
                                                                  java.util.List&lt;<a href="../../rex/RexInputRef.html" title="class in org.apache.calcite.rex">RexInputRef</a>&gt;&nbsp;columnRefs)</pre>
</li>
</ul>
<a id="setLeftRightBitmaps(org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.util.ImmutableBitSet.Builder,org.apache.calcite.util.ImmutableBitSet.Builder,int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setLeftRightBitmaps</h4>
<pre class="methodSignature">public static&nbsp;void&nbsp;setLeftRightBitmaps&#8203;(<a href="../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;groupKey,
                                       <a href="../../util/ImmutableBitSet.Builder.html" title="class in org.apache.calcite.util">ImmutableBitSet.Builder</a>&nbsp;leftMask,
                                       <a href="../../util/ImmutableBitSet.Builder.html" title="class in org.apache.calcite.util">ImmutableBitSet.Builder</a>&nbsp;rightMask,
                                       int&nbsp;nFieldsOnLeft)</pre>
<div class="block">Separates a bit-mask representing a join into masks representing the left
 and right inputs into the join.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>groupKey</code> - original bit-mask</dd>
<dd><code>leftMask</code> - left bit-mask to be set</dd>
<dd><code>rightMask</code> - right bit-mask to be set</dd>
<dd><code>nFieldsOnLeft</code> - number of fields in the left input</dd>
</dl>
</li>
</ul>
<a id="numDistinctVals(java.lang.Double,java.lang.Double)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>numDistinctVals</h4>
<pre class="methodSignature">public static&nbsp;java.lang.Double&nbsp;numDistinctVals&#8203;(java.lang.Double&nbsp;domainSize,
                                               java.lang.Double&nbsp;numSelected)</pre>
<div class="block">Returns the number of distinct values provided numSelected are selected
 where there are domainSize distinct values.

 <p>Note that in the case where domainSize == numSelected, it's not true
 that the return value should be domainSize. If you pick 100 random values
 between 1 and 100, you'll most likely end up with fewer than 100 distinct
 values, because you'll pick some values more than once.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>domainSize</code> - number of distinct values in the domain</dd>
<dd><code>numSelected</code> - number selected from the domain</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>number of distinct values for subset selected</dd>
</dl>
</li>
</ul>
<a id="capInfinity(java.lang.Double)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>capInfinity</h4>
<pre class="methodSignature">public static&nbsp;double&nbsp;capInfinity&#8203;(java.lang.Double&nbsp;d)</pre>
<div class="block">Caps a double value at Double.MAX_VALUE if it's currently infinity</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>d</code> - the Double object</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the double value if it's not infinity; else Double.MAX_VALUE</dd>
</dl>
</li>
</ul>
<a id="guessSelectivity(org.apache.calcite.rex.RexNode)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>guessSelectivity</h4>
<pre class="methodSignature">public static&nbsp;double&nbsp;guessSelectivity&#8203;(<a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;predicate)</pre>
<div class="block">Returns default estimates for selectivities, in the absence of stats.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>predicate</code> - predicate for which selectivity will be computed; null
                  means true, so gives selectity of 1.0</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>estimated selectivity</dd>
</dl>
</li>
</ul>
<a id="guessSelectivity(org.apache.calcite.rex.RexNode,boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>guessSelectivity</h4>
<pre class="methodSignature">public static&nbsp;double&nbsp;guessSelectivity&#8203;(<a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;predicate,
                                      boolean&nbsp;artificialOnly)</pre>
<div class="block">Returns default estimates for selectivities, in the absence of stats.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>predicate</code> - predicate for which selectivity will be computed;
                       null means true, so gives selectity of 1.0</dd>
<dd><code>artificialOnly</code> - return only the selectivity contribution from
                       artificial nodes</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>estimated selectivity</dd>
</dl>
</li>
</ul>
<a id="unionPreds(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unionPreds</h4>
<pre class="methodSignature">public static&nbsp;<a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;unionPreds&#8203;(<a href="../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
                                 <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pred1,
                                 <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pred2)</pre>
<div class="block">AND's two predicates together, either of which may be null, removing
 redundant filters.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>rexBuilder</code> - rexBuilder used to construct AND'd RexNode</dd>
<dd><code>pred1</code> - first predicate</dd>
<dd><code>pred2</code> - second predicate</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>AND'd predicate or individual predicates if one is null</dd>
</dl>
</li>
</ul>
<a id="minusPreds(org.apache.calcite.rex.RexBuilder,org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>minusPreds</h4>
<pre class="methodSignature">public static&nbsp;<a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;minusPreds&#8203;(<a href="../../rex/RexBuilder.html" title="class in org.apache.calcite.rex">RexBuilder</a>&nbsp;rexBuilder,
                                 <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pred1,
                                 <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;pred2)</pre>
<div class="block">Takes the difference between two predicates, removing from the first any
 predicates also in the second</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>rexBuilder</code> - rexBuilder used to construct AND'd RexNode</dd>
<dd><code>pred1</code> - first predicate</dd>
<dd><code>pred2</code> - second predicate</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>MINUS'd predicate list</dd>
</dl>
</li>
</ul>
<a id="setAggChildKeys(org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rel.core.Aggregate,org.apache.calcite.util.ImmutableBitSet.Builder)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAggChildKeys</h4>
<pre class="methodSignature">public static&nbsp;void&nbsp;setAggChildKeys&#8203;(<a href="../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;groupKey,
                                   <a href="../core/Aggregate.html" title="class in org.apache.calcite.rel.core">Aggregate</a>&nbsp;aggRel,
                                   <a href="../../util/ImmutableBitSet.Builder.html" title="class in org.apache.calcite.util">ImmutableBitSet.Builder</a>&nbsp;childKey)</pre>
<div class="block">Takes a bitmap representing a set of input references and extracts the
 ones that reference the group by columns in an aggregate.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>groupKey</code> - the original bitmap</dd>
<dd><code>aggRel</code> - the aggregate</dd>
<dd><code>childKey</code> - sets bits from groupKey corresponding to group by columns</dd>
</dl>
</li>
</ul>
<a id="splitCols(java.util.List,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.util.ImmutableBitSet.Builder,org.apache.calcite.util.ImmutableBitSet.Builder)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>splitCols</h4>
<pre class="methodSignature">public static&nbsp;void&nbsp;splitCols&#8203;(java.util.List&lt;<a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&gt;&nbsp;projExprs,
                             <a href="../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;groupKey,
                             <a href="../../util/ImmutableBitSet.Builder.html" title="class in org.apache.calcite.util">ImmutableBitSet.Builder</a>&nbsp;baseCols,
                             <a href="../../util/ImmutableBitSet.Builder.html" title="class in org.apache.calcite.util">ImmutableBitSet.Builder</a>&nbsp;projCols)</pre>
<div class="block">Forms two bitmaps by splitting the columns in a bitmap according to
 whether or not the column references the child input or is an expression</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>projExprs</code> - Project expressions</dd>
<dd><code>groupKey</code> - Bitmap whose columns will be split</dd>
<dd><code>baseCols</code> - Bitmap representing columns from the child input</dd>
<dd><code>projCols</code> - Bitmap representing non-child columns</dd>
</dl>
</li>
</ul>
<a id="cardOfProjExpr(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.core.Project,org.apache.calcite.rex.RexNode)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cardOfProjExpr</h4>
<pre class="methodSignature">public static&nbsp;java.lang.Double&nbsp;cardOfProjExpr&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                              <a href="../core/Project.html" title="class in org.apache.calcite.rel.core">Project</a>&nbsp;rel,
                                              <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;expr)</pre>
<div class="block">Computes the cardinality of a particular expression from the projection
 list.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>rel</code> - RelNode corresponding to the project</dd>
<dd><code>expr</code> - projection expression</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>cardinality</dd>
</dl>
</li>
</ul>
<a id="getJoinPopulationSize(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,org.apache.calcite.util.ImmutableBitSet)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getJoinPopulationSize</h4>
<pre class="methodSignature">public static&nbsp;java.lang.Double&nbsp;getJoinPopulationSize&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                                     <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;joinRel,
                                                     <a href="../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;groupKey)</pre>
<div class="block">Computes the population size for a set of keys returned from a join</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>joinRel</code> - the join rel</dd>
<dd><code>groupKey</code> - keys to compute the population for</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>computed population size</dd>
</dl>
</li>
</ul>
<a id="addEpsilon(double)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addEpsilon</h4>
<pre class="methodSignature">public static&nbsp;double&nbsp;addEpsilon&#8203;(double&nbsp;d)</pre>
<div class="block">Add an epsilon to the value passed in.</div>
</li>
</ul>
<a id="getSemiJoinDistinctRowCount(org.apache.calcite.rel.core.Join,org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rex.RexNode)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSemiJoinDistinctRowCount</h4>
<pre class="methodSignature">public static&nbsp;java.lang.Double&nbsp;getSemiJoinDistinctRowCount&#8203;(<a href="../core/Join.html" title="class in org.apache.calcite.rel.core">Join</a>&nbsp;semiJoinRel,
                                                           <a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                                           <a href="../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;groupKey,
                                                           <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;predicate)</pre>
<div class="block">Computes the number of distinct rows for a set of keys returned from a
 semi-join</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>semiJoinRel</code> - RelNode representing the semi-join</dd>
<dd><code>mq</code> - metadata query</dd>
<dd><code>groupKey</code> - keys that the distinct row count will be computed for</dd>
<dd><code>predicate</code> - join predicate</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>number of distinct rows</dd>
</dl>
</li>
</ul>
<a id="getJoinDistinctRowCount(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.core.JoinRelType,org.apache.calcite.util.ImmutableBitSet,org.apache.calcite.rex.RexNode,boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getJoinDistinctRowCount</h4>
<pre class="methodSignature">public static&nbsp;java.lang.Double&nbsp;getJoinDistinctRowCount&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                                       <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;joinRel,
                                                       <a href="../core/JoinRelType.html" title="enum in org.apache.calcite.rel.core">JoinRelType</a>&nbsp;joinType,
                                                       <a href="../../util/ImmutableBitSet.html" title="class in org.apache.calcite.util">ImmutableBitSet</a>&nbsp;groupKey,
                                                       <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;predicate,
                                                       boolean&nbsp;useMaxNdv)</pre>
<div class="block">Computes the number of distinct rows for a set of keys returned from a
 join. Also known as NDV (number of distinct values).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>joinRel</code> - RelNode representing the join</dd>
<dd><code>joinType</code> - type of join</dd>
<dd><code>groupKey</code> - keys that the distinct row count will be computed for</dd>
<dd><code>predicate</code> - join predicate</dd>
<dd><code>useMaxNdv</code> - If true use formula <code>max(left NDV, right NDV)</code>,
                  otherwise use <code>left NDV * right NDV</code>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>number of distinct rows</dd>
</dl>
</li>
</ul>
<a id="getUnionAllRowCount(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.core.Union)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUnionAllRowCount</h4>
<pre class="methodSignature">public static&nbsp;double&nbsp;getUnionAllRowCount&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                         <a href="../core/Union.html" title="class in org.apache.calcite.rel.core">Union</a>&nbsp;rel)</pre>
<div class="block">Returns an estimate of the number of rows returned by a <a href="../core/Union.html" title="class in org.apache.calcite.rel.core"><code>Union</code></a>
 (before duplicates are eliminated).</div>
</li>
</ul>
<a id="getMinusRowCount(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.core.Minus)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMinusRowCount</h4>
<pre class="methodSignature">public static&nbsp;double&nbsp;getMinusRowCount&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                      <a href="../core/Minus.html" title="class in org.apache.calcite.rel.core">Minus</a>&nbsp;minus)</pre>
<div class="block">Returns an estimate of the number of rows returned by a <a href="../core/Minus.html" title="class in org.apache.calcite.rel.core"><code>Minus</code></a>.</div>
</li>
</ul>
<a id="getJoinRowCount(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.core.Join,org.apache.calcite.rex.RexNode)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getJoinRowCount</h4>
<pre class="methodSignature">public static&nbsp;java.lang.Double&nbsp;getJoinRowCount&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                               <a href="../core/Join.html" title="class in org.apache.calcite.rel.core">Join</a>&nbsp;join,
                                               <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;condition)</pre>
<div class="block">Returns an estimate of the number of rows returned by a <a href="../core/Join.html" title="class in org.apache.calcite.rel.core"><code>Join</code></a>.</div>
</li>
</ul>
<a id="getSemiJoinRowCount(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.core.JoinRelType,org.apache.calcite.rex.RexNode)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSemiJoinRowCount</h4>
<pre class="methodSignature">public static&nbsp;java.lang.Double&nbsp;getSemiJoinRowCount&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                                   <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;left,
                                                   <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;right,
                                                   <a href="../core/JoinRelType.html" title="enum in org.apache.calcite.rel.core">JoinRelType</a>&nbsp;joinType,
                                                   <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;condition)</pre>
<div class="block">Returns an estimate of the number of rows returned by a semi-join.</div>
</li>
</ul>
<a id="estimateFilteredRows(org.apache.calcite.rel.RelNode,org.apache.calcite.rex.RexProgram,org.apache.calcite.rel.metadata.RelMetadataQuery)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>estimateFilteredRows</h4>
<pre class="methodSignature">public static&nbsp;double&nbsp;estimateFilteredRows&#8203;(<a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;child,
                                          <a href="../../rex/RexProgram.html" title="class in org.apache.calcite.rex">RexProgram</a>&nbsp;program,
                                          <a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq)</pre>
</li>
</ul>
<a id="estimateFilteredRows(org.apache.calcite.rel.RelNode,org.apache.calcite.rex.RexNode,org.apache.calcite.rel.metadata.RelMetadataQuery)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>estimateFilteredRows</h4>
<pre class="methodSignature">public static&nbsp;double&nbsp;estimateFilteredRows&#8203;(<a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;child,
                                          <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;condition,
                                          <a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq)</pre>
</li>
</ul>
<a id="linear(int,int,int,double,double)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>linear</h4>
<pre class="methodSignature">public static&nbsp;double&nbsp;linear&#8203;(int&nbsp;x,
                            int&nbsp;minX,
                            int&nbsp;maxX,
                            double&nbsp;minY,
                            double&nbsp;maxY)</pre>
<div class="block">Returns a point on a line.

 <p>The result is always a value between <code>minY</code> and <code>maxY</code>,
 even if <code>x</code> is not between <code>minX</code> and <code>maxX</code>.

 <p>Examples:<ul>
   <li><code>linear(0, 0, 10, 100, 200</code>} returns 100 because 0 is minX
   <li><code>linear(5, 0, 10, 100, 200</code>} returns 150 because 5 is
   mid-way between minX and maxX
   <li><code>linear(5, 0, 10, 100, 200</code>} returns 160
   <li><code>linear(10, 0, 10, 100, 200</code>} returns 200 because 10 is maxX
   <li><code>linear(-2, 0, 10, 100, 200</code>} returns 100 because -2 is
   less than minX and is therefore treated as minX
   <li><code>linear(12, 0, 10, 100, 200</code>} returns 100 because 12 is
   greater than maxX and is therefore treated as maxX
 </ul></div>
</li>
</ul>
<a id="checkInputForCollationAndLimit(org.apache.calcite.rel.metadata.RelMetadataQuery,org.apache.calcite.rel.RelNode,org.apache.calcite.rel.RelCollation,org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>checkInputForCollationAndLimit</h4>
<pre class="methodSignature">public static&nbsp;boolean&nbsp;checkInputForCollationAndLimit&#8203;(<a href="RelMetadataQuery.html" title="class in org.apache.calcite.rel.metadata">RelMetadataQuery</a>&nbsp;mq,
                                                     <a href="../RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>&nbsp;input,
                                                     <a href="../RelCollation.html" title="interface in org.apache.calcite.rel">RelCollation</a>&nbsp;collation,
                                                     <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;offset,
                                                     <a href="../../rex/RexNode.html" title="class in org.apache.calcite.rex">RexNode</a>&nbsp;fetch)</pre>
<div class="block">Returns whether a relational expression is already sorted and has fewer
 rows than the sum of offset and limit.

 <p>If this is the case, it is safe to push down a
 <a href="../core/Sort.html" title="class in org.apache.calcite.rel.core"><code>Sort</code></a> with limit and optional offset.</div>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/RelMdUtil.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2012&#x2013;2019 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>
