Class: Sequel::SQL::JoinClause
- Inherits:
-
Expression
- Object
- Expression
- Sequel::SQL::JoinClause
- Defined in:
- lib/sequel/sql.rb
Overview
Represents an SQL JOIN clause, used for joining tables.
Direct Known Subclasses
Instance Attribute Summary collapse
-
#join_type ⇒ Object
readonly
The type of join to do.
-
#table_expr ⇒ Object
readonly
The expression representing the table/set related to the JOIN.
Instance Method Summary collapse
-
#column_aliases ⇒ Object
The column aliases to use for the JOIN , or nil if the JOIN does not use a derived column list.
-
#initialize(join_type, table_expr) ⇒ JoinClause
constructor
Create an object with the given join_type and table expression.
-
#table ⇒ Object
The table/set related to the JOIN, without any alias.
-
#table_alias ⇒ Object
The table alias to use for the JOIN , or nil if the JOIN does not alias the table.
Methods inherited from Expression
#==, attr_reader, #eql?, #hash, inherited, #inspect, #lit, #sql_literal
Constructor Details
#initialize(join_type, table_expr) ⇒ JoinClause
Create an object with the given join_type and table expression.
1434 1435 1436 1437 |
# File 'lib/sequel/sql.rb', line 1434 def initialize(join_type, table_expr) @join_type = join_type @table_expr = table_expr end |
Instance Attribute Details
#join_type ⇒ Object (readonly)
The type of join to do
1427 1428 1429 |
# File 'lib/sequel/sql.rb', line 1427 def join_type @join_type end |
#table_expr ⇒ Object (readonly)
The expression representing the table/set related to the JOIN. Is an AliasedExpression if the JOIN uses an alias.
1431 1432 1433 |
# File 'lib/sequel/sql.rb', line 1431 def table_expr @table_expr end |
Instance Method Details
#column_aliases ⇒ Object
The column aliases to use for the JOIN , or nil if the JOIN does not use a derived column list.
1458 1459 1460 1461 1462 |
# File 'lib/sequel/sql.rb', line 1458 def column_aliases if @table_expr.is_a?(AliasedExpression) @table_expr.columns end end |
#table ⇒ Object
The table/set related to the JOIN, without any alias.
1440 1441 1442 1443 1444 1445 1446 |
# File 'lib/sequel/sql.rb', line 1440 def table if @table_expr.is_a?(AliasedExpression) @table_expr.expression else @table_expr end end |
#table_alias ⇒ Object
The table alias to use for the JOIN , or nil if the JOIN does not alias the table.
1450 1451 1452 1453 1454 |
# File 'lib/sequel/sql.rb', line 1450 def table_alias if @table_expr.is_a?(AliasedExpression) @table_expr.alias end end |