Please add a new :as type called :column which 1. yields each row as a single item, which may be nil, or returns all items as a flat array 2. complains if the number of returned columns is >1 It's equivalent to :as => :array and then using row[0], but avoids building garbage arrays.