Функция COUNT оценивается после TOP. Вот почему вы получаете только один на счет. То, что вы хотите, это что-то вроде этого
SELECT TOP(1) dbo.Table.Column1, (SELECT COUNT(*) FROM dbo.Table)
FROM dbo.Table
Также, как уже упоминалось, вы действительно должны что-то заказывать.
Редактировать: Это также работает:
SELECT TOP(1) dbo.Table.Column1, COUNT(*) OVER() AS Total
FROM dbo.Table
Кажется также более эффективным (хотя проверено только на небольшом наборе данных).