Class: SqlQueryExecutor::Query::Sentence

Inherits:
Object
  • Object
show all
Defined in:
lib/sql_query_executor/query/sentence.rb

Constant Summary collapse

OPERATORS =
{
  "between" => SqlQueryExecutor::Operators::Between,
  "is"      => SqlQueryExecutor::Operators::Is,
  "in"      => SqlQueryExecutor::Operators::In,
  "="       => SqlQueryExecutor::Operators::Default,
  ">"       => SqlQueryExecutor::Operators::Default,
  "<"       => SqlQueryExecutor::Operators::Default,
  ">="      => SqlQueryExecutor::Operators::Default,
  "<="      => SqlQueryExecutor::Operators::Default,
  "<>"      => SqlQueryExecutor::Operators::Default,
  "!="      => SqlQueryExecutor::Operators::Default,
  "not"     => SqlQueryExecutor::Operators::Default,
  "exists"  => SqlQueryExecutor::Operators::Default,#Exists
}

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(query, collection) ⇒ Sentence

Returns a new instance of Sentence.



26
27
28
29
30
31
32
# File 'lib/sql_query_executor/query/sentence.rb', line 26

def initialize(query, collection)
  @query    = query
  @collection = collection
  @array = query.split(' ')

  set_operator
end

Instance Attribute Details

#queryObject (readonly)

Returns the value of attribute query.



9
10
11
# File 'lib/sql_query_executor/query/sentence.rb', line 9

def query
  @query
end

Instance Method Details

#execute!(data = []) ⇒ Object

The data parameter is only declared for SubQuery compatibility purposes



35
36
37
38
39
# File 'lib/sql_query_executor/query/sentence.rb', line 35

def execute!(data=[])
  return [] unless @operator

  @operator.execute!
end

#selectorObject



41
42
43
# File 'lib/sql_query_executor/query/sentence.rb', line 41

def selector
  @operator.selector
end