affected_rows возвращает количество измененных или вставленных строк, для SELECT оно не работает.
UPD: Т.е. affected_rows имеет смысл только (грубо говоря) для UPDATE и INSERT.
UPD2: Чтобы получить количество записей по какому-то условию, делайте так (например, получить количество всех пользователей, чей логин начинается с 'a'):
SELECT count(*)
FROM `Users`
WHERE `Login` LIKE 'a%'