diff --git a/lib/geocoder/stores/active_record.rb b/lib/geocoder/stores/active_record.rb
index 2d39180b3652b5ca52225cf0baaac6de97ebb0c0..96b11e0701a2c3a3873e0930b295e1822303fc14 100644
--- a/lib/geocoder/stores/active_record.rb
+++ b/lib/geocoder/stores/active_record.rb
@@ -148,7 +148,7 @@ module Geocoder::Store
         distance = full_distance_from_sql(latitude, longitude, options)
         conditions = ["#{distance} <= ?", radius]
         default_near_scope_options(latitude, longitude, radius, options).merge(
-          :select => "#{options[:select] || full_column_name("*")}, " +
+          :select => select_addon(options) +
             "#{distance} AS distance" +
             (bearing ? ", #{bearing} AS bearing" : ""),
           :conditions => add_exclude_condition(conditions, options[:exclude])
@@ -222,13 +222,20 @@ module Geocoder::Store
           [b[0], b[2], b[1], b[3]
         ]
         default_near_scope_options(latitude, longitude, radius, options).merge(
-          :select => "#{options[:select] || full_column_name("*")}, " +
+          :select => select_addon(options) +
             "#{distance} AS distance" +
             (bearing ? ", #{bearing} AS bearing" : ""),
           :conditions => add_exclude_condition(conditions, options[:exclude])
         )
       end
 
+      ##
+      # Select string to add
+      #
+      def select_addon(options)
+        options[:select] == :ignore ? "" : "#{options[:select] || full_column_name("*")}, "
+      end
+
       ##
       # Options used for any near-like scope.
       #