class SoqlBuilder::SelectQuery
Public Class Methods
structure_query(args = {})
click to toggle source
# File lib/soql_builder/select_query.rb, line 6 def structure_query(args = {}) query = 'select'.dup query += " #{join_fields(args[:fields])}" unless args[:fields].empty? query += join_subqueries(args[:subqueries]) unless args[:subqueries].empty? query += " from #{args[:object_table]}" unless args[:object_table] == '' query += " where #{args[:where]}" unless args[:where] == '' query += " limit #{args[:limit]}" unless args[:limit] == '' query end
Private Class Methods
join_fields(fields)
click to toggle source
# File lib/soql_builder/select_query.rb, line 18 def join_fields(fields) fields.join(', ') end
join_subqueries(subqueries)
click to toggle source
# File lib/soql_builder/select_query.rb, line 22 def join_subqueries(subqueries) subqueries.map do |subquery| ", (select #{join_fields(subquery[:fields])} from #{subquery[:object_table]})" end.join end