# File lib/thinking_sphinx/active_record/database_adapters/postgresql_adapter.rb, line 4 def boolean_value(value) value ? 'TRUE' : 'FALSE' end
# File lib/thinking_sphinx/active_record/database_adapters/postgresql_adapter.rb, line 8 def cast_to_string(clause) "#{clause}::varchar" end
# File lib/thinking_sphinx/active_record/database_adapters/postgresql_adapter.rb, line 12 def cast_to_timestamp(clause) if ThinkingSphinx::Configuration.instance.settings['64bit_timestamps'] "extract(epoch from #{clause})::bigint" else "extract(epoch from #{clause})::int" end end
# File lib/thinking_sphinx/active_record/database_adapters/postgresql_adapter.rb, line 20 def concatenate(clause, separator = ' ') clause.split(', ').collect { |part| convert_nulls(part, "''") }.join(" || '#{separator}' || ") end
# File lib/thinking_sphinx/active_record/database_adapters/postgresql_adapter.rb, line 26 def convert_nulls(clause, default = '') "COALESCE(#{clause}, #{default})" end
# File lib/thinking_sphinx/active_record/database_adapters/postgresql_adapter.rb, line 30 def group_concatenate(clause, separator = ' ') "array_to_string(array_agg(DISTINCT #{clause}), '#{separator}')" end
# File lib/thinking_sphinx/active_record/database_adapters/postgresql_adapter.rb, line 34 def time_zone_query_pre ['SET TIME ZONE UTC'] end