Sha256: ca727c1a0623e7f1d9e20299e98aa8240ab7e10c525b8cdfdbfd943106f270f6

Contents?: true

Size: 390 Bytes

Versions: 3

Compression:

Stored size: 390 Bytes

Contents

module ActiveReporter
  module Aggregator
    class Count < ActiveReporter::Aggregator::Base
      def function
        "COUNT(#{"DISTINCT" if distinct} #{expression})"
      end

      def default_value
        super || 0
      end

      private

      def distinct
        opts[:distinct] || true
      end

      def column
        opts.fetch(:column, "id")
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
active_reporter-0.7.1 lib/active_reporter/aggregator/count.rb
active_reporter-0.6.5 lib/active_reporter/aggregator/count.rb
active_reporter-0.6.4 lib/active_reporter/aggregator/count.rb