Package adql.query.from

## Class InnerJoin

- java.lang.Object
- - adql.query.from.ADQLJoin
  - - adql.query.from.InnerJoin

- All Implemented Interfaces:
    `ADQLObject`, `FromContent`
  Direct Known Subclasses:
    `SQLServer_InnerJoin`

      public class InnerJoin
      extends ADQLJoin

  Inner join.

  Possible syntaxes:

  - T1 [INNER] JOIN T2 ON <condition>
  - T1 [INNER] JOIN T2 USING(<columns list>)
  - T1 NATURAL [INNER] JOIN T2
  Version:
    08/2011
  Author:
    Grégory Mantelet (CDS)

- - ### Field Summary

    - ### Fields inherited from class adql.query.from.ADQLJoin

      `condition, lstColumns, natural`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `InnerJoin​(FromContent left, FromContent right)` | Builds a NATURAL INNER JOIN between the two given "tables".
    `InnerJoin​(FromContent left, FromContent right, ClauseConstraints condition)` | Builds an INNER JOIN between the two given "tables" with the given condition.
    `InnerJoin​(FromContent left, FromContent right, java.util.Collection<ADQLColumn> lstColumns)` | Builds an INNER JOIN between the two given "tables" with the list of columns to join.
    `InnerJoin​(InnerJoin toCopy)` | Builds a copy of the given INNER join.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `ADQLObject` | `getCopy()` | Gets a (deep) copy of this ADQL object.
    `java.lang.String` | `getJoinType()` | Gets the type of this join.

    - ### Methods inherited from class adql.query.from.ADQLJoin

      `addAllExcept, adqlIterator, findAtMostOneColumn, findExactlyOneColumn, getDBColumns, getJoinCondition, getJoinedColumns, getLeftTable, getName, getPosition, getRightTable, getTables, getTablesByAlias, hasJoinedColumns, isCommonColumn, isNatural, setJoinCondition, setJoinedColumns, setLeftTable, setNatural, setPosition, setRightTable, toADQL`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### InnerJoin

          public InnerJoin​(FromContent left,
                           FromContent right)

      Builds a NATURAL INNER JOIN between the two given "tables".
      Parameters:
        `left` - Left "table".
        `right` - Right "table".
      See Also:
        `ADQLJoin(FromContent, FromContent)`, `ADQLJoin.setNatural(boolean)`

    - #### InnerJoin

          public InnerJoin​(FromContent left,
                           FromContent right,
                           ClauseConstraints condition)

      Builds an INNER JOIN between the two given "tables" with the given condition.
      Parameters:
        `left` - Left "table".
        `right` - Right "table".
        `condition` - Join condition.
      See Also:
        `ADQLJoin(FromContent, FromContent)`, `ADQLJoin.setJoinCondition(ClauseConstraints)`

    - #### InnerJoin

          public InnerJoin​(FromContent left,
                           FromContent right,
                           java.util.Collection<ADQLColumn> lstColumns)

      Builds an INNER JOIN between the two given "tables" with the list of columns to join.
      Parameters:
        `left` - Left "table".
        `right` - Right "table".
        `lstColumns` - List of columns to join.
      See Also:
        `ADQLJoin(FromContent, FromContent)`, `ADQLJoin.setJoinedColumns(Collection)`

    - #### InnerJoin

          public InnerJoin​(InnerJoin toCopy)
                    throws java.lang.Exception

      Builds a copy of the given INNER join.
      Parameters:
        `toCopy` - The INNER join to copy.
      Throws:
        `java.lang.Exception` - If there is an error during the copy.
      See Also:
        `ADQLJoin(ADQLJoin)`

  - ### Method Detail

    - #### getJoinType

          public java.lang.String getJoinType()

      Description copied from class: `ADQLJoin`
      Gets the type of this join.
      Specified by:
        `getJoinType` in class `ADQLJoin`
      Returns:
        Its join type (i.e. CROSS JOIN, LEFT JOIN, LEFT OUTER JOIN, ...).

    - #### getCopy

          public ADQLObject getCopy()
                             throws java.lang.Exception

      Description copied from interface: `ADQLObject`
      Gets a (deep) copy of this ADQL object.
      Specified by:
        `getCopy` in interface `ADQLObject`
      Specified by:
        `getCopy` in class `ADQLJoin`
      Returns:
        The copy of this ADQL object.
      Throws:
        `java.lang.Exception` - If there is any error during the copy.