In my experience such optimizations are usually needed only for reading, so the query may return a plain tuple instead of true mapped object. Well, this can depend on whether you have an ORM container.