2013-02-19 5 views
3

Я хотел бы иметь фиксированное число символов, допустим, 10 (xxxxxxxxxx), а вход может быть некоторым varchar let say (abcd). Требуемый вывод в этом случае - xxxxxxabcd.mssql элегантный способ маскировки набора символов

Есть ли какой-либо изящный способ избежать петли для 10 - len (abcd)?

редактировать:

Это questiom может быть дубликатом, если это наблюдается через принятый ответ, но не через способ задать вопрос. В противном случае я смогу найти существующий вопрос и не создаст дубликат.

+0

делает дубликат помочь вам или нет? –

+0

Ответы на вопрос - да, но как мне с ними связаться? Вопрос задается по неприемлемым образом для моей проблемы, и ответы вырываются по вопросам. Последствием является то, что структура вопроса очень важна, чтобы найти ответ. Во всяком случае, еще раз спасибо @mellamokb Мудрый за помощь мне. – dllhell

+0

Вопрос сформулирован очень четко. Вы хотите поместить строку слева. Вот что задает вопрос. * Ваш * вопрос сформулирован таким образом, чтобы описать проблему только запутанным способом, не используя правильную терминологию, поэтому ваша проблема заключается в том, что вы не смогли найти существующую. Здесь не виноват существующий вопрос ... –

ответ

4

Хитрость заключается в том, чтобы предварять установленного образца с входом, а затем захватить самый правый n символы:

RIGHT('xxxxxxxxxx' + 'abcd', 10) 
0

Я делал что-то подобное с SQL Server в прошлом. Надеюсь, поможет.

select SUBSTRING('000000', 1,6-LEN('ABCD')) + 'ABCD' 
Смежные вопросы