UNPKG

sharp-db

Version:

Classes for running SQL and building select queries for MySQL in Node

11,498 lines 154 kB
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1">
    <title>Select - Documentation</title>

    <script src="scripts/prettify/prettify.js"></script>
    <script src="scripts/prettify/lang-css.js"></script>
    <!--[if lt IE 9]>
      <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->
    <link type="text/css" rel="stylesheet" href="https://code.ionicframework.com/ionicons/2.0.1/css/ionicons.min.css">
    <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
    <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
</head>
<body>

<input type="checkbox" id="nav-trigger" class="nav-trigger" />
<label for="nav-trigger" class="navicon-button x">
  <div class="navicon"></div>
</label>

<label for="nav-trigger" class="overlay"></label>

<nav>
    <li class="nav-link nav-home-link"><a href="index.html">Home</a></li><li class="nav-heading">Classes</li><li class="nav-heading"><span class="nav-item-type type-class">C</span><span class="nav-item-name"><a href="DataBroker.html">DataBroker</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="DataBroker.html#cleanup">cleanup</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="DataBroker.html#created_and_modified">created_and_modified</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="DataBroker.html#createdAndModified">createdAndModified</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="DataBroker.html#delete">delete</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="DataBroker.html#insert">insert</a></span></li><li class="nav-heading"><span class="nav-item-type type-class">C</span><span class="nav-item-name"><a href="Db.html">Db</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#.destroyAll">destroyAll</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#.endAll">endAll</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#.factory">factory</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#.withInstance">withInstance</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#beginTransaction">beginTransaction</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#bindArgs">bindArgs</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#commit">commit</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#connect">connect</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#connectOnce">connectOnce</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#delete">delete</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#deleteFrom">deleteFrom</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#destroy">destroy</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#emit">emit</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#emitError">emitError</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#end">end</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#escape">escape</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#escapeLike">escapeLike</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#escapeQuoteless">escapeQuoteless</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#exportAsSql">exportAsSql</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#insert">insert</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#insertExtended">insertExtended</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#insertInto">insertInto</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#insertIntoOnDuplicateKeyUpdate">insertIntoOnDuplicateKeyUpdate</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#multiQuery">multiQuery</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#query">query</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#quote">quote</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#rollback">rollback</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#select">select</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#selectByKey">selectByKey</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#selectExists">selectExists</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#selectFirst">selectFirst</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#selectFrom">selectFrom</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#selectGrouped">selectGrouped</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#selectHash">selectHash</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#selectId">selectId</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#selectIndexed">selectIndexed</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#selectList">selectList</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#selectOrCreate">selectOrCreate</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#selectOrCreateId">selectOrCreateId</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#selectUuid">selectUuid</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#selectValue">selectValue</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#startTransaction">startTransaction</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#tpl">tpl</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#update">update</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Db.html#updateTable">updateTable</a></span></li><li class="nav-heading"><span class="nav-item-type type-class">C</span><span class="nav-item-name"><a href="DbEvent.html">DbEvent</a></span></li><li class="nav-heading"><span class="nav-item-type type-class">C</span><span class="nav-item-name"><a href="Parser.html">Parser</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_extractSubqueries">_extractSubqueries</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_handleConditions">_handleConditions</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_handleCrossJoin">_handleCrossJoin</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_handleFrom">_handleFrom</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_handleFullJoin">_handleFullJoin</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_handleFullOuterJoin">_handleFullOuterJoin</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_handleGroupBy">_handleGroupBy</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_handleHaving">_handleHaving</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_handleInnerJoin">_handleInnerJoin</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_handleLeftJoin">_handleLeftJoin</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_handleLeftOuterJoin">_handleLeftOuterJoin</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_handleLimit">_handleLimit</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_handleOffset">_handleOffset</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_handleOrderBy">_handleOrderBy</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_handleRightJoin">_handleRightJoin</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_handleRightOuterJoin">_handleRightOuterJoin</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_handleSelect">_handleSelect</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_handleWhere">_handleWhere</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_injectSubqueries">_injectSubqueries</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_split">_split</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#_stripComments">_stripComments</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Parser.html#parse">parse</a></span></li><li class="nav-heading"><span class="nav-item-type type-class">C</span><span class="nav-item-name"><a href="Select.html">Select</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#._extractBindingName">_extractBindingName</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#.init">init</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#.parse">parse</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#_conditions">_conditions</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#_isEntirelyDigits">_isEntirelyDigits</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#_isEntirelyDigitsNoZeros">_isEntirelyDigitsNoZeros</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#_isPlaceholder">_isPlaceholder</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#_spliceChildData">_spliceChildData</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#_spliceSiblingData">_spliceSiblingData</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#bind">bind</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#column">column</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#columns">columns</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#crossJoin">crossJoin</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#escape">escape</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#escapeLike">escapeLike</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#escapeQuoteless">escapeQuoteless</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#fetch">fetch</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#fetchFirst">fetchFirst</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#fetchGrouped">fetchGrouped</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#fetchHash">fetchHash</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#fetchIndexed">fetchIndexed</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#fetchList">fetchList</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#fetchValue">fetchValue</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#foundRows">foundRows</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#from">from</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#fullJoin">fullJoin</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#fullOuterJoin">fullOuterJoin</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#getClone">getClone</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#getFoundRowsQuery">getFoundRowsQuery</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#getFoundRowsSql">getFoundRowsSql</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#groupBy">groupBy</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#having">having</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#innerJoin">innerJoin</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#join">join</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#leftJoin">leftJoin</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#leftOuterJoin">leftOuterJoin</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#limit">limit</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#normalized">normalized</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#offset">offset</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#option">option</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#orderBy">orderBy</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#orHaving">orHaving</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#orWhere">orWhere</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#page">page</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#parse">parse</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#reset">reset</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#rightJoin">rightJoin</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#rightOuterJoin">rightOuterJoin</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#sortField">sortField</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#table">table</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#tables">tables</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#toBoundSql">toBoundSql</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#toString">toString</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#unbind">unbind</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#unjoin">unjoin</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#where">where</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#whereBetween">whereBetween</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#withChildData">withChildData</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Select.html#withSiblingData">withSiblingData</a></span></li><li class="nav-heading"><span class="nav-item-type type-class">C</span><span class="nav-item-name"><a href="Ssh.html">Ssh</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Ssh.html#end">end</a></span></li><li class="nav-item"><span class="nav-item-type type-function">F</span><span class="nav-item-name"><a href="Ssh.html#tunnelTo">tunnelTo</a></span></li>
</nav>

<div id="main">
    
    <h1 class="page-title">Select</h1>
    

    




<section>

<header>
    
        <h2>
        Select
        </h2>
        
            <div class="class-description"><p>Build a select query
Class Select</p></div>
        
    
</header>

<article>
    <div class="container-overview">
    
        
<div class="section-method">

    
    <h2>Constructor</h2>
    

    <h4 class="name" id="Select"><span class="type-signature"></span>new Select<span class="signature">(db<span class="signature-attributes">opt</span>)</span><span class="type-signature"></span></h4>

    



<div class="description">
    <p>Select constructor</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line13">line 13</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>db</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code><a href="Db.html">Db</a></code></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default">
                
                    null
                
                </td>
            

            <td class="description last">
                <p>The Db instance to use</p>
                
            </td>
        </tr>

    
    </tbody>
</table>
















</div>
    
    </div>

    

    

    

     

    

    
        <h3 class="subsection-title">Members</h3>

        
            
<div class="section-members">
<h4 class="name" id="_bound"><span class="type-signature">(private) </span>_bound<span class="type-signature"></span></h4>




<div class="description">
    <p>Values to bind by name to the query before executing</p>
</div>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            

            <td class="type">
            
                
<span class="param-type"><code>Object</code></span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

        

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line239">line 239</a>
    </li></ul></dd>
    

    

    

    
</dl>







</div>

        
            
<div class="section-members">
<h4 class="name" id="_children"><span class="type-signature">(private) </span>_children<span class="type-signature"></span></h4>




<div class="description">
    <p>The list of child relationship definitions</p>
</div>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            

            <td class="type">
            
                
<span class="param-type"><code>Array.&lt;Object></code></span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

        

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line166">line 166</a>
    </li></ul></dd>
    

    

    

    
</dl>







</div>

        
            
<div class="section-members">
<h4 class="name" id="_columns"><span class="type-signature">(private) </span>_columns<span class="type-signature"></span></h4>




<div class="description">
    <p>The list of column names to select</p>
</div>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            

            <td class="type">
            
                
<span class="param-type"><code>Array.&lt;String></code></span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

        

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line179">line 179</a>
    </li></ul></dd>
    

    

    

    
</dl>







</div>

        
            
<div class="section-members">
<h4 class="name" id="_groupBys"><span class="type-signature">(private) </span>_groupBys<span class="type-signature"></span></h4>




<div class="description">
    <p>The list of GROUP BY clauses</p>
</div>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            

            <td class="type">
            
                
<span class="param-type"><code>Array.&lt;String></code></span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

        

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line209">line 209</a>
    </li></ul></dd>
    

    

    

    
</dl>







</div>

        
            
<div class="section-members">
<h4 class="name" id="_havings"><span class="type-signature">(private) </span>_havings<span class="type-signature"></span></h4>




<div class="description">
    <p>The list of HAVING clauses</p>
</div>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            

            <td class="type">
            
                
<span class="param-type"><code>Array.&lt;String></code></span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

        

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line203">line 203</a>
    </li></ul></dd>
    

    

    

    
</dl>







</div>

        
            
<div class="section-members">
<h4 class="name" id="_joins"><span class="type-signature">(private) </span>_joins<span class="type-signature"></span></h4>




<div class="description">
    <p>The list of JOIN strings to add</p>
</div>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            

            <td class="type">
            
                
<span class="param-type"><code>Array.&lt;String></code></span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

        

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line191">line 191</a>
    </li></ul></dd>
    

    

    

    
</dl>







</div>

        
            
<div class="section-members">
<h4 class="name" id="_limit"><span class="type-signature">(private) </span>_limit<span class="type-signature"></span></h4>




<div class="description">
    <p>The LIMIT to use</p>
</div>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            

            <td class="type">
            
                
<span class="param-type"><code>Number</code></span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

        

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line221">line 221</a>
    </li></ul></dd>
    

    

    

    
</dl>







</div>

        
            
<div class="section-members">
<h4 class="name" id="_offset"><span class="type-signature">(private) </span>_offset<span class="type-signature"></span></h4>




<div class="description">
    <p>The OFFSET to use</p>
</div>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            

            <td class="type">
            
                
<span class="param-type"><code>Number</code></span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

        

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line227">line 227</a>
    </li></ul></dd>
    

    

    

    
</dl>







</div>

        
            
<div class="section-members">
<h4 class="name" id="_options"><span class="type-signature">(private) </span>_options<span class="type-signature"></span></h4>




<div class="description">
    <p>The list of strings to come immediately after &quot;SELECT&quot;
and before column names</p>
</div>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            

            <td class="type">
            
                
<span class="param-type"><code>Array.&lt;String></code></span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

        

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line173">line 173</a>
    </li></ul></dd>
    

    

    

    
</dl>







</div>

        
            
<div class="section-members">
<h4 class="name" id="_orderBys"><span class="type-signature">(private) </span>_orderBys<span class="type-signature"></span></h4>




<div class="description">
    <p>The list of ORDER BY clauses</p>
</div>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            

            <td class="type">
            
                
<span class="param-type"><code>Array.&lt;String></code></span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

        

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line215">line 215</a>
    </li></ul></dd>
    

    

    

    
</dl>







</div>

        
            
<div class="section-members">
<h4 class="name" id="_page"><span class="type-signature">(private) </span>_page<span class="type-signature"></span></h4>




<div class="description">
    <p>The page used to construct an OFFSET based on the LIMIT</p>
</div>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            

            <td class="type">
            
                
<span class="param-type"><code>Number</code></span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

        

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line233">line 233</a>
    </li></ul></dd>
    

    

    

    
</dl>







</div>

        
            
<div class="section-members">
<h4 class="name" id="_siblings"><span class="type-signature">(private) </span>_siblings<span class="type-signature"></span></h4>




<div class="description">
    <p>The list of sibling relationship definitions</p>
</div>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            

            <td class="type">
            
                
<span class="param-type"><code>Array.&lt;Object></code></span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

        

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line160">line 160</a>
    </li></ul></dd>
    

    

    

    
</dl>







</div>

        
            
<div class="section-members">
<h4 class="name" id="_tables"><span class="type-signature">(private) </span>_tables<span class="type-signature"></span></h4>




<div class="description">
    <p>The list of tables in the FROM clause</p>
</div>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            

            <td class="type">
            
                
<span class="param-type"><code>Array.&lt;String></code></span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

        

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line185">line 185</a>
    </li></ul></dd>
    

    

    

    
</dl>







</div>

        
            
<div class="section-members">
<h4 class="name" id="_wheres"><span class="type-signature">(private) </span>_wheres<span class="type-signature"></span></h4>




<div class="description">
    <p>The list of WHERE clauses</p>
</div>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            

            <td class="type">
            
                
<span class="param-type"><code>Array.&lt;String></code></span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

        

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line197">line 197</a>
    </li></ul></dd>
    

    

    

    
</dl>







</div>

        
    

    
        <h3 class="subsection-title">Methods</h3>

        
            
<div class="section-method">

    

    <h4 class="name" id="._extractBindingName"><span class="type-signature">(private, static) </span>_extractBindingName<span class="signature">(sql)</span><span class="type-signature"> &rarr; {*|string}</span></h4>

    



<div class="description">
    <p>Extract the name of the first bound variable
E.g. given &quot;SELECT * FROM users WHERE id IN(:id)&quot; it would return &quot;id&quot;</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line480">line 480</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>sql</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>*</code></span>
|

<span class="param-type"><code>string</code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id=".init"><span class="type-signature">(static) </span>init<span class="signature">(db<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Shortcut to initialize without the <code>new</code> keyword</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line50">line 50</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>db</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code><a href="Db.html">Db</a></code></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default">
                
                    null
                
                </td>
            

            <td class="description last">
                <p>The Db instance to use</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id=".parse"><span class="type-signature">(static) </span>parse<span class="signature">(sql, db<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Return a new Select object that matches the given SQL</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line32">line 32</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>sql</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            
                <td class="attributes">
                

                

                
                </td>
            

            
                <td class="default">
                
                </td>
            

            <td class="description last">
                <p>The SQL to parse</p>
                
            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>db</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code><a href="Db.html">Db</a></code></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default">
                
                    null
                
                </td>
            

            <td class="description last">
                <p>The Db instance to use for queries</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="_conditions"><span class="type-signature"></span>_conditions<span class="signature">(collection, criteria)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Utility function to add conditions for a clause (WHERE, HAVING)</p>
</div>





    <h5 class="subsection-title">Properties:</h5>

    

<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>criteria[0</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>*</code></span>


            
            </td>

            
                <td class="attributes">
                

                
                </td>
            

            

            <td class="description last"><p>The expression or name of the column on which to match</p></td>
        </tr>

        

    

        <tr>
            
                <td class="name"><code>criteria[1]</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>*</code></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            

            <td class="description last"><p>The comparison operator; defaults to &quot;=&quot;</p></td>
        </tr>

        

    

        <tr>
            
                <td class="name"><code>criteria[2]</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>*</code></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                
                </td>
            

            

            <td class="description last"><p>The value to test against</p></td>
        </tr>

        

    
    </tbody>
</table>




<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line756">line 756</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>collection</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>Array</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The collection to add the clauses to (e.g. this._wheres or this._havings)</p>
                
            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>criteria</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>Array</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>A list of expressions to stringify</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



<div class="section-examples">
<h5>Examples</h5>

    <pre class="prettyprint"><code>The following are equivalent
    this._conditions(this._wheres, ['deleted_at IS NULL']);
    this._conditions(this._wheres, ['deleted_at', null]);
    this._conditions(this._wheres, ['deleted_at', '=', null]);</code></pre>

    <pre class="prettyprint"><code>More examples
    this._conditions(this._wheres, ['fname', 'LIKE', 'joe']); // `fname` LIKE 'joe'
    this._conditions(this._wheres, ['fname', 'LIKE ?', 'joe']); // `fname` LIKE 'joe'
    this._conditions(this._wheres, ['fname LIKE %?%', 'joe']); // `fname` LIKE '%joe%'
    this._conditions(this._wheres, ['fname LIKE ?%', 'joe']); // `fname` LIKE 'joe%'
    this._conditions(this._wheres, ['fname', 'LIKE ?%', 'joe']); // `fname` LIKE 'joe%'
    this._conditions(this._wheres, ['price >', 10]); // `price` > 10
    this._conditions(this._wheres, ['price', '>', 10]); // `price` > 10
    this._conditions(this._wheres, ['price =', 10]); // `price` = 10
    this._conditions(this._wheres, ['price !=', 10]); // `price` != 10
    this._conditions(this._wheres, ['price', 10]); // `price` = 10
    this._conditions(this._wheres, ['price', '=', 10]); // `price` = 10
    this._conditions(this._wheres, ['price', '!=', 10]); // `price` != 10
    this._conditions(this._wheres, ['price', 'BETWEEN', [10,20]]); // `price` BETWEEN 10 AND 20
    this._conditions(this._wheres, ['price', 'NOT BETWEEN', [10,20]]); // `price` NOT BETWEEN 10 AND 20
    this._conditions(this._wheres, ['price', [10,20]]); // `price` IN(10,20)
    this._conditions(this._wheres, ['price', '=', [10,20]]); // `price` IN(10,20)
    this._conditions(this._wheres, ['price', 'IN', [10,20]]); // `price` IN(10,20)
    this._conditions(this._wheres, ['price', 'NOT IN', [10,20]]); // `price` NOT IN(10,20)</code></pre>

</div>

</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="_isEntirelyDigits"><span class="type-signature">(private) </span>_isEntirelyDigits<span class="signature">(string)</span><span class="type-signature"> &rarr; {Boolean}</span></h4>

    



<div class="description">
    <p>Check to see if the given string is 0 or all digits not starting with 0</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line995">line 995</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>string</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The input string</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>Boolean</code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="_isEntirelyDigitsNoZeros"><span class="type-signature">(private) </span>_isEntirelyDigitsNoZeros<span class="signature">(string)</span><span class="type-signature"> &rarr; {Boolean}</span></h4>

    



<div class="description">
    <p>Check to see if the given string is all digits</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line1005">line 1005</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>string</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The input string</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>Boolean</code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="_isPlaceholder"><span class="type-signature">(private) </span>_isPlaceholder<span class="signature">(string)</span><span class="type-signature"> &rarr; {Boolean}</span></h4>

    



<div class="description">
    <p>Check to see if the given string is ? or a bound variable like :var</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line985">line 985</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>string</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The input string</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>Boolean</code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="_spliceChildData"><span class="type-signature">(async) </span>_spliceChildData<span class="signature">(queries)</span><span class="type-signature"></span></h4>

    



<div class="description">
    <p>Fetch child data and splice it into the given result set</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line520">line 520</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>queries</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>Array</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The final SQL statements that were executed</p>
                
            </td>
        </tr>

    
    </tbody>
</table>
















</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="_spliceSiblingData"><span class="type-signature">(async) </span>_spliceSiblingData<span class="signature">(queries)</span><span class="type-signature"></span></h4>

    



<div class="description">
    <p>Fetch sibling data and splice it into the given result set</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line492">line 492</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>queries</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>Array</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The final SQL statements that were executed</p>
                
            </td>
        </tr>

    
    </tbody>
</table>
















</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="bind"><span class="type-signature"></span>bind<span class="signature">(placeholder, value<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Bind values by name to the query</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line278">line 278</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>placeholder</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>Object</code></span>
|

<span class="param-type"><code>String</code></span>
|

<span class="param-type"><code>Array</code></span>


            
            </td>

            
                <td class="attributes">
                

                

                
                </td>
            

            
                <td class="default">
                
                </td>
            

            <td class="description last">
                <p>The name of the placeholder or an object with placeholder: value pairs</p>
                
            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>*</code></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default">
                
                    null
                
                </td>
            

            <td class="description last">
                <p>The value to bind when placeholder is a string</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



<div class="section-examples">
<h5>Example</h5>

    <pre class="prettyprint"><code>query.bind('postId', 123); // replace :postId with 123
    query.bind({ postId: 123 }); // replace :postId with 123</code></pre>

</div>

</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="column"><span class="type-signature"></span>column<span class="signature">(columnName)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add a column name to fetch</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line562">line 562</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>columnName</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The name of the column</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="columns"><span class="type-signature"></span>columns<span class="signature">(columnNames)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add an array of column names to fetch</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line552">line 552</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>columnNames</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>Array.&lt;String></code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The names of columns</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="crossJoin"><span class="type-signature"></span>crossJoin<span class="signature">(expression)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add a CROSS JOIN expression</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line657">line 657</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>expression</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The expression following the CROSS JOIN keyword</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



<div class="section-examples">
<h5>Example</h5>

    <pre class="prettyprint"><code>query.join('posts p ON p.id = c.post_id');</code></pre>

</div>

</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="escape"><span class="type-signature"></span>escape<span class="signature">(value)</span><span class="type-signature"> &rarr; {string}</span></h4>

    



<div class="description">
    <p>Manually escape a value</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line1082">line 1082</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>*</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The value to escape</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>string</code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="escapeLike"><span class="type-signature"></span>escapeLike<span class="signature">(infix, value)</span><span class="type-signature"> &rarr; {String}</span></h4>

    



<div class="description">
    <p>Get the proper escaping for a LIKE or NOT LIKE clause</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line1101">line 1101</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>infix</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>One of ?% or %?% or %? or ?</p>
                
            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The value to search for</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>String</code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="escapeQuoteless"><span class="type-signature"></span>escapeQuoteless<span class="signature">(value)</span><span class="type-signature"> &rarr; {string}</span></h4>

    



<div class="description">
    <p>Manually escape a value without quotes</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line1091">line 1091</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>*</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The value to escape without quotes</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>string</code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="fetch"><span class="type-signature">(async) </span>fetch<span class="signature">(options<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {Promise.&lt;Object>}</span></h4>

    



<div class="description">
    <p>Fetch records and splice in related data</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line308">line 308</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>options</code></td>
            

            <td class="type">
            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            

            <td class="description last">
                <p>Query options</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>Promise.&lt;Object></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="fetchFirst"><span class="type-signature">(async) </span>fetchFirst<span class="signature">()</span><span class="type-signature"> &rarr; {Object|null}</span></h4>

    



<div class="description">
    <p>Fetch the first matched record</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line325">line 325</a>
    </li></ul></dd>
    

    

    

    
</dl>





















<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>Object</code></span>
|

<span class="param-type"><code>null</code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="fetchGrouped"><span class="type-signature">(async) </span>fetchGrouped<span class="signature">(byField)</span><span class="type-signature"> &rarr; {Array}</span></h4>

    



<div class="description">
    <p>Fetch values grouped by the given field name</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line383">line 383</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>byField</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The field by which to group</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>Array</code></span>


    </dd>
</dl>


    
</div>



<div class="section-examples">
<h5>Example</h5>

    <pre class="prettyprint"><code>const query = Select.parse('SELECT * FROM comments');
     const byUser = query.fetchGrouped('user_id')
     // a key for each user id with an array of comments for each key</code></pre>

</div>

</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="fetchHash"><span class="type-signature"></span>fetchHash<span class="signature">()</span><span class="type-signature"> &rarr; {Promise.&lt;Object>}</span></h4>

    



<div class="description">
    <p>Fetch each record as an object with key-value pairs</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line338">line 338</a>
    </li></ul></dd>
    

    

    

    
</dl>





















<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>Promise.&lt;Object></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="fetchIndexed"><span class="type-signature">(async) </span>fetchIndexed<span class="signature">(byField)</span><span class="type-signature"> &rarr; {Promise.&lt;Object>}</span></h4>

    



<div class="description">
    <p>Fetch values and index by the given field name</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line366">line 366</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>byField</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The field by which to index (e.g. id)</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>Promise.&lt;Object></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="fetchList"><span class="type-signature"></span>fetchList<span class="signature">()</span><span class="type-signature"> &rarr; {Promise.&lt;Object>}</span></h4>

    



<div class="description">
    <p>Fetch each record as an array of values</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line347">line 347</a>
    </li></ul></dd>
    

    

    

    
</dl>





















<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>Promise.&lt;Object></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="fetchValue"><span class="type-signature"></span>fetchValue<span class="signature">()</span><span class="type-signature"> &rarr; {Promise}</span></h4>

    



<div class="description">
    <p>Fetch the value of first column of the first record</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line356">line 356</a>
    </li></ul></dd>
    

    

    

    
</dl>





















<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>Promise</code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="foundRows"><span class="type-signature"></span>foundRows<span class="signature">(countExpr<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {Promise.&lt;Number>}</span></h4>

    



<div class="description">
    <p>Run a version of this query that simply returns COUNT(*)</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line468">line 468</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>countExpr</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default">
                
                    "*"
                
                </td>
            

            <td class="description last">
                <p>Use to specify <code>DISTINCT colname</code> if needed</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>Promise.&lt;Number></code></span>


    </dd>
</dl>


<div class="param-desc">
    <p>The number of rows or false on error</p>
</div>

    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="from"><span class="type-signature"></span>from<span class="signature">(tableName)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add a table to the &quot;FROM&quot; clause (same as .table())</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line602">line 602</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>tableName</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The name of the table to query</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="fullJoin"><span class="type-signature"></span>fullJoin<span class="signature">(expression)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add a FULL JOIN expression</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line635">line 635</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>expression</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The expression following the FULL JOIN keyword</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



<div class="section-examples">
<h5>Example</h5>

    <pre class="prettyprint"><code>query.fullJoin('posts p ON p.id = c.post_id');</code></pre>

</div>

</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="fullOuterJoin"><span class="type-signature"></span>fullOuterJoin<span class="signature">(expression)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add a FULL OUTER JOIN expression</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line690">line 690</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>expression</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The expression following the FULL OUTER JOIN keyword</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



<div class="section-examples">
<h5>Example</h5>

    <pre class="prettyprint"><code>query.fullOuterJoin('posts p ON p.id = c.post_id');</code></pre>

</div>

</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="getClone"><span class="type-signature"></span>getClone<span class="signature">()</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Clone this object</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line400">line 400</a>
    </li></ul></dd>
    

    

    

    
</dl>





















<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="getFoundRowsQuery"><span class="type-signature"></span>getFoundRowsQuery<span class="signature">(countExpr<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Build a version of this query that simply returns COUNT(*)</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line424">line 424</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>countExpr</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default">
                
                    "*"
                
                </td>
            

            <td class="description last">
                <p>Use to specify <code>DISTINCT colname</code> if needed</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


<div class="param-desc">
    <p>The SQL query</p>
</div>

    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="getFoundRowsSql"><span class="type-signature"></span>getFoundRowsSql<span class="signature">(countExpr, normalize)</span><span class="type-signature"> &rarr; {String}</span></h4>

    



<div class="description">
    <p>Get SQL needed to return the found rows of this query</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line450">line 450</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>countExpr</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            
                <td class="default">
                
                    *
                
                </td>
            

            <td class="description last">
                <p>The expression to use inside the COUNT()</p>
                
            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>normalize</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>Boolean</code></span>


            
            </td>

            

            
                <td class="default">
                
                    false
                
                </td>
            

            <td class="description last">
                <p>If true, return a normalized sql</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>String</code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="groupBy"><span class="type-signature"></span>groupBy<span class="signature">(column)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add a group by column or expression</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line863">line 863</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>column</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The name of a column (or expression) to group by</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="having"><span class="type-signature"></span>having<span class="signature">(column, operator<span class="signature-attributes">opt</span>, value<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add a HAVING condition (See _conditions for usage)</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line932">line 932</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>column</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            
                <td class="attributes">
                

                

                
                </td>
            

            

            <td class="description last">
                <p>The expression or name of the column on which to match</p>
                
            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>operator</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>*</code></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            

            <td class="description last">
                <p>The comparison operator; defaults to &quot;=&quot;</p>
                
            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>*</code></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            

            <td class="description last">
                <p>The value to test against</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="innerJoin"><span class="type-signature"></span>innerJoin<span class="signature">(expression)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add an INNER JOIN expression (same as -&gt;join())</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line668">line 668</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>expression</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The expression following the INNER JOIN keyword</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



<div class="section-examples">
<h5>Example</h5>

    <pre class="prettyprint"><code>query.innerJoin('posts p ON p.id = c.post_id');</code></pre>

</div>

</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="join"><span class="type-signature"></span>join<span class="signature">(expression)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add an INNER JOIN expression (same as .innerJoin())</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line613">line 613</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>expression</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The expression following the INNER JOIN keyword</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



<div class="section-examples">
<h5>Example</h5>

    <pre class="prettyprint"><code>query.join('posts p ON p.id = c.post_id');</code></pre>

</div>

</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="leftJoin"><span class="type-signature"></span>leftJoin<span class="signature">(expression)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add a LEFT JOIN expression</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line624">line 624</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>expression</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The expression following the LEFT JOIN keyword</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



<div class="section-examples">
<h5>Example</h5>

    <pre class="prettyprint"><code>query.leftJoin('posts p ON p.id = c.post_id');</code></pre>

</div>

</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="leftOuterJoin"><span class="type-signature"></span>leftOuterJoin<span class="signature">(expression)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add a LEFT OUTER JOIN expression</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line679">line 679</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>expression</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The expression following the LEFT OUTER JOIN keyword</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



<div class="section-examples">
<h5>Example</h5>

    <pre class="prettyprint"><code>query.leftOuterJoin('posts p ON p.id = c.post_id');</code></pre>

</div>

</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="limit"><span class="type-signature"></span>limit<span class="signature">(max)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Limit results to the given number</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line1014">line 1014</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>max</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>Number</code></span>
|

<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The number to limit by (placeholder string or integer greater than 0)</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="normalized"><span class="type-signature"></span>normalized<span class="signature">()</span><span class="type-signature"> &rarr; {String}</span></h4>

    



<div class="description">
    <p>Get the SQL as a one-line string</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line90">line 90</a>
    </li></ul></dd>
    

    

    

    
</dl>





















<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>String</code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="offset"><span class="type-signature"></span>offset<span class="signature">(number)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Fetch results from the given offset</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line1035">line 1035</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>number</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>Number</code></span>
|

<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The offset (placeholder string or integer greater than or equal to 0)</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="option"><span class="type-signature"></span>option<span class="signature">(optionExpression)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add an option expression such as &quot;TOP 10&quot; or &quot;SQL_CALC_FOUND_ROWS&quot;</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line572">line 572</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>optionExpression</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>Expression to go after &quot;SELECT&quot; and before column list</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="orderBy"><span class="type-signature"></span>orderBy<span class="signature">(column)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add a column or expression to order by</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line957">line 957</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>column</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The column name or expression to sort by. Include DESC or prefix with - to sort descending</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="orHaving"><span class="type-signature"></span>orHaving<span class="signature">(conditions)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add an OR with conditions under the HAVING clause</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line942">line 942</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>conditions</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>Array.&lt;Array></code></span>


            
            </td>

            

            

            <td class="description last">
                
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="orWhere"><span class="type-signature"></span>orWhere<span class="signature">(conditions)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add WHERE conditions to place inside an OR block (See _conditions for usage)</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line909">line 909</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>conditions</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>Array</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>A list where each item is an array with parameters that would be taken by where()</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="page"><span class="type-signature"></span>page<span class="signature">(number)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Set the offset based on the limit with the given page number</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line1060">line 1060</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>number</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>Number</code></span>
|

<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The page number (integer greater than 0)</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="parse"><span class="type-signature"></span>parse<span class="signature">(sql)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Load the given SQL into this object</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line19">line 19</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>sql</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The SQL to parse</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="reset"><span class="type-signature"></span>reset<span class="signature">(field<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    







<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line134">line 134</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>field</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>
|

<span class="param-type"><code>Array</code></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default">
                
                    null
                
                </td>
            

            <td class="description last">
                <p>If given, reset the given component(s), otherwise reset all query components
Valid components: option, column, table, where, orWhere, having, groupBy, orderBy, limit, offset, page</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="rightJoin"><span class="type-signature"></span>rightJoin<span class="signature">(expression)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add a RIGHT JOIN expression</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line646">line 646</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>expression</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The expression following the RIGHT JOIN keyword</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



<div class="section-examples">
<h5>Example</h5>

    <pre class="prettyprint"><code>query.rightJoin('posts p ON p.id = c.post_id');</code></pre>

</div>

</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="rightOuterJoin"><span class="type-signature"></span>rightOuterJoin<span class="signature">(expression)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add a RIGHT OUTER JOIN expression</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line701">line 701</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>expression</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The expression following the RIGHT OUTER JOIN keyword</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



<div class="section-examples">
<h5>Example</h5>

    <pre class="prettyprint"><code>query.rightOuterJoin('posts p ON p.id = c.post_id');</code></pre>

</div>

</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="sortField"><span class="type-signature"></span>sortField<span class="signature">(column, mapNames<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Sort by the given column, with a map of columns to translate</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line971">line 971</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>column</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            
                <td class="attributes">
                

                

                
                </td>
            

            
                <td class="default">
                
                </td>
            

            <td class="description last">
                <p>The column name such as &quot;created_at&quot; or &quot;-created_at&quot; for descending</p>
                
            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>mapNames</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>Object</code></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default">
                
                    {}
                
                </td>
            

            <td class="description last">
                <p>Column names to translate from one name to another</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



<div class="section-examples">
<h5>Example</h5>

    <pre class="prettyprint"><code>query.sortField('-modified_at'); // ORDER BY modified_at DESC
    query.sortField('created_at', ['created_at'=>'created']); // ORDER BY created</code></pre>

</div>

</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="table"><span class="type-signature"></span>table<span class="signature">(tableName)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add a table to the &quot;FROM&quot; clause (same as .from())</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line582">line 582</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>tableName</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The name of the table to query</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="tables"><span class="type-signature"></span>tables<span class="signature">(tableNames)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add multiple table to the &quot;FROM&quot; clause</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line592">line 592</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>tableNames</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>Array</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The names of the tables to query</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="toBoundSql"><span class="type-signature"></span>toBoundSql<span class="signature">()</span><span class="type-signature"> &rarr; {String}</span></h4>

    



<div class="description">
    <p>Get normalized SQL with all parameters bound</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line123">line 123</a>
    </li></ul></dd>
    

    

    

    
</dl>





















<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>String</code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="toString"><span class="type-signature"></span>toString<span class="signature">()</span><span class="type-signature"> &rarr; {String}</span></h4>

    



<div class="description">
    <p>Get the SQL as a pretty-printed string</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line58">line 58</a>
    </li></ul></dd>
    

    

    

    
</dl>





















<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code>String</code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="unbind"><span class="type-signature"></span>unbind<span class="signature">(placeholder<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Unbind a previously bound property</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line294">line 294</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        
        <th>Default</th>
        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>placeholder</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            
                <td class="default">
                
                    null
                
                </td>
            

            <td class="description last">
                
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="unjoin"><span class="type-signature"></span>unjoin<span class="signature">(table)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Remove a join condition with the specified table</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line711">line 711</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>table</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>
|

<span class="param-type"><code>Array.&lt;String></code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The name of the table or tables in the first part of the join statement</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="where"><span class="type-signature"></span>where<span class="signature">(column, operator<span class="signature-attributes">opt</span>, value<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add WHERE clauses to conditions (See _conditions for usage)</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line875">line 875</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        
        <th>Attributes</th>
        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>column</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            
                <td class="attributes">
                

                

                
                </td>
            

            

            <td class="description last">
                <p>The expression or name of the column on which to match</p>
                
            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>operator</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>*</code></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            

            <td class="description last">
                <p>The comparison operator; defaults to &quot;=&quot;</p>
                
            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>value</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>*</code></span>


            
            </td>

            
                <td class="attributes">
                
                    &lt;optional><br>
                

                

                
                </td>
            

            

            <td class="description last">
                <p>The value to test against</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="whereBetween"><span class="type-signature"></span>whereBetween<span class="signature">(column, twoValueArray)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Add a WHERE clause with a BETWEEN condition</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line886">line 886</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>column</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The column name</p>
                
            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>twoValueArray</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>Array</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The two values to be between</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="withChildData"><span class="type-signature"></span>withChildData<span class="signature">(property, childQuery)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Specify data from a child table to be spliced in
Can be used for one-to-many or many-to-many relationships</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line264">line 264</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>property</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The name of the property into which to splice</p>
                
            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>childQuery</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The Select query to fetch the child data</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
            
<div class="section-method">

    

    <h4 class="name" id="withSiblingData"><span class="type-signature"></span>withSiblingData<span class="signature">(property, siblingQuery)</span><span class="type-signature"> &rarr; {<a href="Select.html">Select</a>}</span></h4>

    



<div class="description">
    <p>Specify data from a sibling table be spliced in
Can be used for one-to-one or many-to-one relationships</p>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    
    <dt class="tag-source">Source:</dt>
    <dd class="tag-source"><ul class="dummy"><li>
        <a href="Select_Select.js.html">Select/Select.js</a>, <a href="Select_Select.js.html#line252">line 252</a>
    </li></ul></dd>
    

    

    

    
</dl>









    <h5>Parameters:</h5>
    

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>property</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code>String</code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The name of the property into which to splice</p>
                
            </td>
        </tr>

    

        <tr>
            
                <td class="name"><code>siblingQuery</code></td>
            

            <td class="type">
            
                
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


            
            </td>

            

            

            <td class="description last">
                <p>The Select query to fetch the sibling data</p>
                
            </td>
        </tr>

    
    </tbody>
</table>














<div class="section-returns">
<h5>Returns:</h5>

        

<dl class="param-type">
    <dt>
        Type:
    </dt>
    <dd>
        
<span class="param-type"><code><a href="Select.html">Select</a></code></span>


    </dd>
</dl>


    
</div>



</div>
        
    

    

    
</article>

</section>




</div>

<br class="clear">

<footer>
    Generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.11</a> on Mon Sep 05 2022 18:14:46 GMT-0600 (Mountain Daylight Time) using the Minami theme.
</footer>

<script>prettyPrint();</script>
<script src="scripts/linenumber.js"></script>
</body>
</html>