Это должно сделать это.
SELECT
LEFT(nameFirst,5) + '***** ',
LEFT(nameLast,5) + '***** ',
LEFT(number,5) + '***** ',
LEFT(fax ,5) + '***** '
FROM table_01
Если вы думаете, что вы захотите использовать переменную позже для числа * и пробелов, этот метод может быть лучше (и более читабельным), но использует ключевые слова, специфичные для tSQL:
SELECT
LEFT(nameFirst,5) + REPLICATE('*',5) + SPACE(10),
LEFT(nameLast,5) + REPLICATE('*',5) + SPACE(10),
LEFT(number,5) + REPLICATE('*',5) + SPACE(10),
LEFT(fax ,5) + REPLICATE('*',5) + SPACE(10)
FROM table_01
Обновление за ваш комментарий
Предполагая, что вы хотите дополнительные * для имен с <5 символов. Вот подход, который должен работать. </p>
SELECT
LEFT(nameFirst + replicate('*',5),5) + replicate('*',5) + SPACE(10)
...
FROM table_01
Это немного подлый, но он избегает более длинных условных выражений.