Не совсем понятно, что вы пытаетесь сделать. Почему бы просто не выполнить свой запрос, чтобы получить все результаты за один раз, а затем использовать свой клиентский код для форматирования и представления данных?
select CustomerID, [Customer Name], [Product Name], Maximum from favorit
Вы можете использовать функцию ROW_NUMBER () для добавления номеров строк, если хотите, или нумерации их в клиентском приложении при представлении вывода.
Далее, PRINT - это оператор, а не функция. Он может печатать только одну строку, поэтому вам нужно создать, а затем ПЕЧАТЬ строки. Ваш второй пример может действительно работать, но вам придется обрабатывать любые другие типы данных:
print cast(@custID as varchar(10)) + 'this is the customer name' + cast(@custName as varchar(100)) + 'etc'
Наконец, форматирование и печать данных непосредственно из TSQL обычно являются признаком того, что вы делаете что-то не так. Обычный подход состоит в том, чтобы вернуть набор результатов клиентскому приложению и позволить клиентскому приложению отформатировать его, распечатать, преобразовать в PDF или любой другой формат. Ваше приложение может быть небольшим Perl-скриптом, полным отчетным решением или чем-то еще, но PRINT не очень хороший механизм для представления данных.