Добавление символов с помощью встроенной формулы при выборке столбца в SQL Server
Мне дали сценарий, чтобы выбрать 4 символа из данной ячейки (последние 4)
Я делаю это вручную с помощью выражения Case. Мне нужно автоматизировать это, а не с помощью дел
Я сделал это.
SELECT CASE WHEN LEN(ticket_number) >= 4 THEN
'x' + RIGHT(ticket_number,4)
WHEN LEN(ticket_number) = 3 THEN
'x0' + ticket_number
WHEN LEN(ticket_number) = 2 THEN
'x00' + ticket_number
WHEN LEN(ticket_number) = 1 THEN
'x000' + ticket_number
ELSE
''
END AS ticket_number
FROM tickets
WHERE ticket_number <> ''
ORDER BY date DESC
Мне нужно оптимизировать этот запрос.
2 ответа
Решение
Вы имеете в виду, как это?
'x' + RIGHT('000'+ticket_number,4) AS ticket_number
Если я жестко закодирую двухзначное значение:
SELECT 'x' + RIGHT('000'+'12',4) AS ticket_number
Я получил:
x0012
Так что решение определенно работает.