Добавить ведущие нули в поле varchar

У меня есть поле, которое является varchar(8) , сохраняя значения даты, которые я преобразовал из float в varchar .

В некоторых записях восемь символов, а у некоторых – семь. Я хотел бы сделать их одинаковой длины, добавив начальный ноль к тем, у которых есть 7.

  • Пример 8 символов: 12162003

  • Пример 7 символов: 5072004 (требуется начальный ноль)

Запрос:

 select birthdate_new from table_name 

Функция, которая будет работать для большего количества ситуаций, будет REPLICATE. Он объединяет значение X количество раз в строку.

 SELECT REPLICATE('0', 8-LEN(birthdate_new)) + birthdate_new AS 8_len_birthdate 

Это займет длину вашей даты рождения, вычтите ее из 8, а затем положите, что многие ведущие 0 на фронте, чтобы сделать это 8 символов.

Вы можете использовать RIGHT :

 SELECT RIGHT('00000000' + birthdate_new, 8) AS birthdate_new FROM table_name; 

LiveDemo

Если вы хотите использовать поле UPDATE используйте:

 UPDATE table_name SET birthdate_new = RIGHT('00000000' + birthdate_new, 8) WHERE LEN(birthdate_new) < 8; 

Как всегда 7/8 вы могли:

 select right('0' + fld, 8) 

или

 select case when len(fld) = 7 then '0' else '' end + fld 
Interesting Posts

Как вставить несколько записей в базу данных с помощью SqlParameter в C #

Разница между NOT EXISTS и COUNT (*)

Сортировать по столбцу varchar

Как использовать CASE WHEN при определении специальных символов?

Запуск SSMS для SQL Server 2012 с несколькими экземплярами с различной сортировкой

MSSQL / Oracle Query Tuning 500 000+ записей Coldfusion – снижает () снижение производительности

Являются ли иерархические ряды, поддерживаемые JET и SQL Server?

заменить цифры внутри скобок

SQL получает значения, которые появляются один раз, а не отдельные

Как получить команду SCOPE_IDENTITY () из INSERT в выражении EXEC ()

Лучший шаблон для констант в SQL?

Сущность Framework не создает классы для таблиц или процедур

SQL Server Data Tools: ошибка загрузки пользовательского DeploymentPlanModifier: Обязательный вкладчик с идентификатором не может быть загружен

Как сделать вычисляемый столбец нулевым в SQL Server

Как отслеживать количество изменений, произошедших в столбце? T-SQL – SQL Server

Давайте будем гением компьютера.