SQL does not provide trigger on select, but since 2008 you can create an audit object to log server/database events like select...
http://blogs.msdn.com/b/sreekarm/archive/2009/01/05/auditing-select-statements-in-sql-server-2008.aspx[
^]
However! Remember that the number of reads (select) is a magnitude larger than writes (insert, update, delete) - and that the reason triggers do not support select. So such log you try to create will be huge hundredfold times than the original table and can became a serious space/performance problem. So think of a scale-able design for you log database and log only the really necessary data!!!