Interesting but I'm not sure why you would do this instead of:
select count(*) from TimeZones
What I find more helpful is to be able to return a list rowcounts for all tables in a database in tabular form. I found this somewhere (not original with me).
[font="Courier New"]/* Display table name and rowcount using system tables */
SELECT
tbl.NAME AS [Table],
Coalesce( ( select sum (spart.rows) from sys.partitions spart
where spart.object_id = tbl.object_id and spart.index_id < 2), 0) AS [RowCount]
FROM sys.tables AS tbl
ORDER BY 1[/font]