Как обновить значение, если одно из полей имеет несколько одинаковых значений в SQL

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

Примеры данных Здесь 'Ma' has 5 records и т. Д. Я хочу изменить имя Ma01, Ma02 и т. Д.

 Id Name Count 1 Ma 5 2 Ga 6 3 Gu 5 

Как это сделать с SQL запросом

Попробуй это

 UPDATE TBL SET Name = A.Name FROM ( SELECT Id, Name + CAST(ROW_NUMBER() OVER (PARTITION BY Name ORDER BY (SELECT NULL)) AS NVARCHAR(500)) AS NAME, Count FROM TBL WHERE NAME IN ( SELECT T.NAME FROM TBL T GROUP BY T.NAME HAVING COUNT(1) > 1 ) ) A WHERE TBL.Id = A.ID 

Попробуй это:

 Select Name + convert(varchar(2), row_number()over(partition by Name order by Name)) From tablename 

Вы просто попробуете это.

 Declare @i int = 1 update yourtable set ID = @i , @i = @i + 1 

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

 SELECT Id, Name, Name + RIGHT('00'+CAST(ROW_NUMBER() OVER (PARTITION BY Name ORDER BY (SELECT Name)) AS NVARCHAR(MAX)),2) AS Updatedname FROM tablename WHERE Name IN ( SELECT T.NameFROM tablename T GROUP BY T.Name HAVING COUNT(Name) > 1 ) GROUP BY Name,Id ORDER BY Name 
Interesting Posts
Давайте будем гением компьютера.