Class: Sequel::SQL::JoinClause

Inherits:
SpecificExpression show all
Defined in:
lib/sequel_core/sql.rb

Overview

Represents an SQL JOIN clause, used for joining tables.

Direct Known Subclasses

JoinOnClause, JoinUsingClause

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Expression

#lit

Constructor Details

#initialize(join_type, table, table_alias = nil) ⇒ JoinClause

Create an object with the given conditions and default value.



576
577
578
# File 'lib/sequel_core/sql.rb', line 576

def initialize(join_type, table, table_alias = nil)
  @join_type, @table, @table_alias = join_type, table, table_alias
end

Instance Attribute Details

#join_typeObject (readonly)

The type of join to do



566
567
568
# File 'lib/sequel_core/sql.rb', line 566

def join_type
  @join_type
end

#tableObject (readonly)

The actual table to join



569
570
571
# File 'lib/sequel_core/sql.rb', line 569

def table
  @table
end

#table_aliasObject (readonly)

The table alias to use for the join, if any



572
573
574
# File 'lib/sequel_core/sql.rb', line 572

def table_alias
  @table_alias
end

Instance Method Details

#to_s(ds) ⇒ Object

Delegate the creation of the resulting SQL to the given dataset, since it may be database dependent.



582
583
584
# File 'lib/sequel_core/sql.rb', line 582

def to_s(ds)
  ds.join_clause_sql(self)
end