named scope and has_many

Hi
   I have the models User and Payment. The relation between them

user has_many payments
payment belongs_to user

     payments table has a field paid_date. Now for finding out the last
paid_date for a particular user I did like

class payment < ActiveRecord::Base
   named_scope :last_payment_date, :select => 'MAX(date_paid) as
date_paid'
end

  Then @user = User.find(id)
        @user.payments.last_payment_date

      I get the correct answer. But actually is this correct? Because
sql generated is

SELECT MAX(date_paid) as date_paid FROM `payments` WHERE
(`payments`.user_id = 8) AND (`payments`.user_id = 8)

     I would like to know why (`payments`.user_id = 8) appears twice

Thanks