<!--
{
  "availability" : [
    "iOS: 15.0.0 -",
    "iPadOS: 15.0.0 -",
    "macCatalyst: 15.0.0 -",
    "macOS: 10.14.0 -",
    "tvOS: 16.0.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "CreateML",
  "identifier" : "/documentation/CreateML/MLDataTable/join(with:on:type:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "Create ML"
    ],
    "preciseIdentifier" : "s:8CreateML11MLDataTableV4join4with2on4typeA2C_SSdAC8JoinTypeOtF"
  },
  "title" : "join(with:on:type:)"
}
-->

# join(with:on:type:)

Creates a new data table by merging two data tables by the given
columns.

```
func join(with: MLDataTable, on columnsNamed: String..., type: MLDataTable.JoinType = .inner) -> MLDataTable
```

## Parameters

`with`

Another data table to merge with this data table.

`columnsNamed`

The name of the columns to perform the `join` operation on. The method merges all rows with
matching values in these columns.

    If you do not provide any column names, the method uses all the columns present in both tables.

`type`

The type of `join` operation, which are equivalent to SQL `join` types.

## Return Value

A new data table.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)