Вам также необходимо передать данные, которые вы хотите отформатировать, в to_char:
SELECT TO_CHAR(123, '$999,999') from dual
Так передайте свою сумму * 52 в качестве первого аргумента
Кстати, вы можете захотеть использовать такой формат, как:
TO_CHAR(Sal*52, 'L999G999D99')
Вместо того, чтобы жестко кодировать символы и группировать разделители, использование этих букв возьмет символ и разделитель группировки из настроек региона базы данных. Если ваше приложение будет иметь международную аудиторию, вы должны понимать, что не все используют запятую для группировки тысяч и точку для десятичных чисел. Некоторые люди пишут 123,456,99 за пример «сто двадцать три тысячи четыреста пятьдесят шесть [долларов] 99 [центов]»
https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions181.htm имеет больше информации на символ
Стоит также упомянуть, если после to_char () ing появляются неожиданные начальные пробелы, запустите маску формата с помощью FM, например
TO_CHAR(123, 'FML999G999D99')
FM - Fill Mode, отключает средство в oracle, которое автоматически дополняет данные пробелами, чтобы они соответствовали ширине маски форматирования. Это удобно для отчетов, если вы выгружаете данные в формате фиксированной ширины, чтобы они дополнялись пробелами, поэтому все ваши значения имеют ширину, например, 9 символов, но это не нужно или нежелательно в других контекстах