Sha256: 85433a73860409f6e9c6e07832b0b19f26bf7174dc1ab21553c782be0b67cce3

Contents?: true

Size: 318 Bytes

Versions: 1

Compression:

Stored size: 318 Bytes

Contents

module BqFactory
  class QueryBuilder < Array
    attr_reader :records

    def initialize(records)
      @records = records
    end

    def build
      %{SELECT * FROM #{records.map { |record| build_subquery(record) }.join(', ')}}
    end

    def build_subquery(record)
      "(#{record.to_sql})"
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
bq_factory-0.1.0 lib/bq_factory/query_builder.rb