У меня есть список буквенно-цифровых токенов, скажем, '1a', '1b', '02', '03', '10', '11',
и т. Д. *
Теперь, как лучше всего сделать заказ в этом списке токенов?
Я получаю '1a', '1b', '10', '11', '02', '03',
но мне нужно, чтобы оно было
'1a', '1b', '02', '03', '10', '11'
UPDATE
хорошо, я делаю это после предложения, но оно не работает.
declare @tokens table(token varchar(20));
insert into @tokens
select '1a'
select '1b'
select '02'
select '10'
select * from @tokens
order by case
when ISNUMERIC(token) = 1 then right('0000000000'+token+'0',10)
else right('0000000000'+token,10)
end
Я получаю ответ как '1b', '02', '10', '1a'
UPDATE2
Работает после внесения следующих изменений.
declare @tokens table(token varchar(20));
insert into @tokens
select '1a'
insert into @tokens
select '1b'
insert into @tokens
select '02'
insert into @tokens
select '10'
select token from @tokens
order by case
when ISNUMERIC(token) = 1 then right('0000000000'+token+'0',10)
else right('0000000000'+token,10)
end
Спасибо всем вам за ваши прекрасные идеи.