SELECT @list = (seg_tag+
'01'+
CAST(LEN(ID_Type) AS NVARCHAR)+
ID_Type+
'02'+
CAST(LEN(IDNumber) AS NVARCHAR)+
IDNumber)
FROM #TEMP_TABLE_ID
В вышеприведенном запросе, что мне нужно сделать, чтобы при распечатке списка длина (в случае ее одной цифры) равна нулю? Пример.SQL Полевая длина
04 for 4
09 for 9
14 for 14
Выборочные данные в #TEMP_TABLE_ID:
seg_tag | ID_Type | IDNumber
--------+---------+----------
PN03 | paras | narang
И результат должен выглядеть следующим образом: PN03015paras026narang
Пожалуйста, добавьте образцы данных вашего '# TEMP_TABLE_ID' и ваших окончательных ожидаемых результатов;). –
Здесь мой исходный запрос вернет строку, такую как PN03015paras026narang PN03 (т.е. значение seg_tag) 01 (жестко закодированный) 5 (длина id_type) парас (значение id_type) 02 (жесткий код) 6 (длина IDNumber) narang (значение IDNumber) Теперь все, что я хочу, это длины, т. е. 5 и 6 - 05 и 06. –
Вы пытались использовать 'Right ('00' + Cast (5 как NVarChar (2)), 2)'? – HABO