Table of Contents

Class Join

Inheritance
Join
Implements
Inherited Members
Namespace
TabularEditor.SemanticBridge.Platforms.Databricks.MetricView
Assembly
SemanticBridge.dll

Represents a join definition in a Databricks Metric View

public class Join : MetricViewObjectBase, IMetricViewNamedObject, IMetricViewObject
Extension Methods

Properties

Cardinality

Controls the relationship between the source and the joined table. Per spec, cardinality: defaults to many_to_one: the joined table acts as a dimension lookup. Set OneToMany to aggregate the joined table as a separate fact source. Three states round-trip faithfully: null (YAML omitted; spec-equivalent to many_to_one), ManyToOne (explicit), and OneToMany. Requires YAML spec 1.1+.

[MinVersion("1.1")]
public JoinCardinality? Cardinality { get; set; }

Property Value

Type Description
JoinCardinality?

Joins

Child joins that are part of this join definition

public MetricViewCollection<Join> Joins { get; }

Property Value

Type Description
MetricViewCollection<Join>

Name

Name of the joined table

public override required string Name { get; set; }

Property Value

Type Description
string

On

Optional SQL boolean expression for the join condition

public string? On { get; set; }

Property Value

Type Description
string

ParentJoin

Parent join if this is a nested join, null if this is a top-level join.

public Join? ParentJoin { get; }

Property Value

Type Description
Join

Path

public override string Path { get; }

Property Value

Type Description
string

Rely

Optimizer hints about the join's relationship to its source. Currently the map only carries AtMostOneMatch; the spec is shaped as an extensible map for future keys. Conservatively gated to YAML spec 1.1+: rely: was not part of the v0.1 spec, so emitting it on a v0.1 view would produce YAML that pre-v1.1 tooling can't read. The current spec's feature-availability table ties rely.at_most_one_match to DBR 18.1 without restating a YAML version requirement; we keep the YAML gate as a compatibility restriction.

[MinVersion("1.1")]
public Rely? Rely { get; set; }

Property Value

Type Description
Rely

Source

Source table or query for the join

public required string Source { get; set; }

Property Value

Type Description
string

Using

Optional list of column names to use for join

public IReadOnlyCollection<string>? Using { get; set; }

Property Value

Type Description
IReadOnlyCollection<string>

Methods

AddJoin(string, string)

Adds a child join to this join definition

public Join AddJoin(string name, string source)

Parameters

Type Name Description
string name
string source

Returns

Type Description
Join